Partager via


DataLakeFileClient Classe

public class DataLakeFileClient
extends DataLakePathClient

Cette classe fournit un client qui contient des opérations de fichier pour Azure Storage Data Lake. Les opérations fournies par ce client incluent la création d’un fichier, la suppression d’un fichier, le renommage d’un fichier, la définition des métadonnées et des en-têtes http, la définition et la récupération du contrôle d’accès, l’obtention de propriétés, la lecture d’un fichier et l’ajout et le vidage des données à écrire dans un fichier.

Ce client est instancié via DataLakePathClientBuilder ou récupéré via getFileClient(String fileName).

Pour plus d’informations, consultez Azure Docs .

Résumé de la méthode

Modificateur et type Méthode et description
void append(BinaryData data, long fileOffset)

Ajoute des données à la ressource spécifiée pour qu’elles soient ensuite vidées (écrites) par un appel à vidage

void append(InputStream data, long fileOffset, long length)

Ajoute des données à la ressource spécifiée pour qu’elles soient ensuite vidées (écrites) par un appel à vidage

Response<Void> appendWithResponse(BinaryData data, long fileOffset, byte[] contentMd5, String leaseId, Duration timeout, Context context)

Ajoute des données à la ressource spécifiée pour qu’elles soient ensuite vidées (écrites) par un appel à vidage

Response<Void> appendWithResponse(BinaryData data, long fileOffset, DataLakeFileAppendOptions appendOptions, Duration timeout, Context context)

Ajoute des données à la ressource spécifiée pour qu’elles soient ensuite vidées (écrites) par un appel à vidage

Response<Void> appendWithResponse(InputStream data, long fileOffset, long length, byte[] contentMd5, String leaseId, Duration timeout, Context context)

Ajoute des données à la ressource spécifiée pour qu’elles soient ensuite vidées (écrites) par un appel à vidage

Response<Void> appendWithResponse(InputStream data, long fileOffset, long length, DataLakeFileAppendOptions appendOptions, Duration timeout, Context context)

Ajoute des données à la ressource spécifiée pour qu’elles soient ensuite vidées (écrites) par un appel à vidage

void delete()

Supprime un fichier.

boolean deleteIfExists()

Supprime un fichier s’il existe.

Response<Boolean> deleteIfExistsWithResponse(DataLakePathDeleteOptions options, Duration timeout, Context context)

Supprime un fichier s’il existe.

Response<Void> deleteWithResponse(DataLakeRequestConditions requestConditions, Duration timeout, Context context)

Supprime un fichier.

PathInfo flush(long position)

Déprécié

À la place, consultez flush(long position, boolean overwrite).

Vide les données (écritures) précédemment ajoutées au fichier par le biais d’un appel à ajouter.

PathInfo flush(long position, boolean overwrite)

Vide (écrit) les données précédemment ajoutées au fichier par le biais d’un appel à ajouter.

Response<PathInfo> flushWithResponse(long position, boolean retainUncommittedData, boolean close, PathHttpHeaders httpHeaders, DataLakeRequestConditions requestConditions, Duration timeout, Context context)

Vide (écrit) les données précédemment ajoutées au fichier par le biais d’un appel à ajouter.

Response<PathInfo> flushWithResponse(long position, DataLakeFileFlushOptions flushOptions, Duration timeout, Context context)

Vide (écrit) les données précédemment ajoutées au fichier par le biais d’un appel à ajouter.

DataLakeFileClient getCustomerProvidedKeyClient(CustomerProvidedKey customerProvidedKey)

Crée un nouveau DataLakeFileClient avec le customerProvidedKey spécifié.

String getFileName()

Obtient le nom de ce fichier, sans inclure son chemin d’accès complet.

String getFilePath()

Obtient le chemin d’accès de ce fichier, sans inclure le nom de la ressource elle-même.

String getFileUrl()

Obtient l’URL du fichier représenté par ce client sur le service Data Lake.

OutputStream getOutputStream()

Crée et ouvre un flux de sortie pour écrire des données dans le fichier.

OutputStream getOutputStream(DataLakeFileOutputStreamOptions options)

Crée et ouvre un flux de sortie pour écrire des données dans le fichier.

OutputStream getOutputStream(DataLakeFileOutputStreamOptions options, Context context)

Crée et ouvre un flux de sortie pour écrire des données dans le fichier.

DataLakeFileOpenInputStreamResult openInputStream()

Ouvre un flux d’entrée de fichier pour télécharger le fichier.

DataLakeFileOpenInputStreamResult openInputStream(DataLakeFileInputStreamOptions options)

Ouvre un flux d’entrée de fichier pour télécharger la plage spécifiée du fichier.

DataLakeFileOpenInputStreamResult openInputStream(DataLakeFileInputStreamOptions options, Context context)

Ouvre un flux d’entrée de fichier pour télécharger la plage spécifiée du fichier.

InputStream openQueryInputStream(String expression)

Ouvre un flux d’entrée pour interroger le fichier.

Response<InputStream> openQueryInputStreamWithResponse(FileQueryOptions queryOptions)

Ouvre un flux d’entrée pour interroger le fichier.

void query(OutputStream stream, String expression)

Interroge un fichier entier dans un flux de sortie.

FileQueryResponse queryWithResponse(FileQueryOptions queryOptions, Duration timeout, Context context)

Interroge un fichier entier dans un flux de sortie.

void read(OutputStream stream)

Lit le fichier entier dans un flux de sortie.

PathProperties readToFile(String filePath)

Lit le fichier entier dans un fichier spécifié par le chemin d’accès.

PathProperties readToFile(String filePath, boolean overwrite)

Lit le fichier entier dans un fichier spécifié par le chemin d’accès.

Response<PathProperties> readToFileWithResponse(String filePath, FileRange range, ParallelTransferOptions parallelTransferOptions, DownloadRetryOptions downloadRetryOptions, DataLakeRequestConditions requestConditions, boolean rangeGetContentMd5, Set<OpenOption> openOptions, Duration timeout, Context context)

Lit le fichier entier dans un fichier spécifié par le chemin d’accès.

FileReadResponse readWithResponse(OutputStream stream, FileRange range, DownloadRetryOptions options, DataLakeRequestConditions requestConditions, boolean getRangeContentMd5, Duration timeout, Context context)

Lit une plage d’octets d’un fichier dans un flux de sortie.

DataLakeFileClient rename(String destinationFileSystem, String destinationPath)

Déplace le fichier vers un autre emplacement dans le système de fichiers.

Response<DataLakeFileClient> renameWithResponse(String destinationFileSystem, String destinationPath, DataLakeRequestConditions sourceRequestConditions, DataLakeRequestConditions destinationRequestConditions, Duration timeout, Context context)

Déplace le fichier vers un autre emplacement dans le système de fichiers.

void scheduleDeletion(FileScheduleDeletionOptions options)

Planifie la suppression du fichier.

Response<Void> scheduleDeletionWithResponse(FileScheduleDeletionOptions options, Duration timeout, Context context)

Planifie la suppression du fichier.

PathInfo upload(BinaryData data)

Crée un nouveau fichier.

PathInfo upload(BinaryData data, boolean overwrite)

Crée un fichier ou met à jour le contenu d’un fichier existant.

PathInfo upload(InputStream data, long length)

Crée un nouveau fichier.

PathInfo upload(InputStream data, long length, boolean overwrite)

Crée un fichier ou met à jour le contenu d’un fichier existant.

void uploadFromFile(String filePath)

Crée un fichier, avec le contenu du fichier spécifié.

void uploadFromFile(String filePath, boolean overwrite)

Crée un fichier, avec le contenu du fichier spécifié.

void uploadFromFile(String filePath, ParallelTransferOptions parallelTransferOptions, PathHttpHeaders headers, Map<String,String> metadata, DataLakeRequestConditions requestConditions, Duration timeout)

Crée un fichier, avec le contenu du fichier spécifié.

Response<PathInfo> uploadFromFileWithResponse(String filePath, ParallelTransferOptions parallelTransferOptions, PathHttpHeaders headers, Map<String,String> metadata, DataLakeRequestConditions requestConditions, Duration timeout, Context context)

Crée un fichier, avec le contenu du fichier spécifié.

Response<PathInfo> uploadWithResponse(FileParallelUploadOptions options, Duration timeout, Context context)

Crée un nouveau fichier.

Méthodes héritées de DataLakePathClient

Méthodes héritées de java.lang.Object

Détails de la méthode

append

public void append(BinaryData data, long fileOffset)

Ajoute des données à la ressource spécifiée pour qu’elles soient ensuite vidées (écrites) par un appel à vidage

Exemples de code

client.append(binaryData, offset);
 System.out.println("Append data completed");

Pour plus d’informations, consultez Azure Docs

Parameters:

data - Données à écrire dans le fichier.
fileOffset - Position à laquelle les données doivent être ajoutées.

append

public void append(InputStream data, long fileOffset, long length)

Ajoute des données à la ressource spécifiée pour qu’elles soient ensuite vidées (écrites) par un appel à vidage

Exemples de code

client.append(data, offset, length);
 System.out.println("Append data completed");

Pour plus d’informations, consultez Azure Docs

Parameters:

data - Données à écrire dans le fichier.
fileOffset - Position à laquelle les données doivent être ajoutées.
length - Longueur exacte des données.

appendWithResponse

public Response appendWithResponse(BinaryData data, long fileOffset, byte[] contentMd5, String leaseId, Duration timeout, Context context)

Ajoute des données à la ressource spécifiée pour qu’elles soient ensuite vidées (écrites) par un appel à vidage

Exemples de code

FileRange range = new FileRange(1024, 2048L);
 DownloadRetryOptions options = new DownloadRetryOptions().setMaxRetryRequests(5);
 byte[] contentMd5 = new byte[0]; // Replace with valid md5

 Response<Void> response = client.appendWithResponse(binaryData, offset, contentMd5, leaseId, timeout,
     new Context(key1, value1));
 System.out.printf("Append data completed with status %d%n", response.getStatusCode());

Pour plus d’informations, consultez Azure Docs

Parameters:

data - Données à écrire dans le fichier.
fileOffset - Position à laquelle les données doivent être ajoutées.
contentMd5 - Hachage MD5 du contenu des données. S’il est spécifié, le service calcule le MD5 des données reçues et échoue la demande s’il ne correspond pas au MD5 fourni.
leaseId - En définissant l’ID de bail, les demandes échouent si le bail fourni ne correspond pas au bail actif dans le fichier.
timeout - Valeur de délai d’expiration facultative au-delà de laquelle un RuntimeException sera déclenché.
context - Contexte supplémentaire transmis via le pipeline Http pendant l’appel de service.

Returns:

Achèvement de la signalisation de réponse.

appendWithResponse

public Response appendWithResponse(BinaryData data, long fileOffset, DataLakeFileAppendOptions appendOptions, Duration timeout, Context context)

Ajoute des données à la ressource spécifiée pour qu’elles soient ensuite vidées (écrites) par un appel à vidage

Exemples de code

BinaryData binaryData = BinaryData.fromStream(data, length);
 FileRange range = new FileRange(1024, 2048L);
 byte[] contentMd5 = new byte[0]; // Replace with valid md5
 DataLakeFileAppendOptions appendOptions = new DataLakeFileAppendOptions()
     .setLeaseId(leaseId)
     .setContentHash(contentMd5)
     .setFlush(true);
 Response<Void> response = client.appendWithResponse(binaryData, offset, appendOptions, timeout,
     new Context(key1, value1));
 System.out.printf("Append data completed with status %d%n", response.getStatusCode());

Pour plus d’informations, consultez Azure Docs

Parameters:

data - Données à écrire dans le fichier.
fileOffset - Position à laquelle les données doivent être ajoutées.
appendOptions - DataLakeFileAppendOptions
timeout - Valeur de délai d’expiration facultative au-delà de laquelle un RuntimeException sera déclenché.
context - Contexte supplémentaire transmis via le pipeline Http pendant l’appel de service.

Returns:

Achèvement de la signalisation de réponse.

appendWithResponse

public Response appendWithResponse(InputStream data, long fileOffset, long length, byte[] contentMd5, String leaseId, Duration timeout, Context context)

Ajoute des données à la ressource spécifiée pour qu’elles soient ensuite vidées (écrites) par un appel à vidage

Exemples de code

FileRange range = new FileRange(1024, 2048L);
 DownloadRetryOptions options = new DownloadRetryOptions().setMaxRetryRequests(5);
 byte[] contentMd5 = new byte[0]; // Replace with valid md5

 Response<Void> response = client.appendWithResponse(data, offset, length, contentMd5, leaseId, timeout,
     new Context(key1, value1));
 System.out.printf("Append data completed with status %d%n", response.getStatusCode());

Pour plus d’informations, consultez Azure Docs

Parameters:

data - Données à écrire dans le fichier.
fileOffset - Position à laquelle les données doivent être ajoutées.
length - Longueur exacte des données.
contentMd5 - Hachage MD5 du contenu des données. S’il est spécifié, le service calcule le MD5 des données reçues et échoue la demande s’il ne correspond pas au MD5 fourni.
leaseId - En définissant l’ID de bail, les demandes échouent si le bail fourni ne correspond pas au bail actif dans le fichier.
timeout - Valeur de délai d’expiration facultative au-delà de laquelle un RuntimeException sera déclenché.
context - Contexte supplémentaire transmis via le pipeline Http pendant l’appel de service.

Returns:

Achèvement de la signalisation de réponse.

appendWithResponse

public Response appendWithResponse(InputStream data, long fileOffset, long length, DataLakeFileAppendOptions appendOptions, Duration timeout, Context context)

Ajoute des données à la ressource spécifiée pour qu’elles soient ensuite vidées (écrites) par un appel à vidage

Exemples de code

FileRange range = new FileRange(1024, 2048L);
 byte[] contentMd5 = new byte[0]; // Replace with valid md5
 DataLakeFileAppendOptions appendOptions = new DataLakeFileAppendOptions()
     .setLeaseId(leaseId)
     .setContentHash(contentMd5)
     .setFlush(true);
 Response<Void> response = client.appendWithResponse(data, offset, length, appendOptions, timeout,
     new Context(key1, value1));
 System.out.printf("Append data completed with status %d%n", response.getStatusCode());

Pour plus d’informations, consultez Azure Docs

Parameters:

data - Données à écrire dans le fichier.
fileOffset - Position à laquelle les données doivent être ajoutées.
length - Longueur exacte des données.
appendOptions - DataLakeFileAppendOptions
timeout - Valeur de délai d’expiration facultative au-delà de laquelle un RuntimeException sera déclenché.
context - Contexte supplémentaire transmis via le pipeline Http pendant l’appel de service.

Returns:

Achèvement de la signalisation de réponse.

delete

public void delete()

Supprime un fichier.

Exemples de code

client.delete();
 System.out.println("Delete request completed");

Pour plus d’informations, consultez Azure Docs

deleteIfExists

public boolean deleteIfExists()

Supprime un fichier s’il existe.

Exemples de code

client.deleteIfExists();
 System.out.println("Delete request completed");

Pour plus d’informations, consultez Azure Docs

Overrides:

DataLakeFileClient.deleteIfExists()

Returns:

true si le fichier est supprimé avec succès, false si le fichier n’existe pas.

deleteIfExistsWithResponse

public Response deleteIfExistsWithResponse(DataLakePathDeleteOptions options, Duration timeout, Context context)

Supprime un fichier s’il existe.

Exemples de code

DataLakeRequestConditions requestConditions = new DataLakeRequestConditions()
     .setLeaseId(leaseId);
 DataLakePathDeleteOptions options = new DataLakePathDeleteOptions().setIsRecursive(false)
     .setRequestConditions(requestConditions);

 Response<Boolean> response = client.deleteIfExistsWithResponse(options, timeout, new Context(key1, value1));
 if (response.getStatusCode() == 404) {
     System.out.println("Does not exist.");
 } else {
     System.out.printf("Delete completed with status %d%n", response.getStatusCode());
 }

Pour plus d’informations, consultez Azure Docs

Overrides:

DataLakeFileClient.deleteIfExistsWithResponse(DataLakePathDeleteOptions options, Duration timeout, Context context)

Parameters:

timeout - Valeur de délai d’expiration facultative au-delà de laquelle un RuntimeException sera déclenché.
context - Contexte supplémentaire transmis via le pipeline Http pendant l’appel de service.

Returns:

Réponse contenant du code status et des en-têtes HTTP. Si Response<T>status code est 200, le fichier a été supprimé avec succès. Si status code est 404, le fichier n’existe pas.

deleteWithResponse

public Response deleteWithResponse(DataLakeRequestConditions requestConditions, Duration timeout, Context context)

Supprime un fichier.

Exemples de code

DataLakeRequestConditions requestConditions = new DataLakeRequestConditions()
     .setLeaseId(leaseId);

 client.deleteWithResponse(requestConditions, timeout, new Context(key1, value1));
 System.out.println("Delete request completed");

Pour plus d’informations, consultez Azure Docs

Parameters:

requestConditions - DataLakeRequestConditions
timeout - Valeur de délai d’expiration facultative au-delà de laquelle un RuntimeException sera déclenché.
context - Contexte supplémentaire transmis via le pipeline Http pendant l’appel de service.

Returns:

Réponse contenant du code status et des en-têtes HTTP.

flush

@Deprecated
public PathInfo flush(long position)

Déprécié

À la place, consultez flush(long position, boolean overwrite).

Vide les données (écritures) précédemment ajoutées au fichier par le biais d’un appel à ajouter. Les données précédemment chargées doivent être contiguës.

Par défaut, cette méthode ne remplace pas les données existantes.

Exemples de code

client.flush(position);
 System.out.println("Flush data completed");

Pour plus d’informations, consultez Azure Docs

Parameters:

position - Longueur du fichier une fois toutes les données écrites.

Returns:

Informations sur la ressource créée.

flush

public PathInfo flush(long position, boolean overwrite)

Vide les données (écritures) précédemment ajoutées au fichier par le biais d’un appel à ajouter. Les données précédemment chargées doivent être contiguës.

Exemples de code

boolean overwrite = true;
 client.flush(position, overwrite);
 System.out.println("Flush data completed");

Pour plus d’informations, consultez Azure Docs

Parameters:

position - Longueur du fichier une fois toutes les données écrites.
overwrite - S’il faut remplacer, des données doivent-elles exister dans le fichier .

Returns:

Informations sur la ressource créée.

flushWithResponse

public Response flushWithResponse(long position, boolean retainUncommittedData, boolean close, PathHttpHeaders httpHeaders, DataLakeRequestConditions requestConditions, Duration timeout, Context context)

Vide (écrit) les données précédemment ajoutées au fichier par le biais d’un appel à ajouter. Les données précédemment chargées doivent être contiguës.

Exemples de code

FileRange range = new FileRange(1024, 2048L);
 DownloadRetryOptions options = new DownloadRetryOptions().setMaxRetryRequests(5);
 byte[] contentMd5 = new byte[0]; // Replace with valid md5
 boolean retainUncommittedData = false;
 boolean close = false;
 PathHttpHeaders httpHeaders = new PathHttpHeaders()
     .setContentLanguage("en-US")
     .setContentType("binary");
 DataLakeRequestConditions requestConditions = new DataLakeRequestConditions()
     .setLeaseId(leaseId);

 Response<PathInfo> response = client.flushWithResponse(position, retainUncommittedData, close, httpHeaders,
     requestConditions, timeout, new Context(key1, value1));
 System.out.printf("Flush data completed with status %d%n", response.getStatusCode());

Pour plus d’informations, consultez Azure Docs

Parameters:

position - Longueur du fichier après l’écriture de toutes les données.
retainUncommittedData - Indique si les données non validées doivent être conservées après l’opération.
close - Si un événement modifié de fichier a été déclenché indique l’achèvement (true) ou la modification (false).
httpHeaders - PathHttpHeaders
requestConditions - DataLakeRequestConditions
timeout - Valeur de délai d’expiration facultative au-delà de laquelle un RuntimeException sera déclenché.
context - Contexte supplémentaire transmis via le pipeline Http pendant l’appel de service.

Returns:

Réponse contenant les informations de la ressource créée.

flushWithResponse

public Response flushWithResponse(long position, DataLakeFileFlushOptions flushOptions, Duration timeout, Context context)

Vide (écrit) les données précédemment ajoutées au fichier par le biais d’un appel à ajouter. Les données précédemment chargées doivent être contiguës.

Exemples de code

FileRange range = new FileRange(1024, 2048L);
 DownloadRetryOptions options = new DownloadRetryOptions().setMaxRetryRequests(5);
 byte[] contentMd5 = new byte[0]; // Replace with valid md5
 boolean retainUncommittedData = false;
 boolean close = false;
 PathHttpHeaders httpHeaders = new PathHttpHeaders()
     .setContentLanguage("en-US")
     .setContentType("binary");
 DataLakeRequestConditions requestConditions = new DataLakeRequestConditions()
     .setLeaseId(leaseId);

 Integer leaseDuration = 15;

 DataLakeFileFlushOptions flushOptions = new DataLakeFileFlushOptions()
     .setUncommittedDataRetained(retainUncommittedData)
     .setClose(close)
     .setPathHttpHeaders(httpHeaders)
     .setRequestConditions(requestConditions)
     .setLeaseAction(LeaseAction.ACQUIRE)
     .setLeaseDuration(leaseDuration)
     .setProposedLeaseId(leaseId);

 Response<PathInfo> response = client.flushWithResponse(position, flushOptions, timeout,
     new Context(key1, value1));
 System.out.printf("Flush data completed with status %d%n", response.getStatusCode());

Pour plus d’informations, consultez Azure Docs

Parameters:

position - Longueur du fichier après l’écriture de toutes les données.
flushOptions - DataLakeFileFlushOptions
timeout - Valeur de délai d’expiration facultative au-delà de laquelle un RuntimeException sera déclenché.
context - Contexte supplémentaire transmis via le pipeline Http pendant l’appel de service.

Returns:

Réponse contenant les informations de la ressource créée.

getCustomerProvidedKeyClient

public DataLakeFileClient getCustomerProvidedKeyClient(CustomerProvidedKey customerProvidedKey)

Crée un nouveau DataLakeFileClient avec le customerProvidedKey spécifié.

Overrides:

DataLakeFileClient.getCustomerProvidedKeyClient(CustomerProvidedKey customerProvidedKey)

Parameters:

customerProvidedKey - pour l’objet blob, passez null pour utiliser aucune clé fournie par le CustomerProvidedKey client.

Returns:

avec DataLakeFileClient le spécifié customerProvidedKey.

getFileName

public String getFileName()

Obtient le nom de ce fichier, sans inclure son chemin d’accès complet.

Returns:

Nom du fichier.

getFilePath

public String getFilePath()

Obtient le chemin d’accès de ce fichier, sans inclure le nom de la ressource elle-même.

Returns:

Chemin d’accès au fichier.

getFileUrl

public String getFileUrl()

Obtient l’URL du fichier représenté par ce client sur le service Data Lake.

Returns:

URL.

getOutputStream

public OutputStream getOutputStream()

Crée et ouvre un flux de sortie pour écrire des données dans le fichier. Si le fichier existe déjà sur le service, il est remplacé.

Returns:

OutputStream qui peut être utilisé pour écrire dans le fichier.

getOutputStream

public OutputStream getOutputStream(DataLakeFileOutputStreamOptions options)

Crée et ouvre un flux de sortie pour écrire des données dans le fichier. Si le fichier existe déjà sur le service, il est remplacé.

Pour éviter le remplacement, passez « * » à setIfNoneMatch(String ifNoneMatch).

Parameters:

Returns:

OutputStream qui peut être utilisé pour écrire dans le fichier.

getOutputStream

public OutputStream getOutputStream(DataLakeFileOutputStreamOptions options, Context context)

Crée et ouvre un flux de sortie pour écrire des données dans le fichier. Si le fichier existe déjà sur le service, il est remplacé.

Pour éviter le remplacement, passez « * » à setIfNoneMatch(String ifNoneMatch).

Parameters:

context - Contexte supplémentaire transmis via le pipeline Http pendant l’appel de service.

Returns:

OutputStream qui peut être utilisé pour écrire dans le fichier.

openInputStream

public DataLakeFileOpenInputStreamResult openInputStream()

Ouvre un flux d’entrée de fichier pour télécharger le fichier. Verrous sur les ETags.

DataLakeFileOpenInputStreamResult inputStream = client.openInputStream();

Returns:

Objet InputStream qui représente le flux à utiliser pour la lecture à partir du fichier.

openInputStream

public DataLakeFileOpenInputStreamResult openInputStream(DataLakeFileInputStreamOptions options)

Ouvre un flux d’entrée de fichier pour télécharger la plage spécifiée du fichier. La valeur par défaut est le verrouillage ETag si l’option n’est pas spécifiée.

DataLakeFileInputStreamOptions options = new DataLakeFileInputStreamOptions().setBlockSize(1024)
     .setRequestConditions(new DataLakeRequestConditions());
 DataLakeFileOpenInputStreamResult streamResult = client.openInputStream(options);

Parameters:

Returns:

Objet DataLakeFileOpenInputStreamResult qui contient le flux à utiliser pour la lecture à partir du fichier.

openInputStream

public DataLakeFileOpenInputStreamResult openInputStream(DataLakeFileInputStreamOptions options, Context context)

Ouvre un flux d’entrée de fichier pour télécharger la plage spécifiée du fichier. La valeur par défaut est le verrouillage ETag si l’option n’est pas spécifiée.

options = new DataLakeFileInputStreamOptions().setBlockSize(1024)
     .setRequestConditions(new DataLakeRequestConditions());
 DataLakeFileOpenInputStreamResult stream = client.openInputStream(options, new Context(key1, value1));

Parameters:

context - Contexte supplémentaire transmis via le pipeline Http pendant l’appel de service.

Returns:

Objet DataLakeFileOpenInputStreamResult qui contient le flux à utiliser pour la lecture à partir du fichier.

openQueryInputStream

public InputStream openQueryInputStream(String expression)

Ouvre un flux d’entrée pour interroger le fichier.

Pour plus d’informations, consultez Azure Docs

Exemples de code

String expression = "SELECT * from BlobStorage";
 InputStream inputStream = client.openQueryInputStream(expression);
 // Now you can read from the input stream like you would normally.

Parameters:

expression - Expression de requête.

Returns:

Objet InputStream qui représente le flux à utiliser pour lire la réponse à la requête.

openQueryInputStreamWithResponse

public Response openQueryInputStreamWithResponse(FileQueryOptions queryOptions)

Ouvre un flux d’entrée pour interroger le fichier.

Pour plus d’informations, consultez Azure Docs

Exemples de code

String expression = "SELECT * from BlobStorage";
 FileQuerySerialization input = new FileQueryDelimitedSerialization()
     .setColumnSeparator(',')
     .setEscapeChar('\n')
     .setRecordSeparator('\n')
     .setHeadersPresent(true)
     .setFieldQuote('"');
 FileQuerySerialization output = new FileQueryJsonSerialization()
     .setRecordSeparator('\n');
 DataLakeRequestConditions requestConditions = new DataLakeRequestConditions()
     .setLeaseId("leaseId");
 Consumer<FileQueryError> errorConsumer = System.out::println;
 Consumer<FileQueryProgress> progressConsumer = progress -> System.out.println("total file bytes read: "
     + progress.getBytesScanned());
 FileQueryOptions queryOptions = new FileQueryOptions(expression)
     .setInputSerialization(input)
     .setOutputSerialization(output)
     .setRequestConditions(requestConditions)
     .setErrorConsumer(errorConsumer)
     .setProgressConsumer(progressConsumer);

 InputStream inputStream = client.openQueryInputStreamWithResponse(queryOptions).getValue();
 // Now you can read from the input stream like you would normally.

Parameters:

queryOptions - FileQueryOptions.

Returns:

Réponse contenant status code et des en-têtes HTTP, y compris un InputStream objet qui représente le flux à utiliser pour lire la réponse à la requête.

query

public void query(OutputStream stream, String expression)

Interroge un fichier entier dans un flux de sortie.

Pour plus d’informations, consultez Azure Docs

Exemples de code

ByteArrayOutputStream queryData = new ByteArrayOutputStream();
 String expression = "SELECT * from BlobStorage";
 client.query(queryData, expression);
 System.out.println("Query completed.");

Parameters:

stream - Un instance non null OutputStream où les données téléchargées seront écrites.
expression - Expression de requête.

queryWithResponse

public FileQueryResponse queryWithResponse(FileQueryOptions queryOptions, Duration timeout, Context context)

Interroge un fichier entier dans un flux de sortie.

Pour plus d’informations, consultez Azure Docs

Exemples de code

ByteArrayOutputStream queryData = new ByteArrayOutputStream();
 String expression = "SELECT * from BlobStorage";
 FileQueryJsonSerialization input = new FileQueryJsonSerialization()
     .setRecordSeparator('\n');
 FileQueryDelimitedSerialization output = new FileQueryDelimitedSerialization()
     .setEscapeChar('\0')
     .setColumnSeparator(',')
     .setRecordSeparator('\n')
     .setFieldQuote('\'')
     .setHeadersPresent(true);
 DataLakeRequestConditions requestConditions = new DataLakeRequestConditions().setLeaseId(leaseId);
 Consumer<FileQueryError> errorConsumer = System.out::println;
 Consumer<FileQueryProgress> progressConsumer = progress -> System.out.println("total file bytes read: "
     + progress.getBytesScanned());
 FileQueryOptions queryOptions = new FileQueryOptions(expression, queryData)
     .setInputSerialization(input)
     .setOutputSerialization(output)
     .setRequestConditions(requestConditions)
     .setErrorConsumer(errorConsumer)
     .setProgressConsumer(progressConsumer);
 System.out.printf("Query completed with status %d%n",
     client.queryWithResponse(queryOptions, timeout, new Context(key1, value1))
         .getStatusCode());

Parameters:

queryOptions - FileQueryOptions.
timeout - Valeur de délai d’expiration facultative au-delà de laquelle un RuntimeException sera déclenché.
context - Contexte supplémentaire transmis via le pipeline Http pendant l’appel de service.

Returns:

Réponse contenant du code status et des en-têtes HTTP.

read

public void read(OutputStream stream)

Lit le fichier entier dans un flux de sortie.

Exemples de code

client.read(new ByteArrayOutputStream());
 System.out.println("Download completed.");

Pour plus d’informations, consultez Azure Docs

Parameters:

stream - Un instance non null OutputStream où les données téléchargées seront écrites.

readToFile

public PathProperties readToFile(String filePath)

Lit le fichier entier dans un fichier spécifié par le chemin d’accès.

Le fichier est créé et ne doit pas exister. Si le fichier existe déjà, un FileAlreadyExistsException est levée.

Exemples de code

client.readToFile(file);
 System.out.println("Completed download to file");

Pour plus d’informations, consultez Azure Docs

Parameters:

filePath - String représentant le filePath où les données téléchargées seront écrites.

Returns:

Propriétés et métadonnées du fichier.

readToFile

public PathProperties readToFile(String filePath, boolean overwrite)

Lit le fichier entier dans un fichier spécifié par le chemin d’accès.

Si le remplacement est défini sur false, le fichier est créé et ne doit pas exister. Si le fichier existe déjà, un FileAlreadyExistsException sera levée.

Exemples de code

boolean overwrite = false; // Default value
 client.readToFile(file, overwrite);
 System.out.println("Completed download to file");

Pour plus d’informations, consultez Azure Docs

Parameters:

filePath - String représentant le filePath où les données téléchargées seront écrites.
overwrite - Indique s’il faut remplacer le fichier, s’il existe.

Returns:

Propriétés et métadonnées du fichier.

readToFileWithResponse

public Response readToFileWithResponse(String filePath, FileRange range, ParallelTransferOptions parallelTransferOptions, DownloadRetryOptions downloadRetryOptions, DataLakeRequestConditions requestConditions, boolean rangeGetContentMd5, Set openOptions, Duration timeout, Context context)

Lit le fichier entier dans un fichier spécifié par le chemin d’accès.

Par défaut, le fichier est créé et ne doit pas exister. Si le fichier existe déjà, un FileAlreadyExistsException est levée. Pour remplacer ce comportement, fournissez OpenOptions

Exemples de code

FileRange fileRange = new FileRange(1024, 2048L);
 DownloadRetryOptions downloadRetryOptions = new DownloadRetryOptions().setMaxRetryRequests(5);
 Set<OpenOption> openOptions = new HashSet<>(Arrays.asList(StandardOpenOption.CREATE_NEW,
     StandardOpenOption.WRITE, StandardOpenOption.READ)); // Default options

 client.readToFileWithResponse(file, fileRange, new ParallelTransferOptions().setBlockSizeLong(4L * Constants.MB),
     downloadRetryOptions, null, false, openOptions, timeout, new Context(key2, value2));
 System.out.println("Completed download to file");

Pour plus d’informations, consultez Azure Docs

Parameters:

filePath - String représentant le filePath où les données téléchargées seront écrites.
range - FileRange
parallelTransferOptions - ParallelTransferOptions à utiliser pour télécharger dans un fichier. Le paramètre Nombre de transferts parallèles est ignoré.
downloadRetryOptions - DownloadRetryOptions
requestConditions - DataLakeRequestConditions
rangeGetContentMd5 - Indique si le contentMD5 pour la plage de fichiers spécifiée doit être retourné.
openOptions - OpenOptions à utiliser pour configurer l’ouverture ou la création du fichier.
timeout - Valeur de délai d’expiration facultative au-delà de laquelle un RuntimeException sera déclenché.
context - Contexte supplémentaire transmis via le pipeline Http pendant l’appel de service.

Returns:

Réponse contenant les propriétés et métadonnées du fichier.

readWithResponse

public FileReadResponse readWithResponse(OutputStream stream, FileRange range, DownloadRetryOptions options, DataLakeRequestConditions requestConditions, boolean getRangeContentMd5, Duration timeout, Context context)

Lit une plage d’octets d’un fichier dans un flux de sortie.

Exemples de code

FileRange range = new FileRange(1024, 2048L);
 DownloadRetryOptions options = new DownloadRetryOptions().setMaxRetryRequests(5);

 System.out.printf("Download completed with status %d%n",
     client.readWithResponse(new ByteArrayOutputStream(), range, options, null, false,
         timeout, new Context(key2, value2)).getStatusCode());

Pour plus d’informations, consultez Azure Docs

Parameters:

stream - Un instance non null OutputStream où les données téléchargées seront écrites.
range - FileRange
requestConditions - DataLakeRequestConditions
getRangeContentMd5 - Indique si le contentMD5 pour la plage de fichiers spécifiée doit être retourné.
timeout - Valeur de délai d’expiration facultative au-delà de laquelle un RuntimeException sera déclenché.
context - Contexte supplémentaire transmis via le pipeline Http pendant l’appel de service.

Returns:

Réponse contenant du code status et des en-têtes HTTP.

rename

public DataLakeFileClient rename(String destinationFileSystem, String destinationPath)

Déplace le fichier vers un autre emplacement dans le système de fichiers. Pour plus d’informations, consultez Azure Docs.

Exemples de code

DataLakeDirectoryAsyncClient renamedClient = client.rename(fileSystemName, destinationPath).block();
 System.out.println("Directory Client has been renamed");

Parameters:

destinationFileSystem - Système de fichiers de la destination dans le compte. null pour le système de fichiers actuel.
destinationPath - Le chemin d’accès relatif du système de fichiers dans lequel renommer le fichier exclut le nom du système de fichiers. Par exemple, si vous souhaitez déplacer un fichier avec fileSystem = « myfilesystem », path = « mydir/hello.txt » vers un autre chemin dans myfilesystem (ex: newdir/hi.txt), définissez destinationPath = « newdir/hi.txt »

Returns:

DataLakeFileClient utilisé pour interagir avec le nouveau fichier créé.

renameWithResponse

public Response renameWithResponse(String destinationFileSystem, String destinationPath, DataLakeRequestConditions sourceRequestConditions, DataLakeRequestConditions destinationRequestConditions, Duration timeout, Context context)

Déplace le fichier vers un autre emplacement dans le système de fichiers. Pour plus d’informations, consultez Azure Docs.

Exemples de code

DataLakeRequestConditions sourceRequestConditions = new DataLakeRequestConditions()
     .setLeaseId(leaseId);
 DataLakeRequestConditions destinationRequestConditions = new DataLakeRequestConditions();

 DataLakeFileClient newRenamedClient = client.renameWithResponse(fileSystemName, destinationPath,
     sourceRequestConditions, destinationRequestConditions, timeout, new Context(key1, value1)).getValue();
 System.out.println("Directory Client has been renamed");

Parameters:

destinationFileSystem - Système de fichiers de la destination dans le compte. null pour le système de fichiers actuel.
destinationPath - Le chemin d’accès relatif du système de fichiers dans lequel renommer le fichier exclut le nom du système de fichiers. Par exemple, si vous souhaitez déplacer un fichier avec fileSystem = « myfilesystem », path = « mydir/hello.txt » vers un autre chemin dans myfilesystem (ex: newdir/hi.txt), définissez destinationPath = « newdir/hi.txt »
sourceRequestConditions - DataLakeRequestConditions par rapport à la source.
destinationRequestConditions - DataLakeRequestConditions par rapport à la destination.
timeout - Valeur de délai d’expiration facultative au-delà de laquelle un RuntimeException sera déclenché.
context - Contexte supplémentaire transmis via le pipeline Http pendant l’appel de service.

Returns:

Response<T> dont value contient un DataLakeFileClient utilisé pour interagir avec le fichier créé.

scheduleDeletion

public void scheduleDeletion(FileScheduleDeletionOptions options)

Planifie la suppression du fichier.

Exemples de code

FileScheduleDeletionOptions options = new FileScheduleDeletionOptions(OffsetDateTime.now().plusDays(1));
 client.scheduleDeletion(options);
 System.out.println("File deletion has been scheduled");

Parameters:

options - Planifier les paramètres de suppression.

scheduleDeletionWithResponse

public Response scheduleDeletionWithResponse(FileScheduleDeletionOptions options, Duration timeout, Context context)

Planifie la suppression du fichier.

Exemples de code

FileScheduleDeletionOptions options = new FileScheduleDeletionOptions(OffsetDateTime.now().plusDays(1));
 Context context = new Context("key", "value");

 client.scheduleDeletionWithResponse(options, timeout, context);
 System.out.println("File deletion has been scheduled");

Parameters:

options - Planifier les paramètres de suppression.
timeout - Valeur de délai d’expiration facultative au-delà de laquelle un RuntimeException sera déclenché.
context - Contexte supplémentaire transmis via le pipeline Http pendant l’appel de service.

Returns:

Réponse contenant du code status et des en-têtes HTTP.

upload

public PathInfo upload(BinaryData data)

Crée un nouveau fichier. Par défaut, cette méthode ne remplace pas un fichier existant.

Exemples de code

try {
     client.upload(binaryData);
     System.out.println("Upload from file succeeded");
 } catch (UncheckedIOException ex) {
     System.err.printf("Failed to upload from file %s%n", ex.getMessage());
 }

Parameters:

data - Données à écrire dans l’objet blob. Les données doivent être markables. Cela permet de prendre en charge les nouvelles tentatives. Si les données ne sont pas markables, envisagez d’encapsuler votre source de données dans un BufferedInputStream pour ajouter la prise en charge des marques.

Returns:

Informations sur le chemin d’accès chargé.

upload

public PathInfo upload(BinaryData data, boolean overwrite)

Crée un fichier ou met à jour le contenu d’un fichier existant.

Exemples de code

try {
     boolean overwrite = false;
     client.upload(binaryData, overwrite);
     System.out.println("Upload from file succeeded");
 } catch (UncheckedIOException ex) {
     System.err.printf("Failed to upload from file %s%n", ex.getMessage());
 }

Parameters:

data - Données à écrire dans l’objet blob. Les données doivent être markables. Cela permet de prendre en charge les nouvelles tentatives. Si les données ne sont pas markables, envisagez d’encapsuler votre source de données dans un BufferedInputStream pour ajouter la prise en charge des marques.
overwrite - Indique s’il faut remplacer les données sur le fichier.

Returns:

Informations sur le chemin d’accès chargé.

upload

public PathInfo upload(InputStream data, long length)

Crée un nouveau fichier. Par défaut, cette méthode ne remplace pas un fichier existant.

Exemples de code

try {
     client.upload(data, length);
     System.out.println("Upload from file succeeded");
 } catch (UncheckedIOException ex) {
     System.err.printf("Failed to upload from file %s%n", ex.getMessage());
 }

Parameters:

data - Données à écrire dans l’objet blob. Les données doivent être markables. Cela permet de prendre en charge les nouvelles tentatives. Si les données ne sont pas markables, envisagez d’encapsuler votre source de données dans un BufferedInputStream pour ajouter la prise en charge des marques.
length - Longueur exacte des données. Il est important que cette valeur corresponde précisément à la longueur des données fournies dans le InputStream.

Returns:

Informations sur le chemin d’accès chargé.

upload

public PathInfo upload(InputStream data, long length, boolean overwrite)

Crée un fichier ou met à jour le contenu d’un fichier existant.

Exemples de code

try {
     boolean overwrite = false;
     client.upload(data, length, overwrite);
     System.out.println("Upload from file succeeded");
 } catch (UncheckedIOException ex) {
     System.err.printf("Failed to upload from file %s%n", ex.getMessage());
 }

Parameters:

data - Données à écrire dans l’objet blob. Les données doivent être markables. Cela permet de prendre en charge les nouvelles tentatives. Si les données ne sont pas markables, envisagez d’encapsuler votre source de données dans un BufferedInputStream pour ajouter la prise en charge des marques.
length - Longueur exacte des données. Il est important que cette valeur corresponde précisément à la longueur des données fournies dans le InputStream.
overwrite - S’il faut remplacer, des données doivent-elles exister dans le fichier .

Returns:

Informations sur le chemin d’accès chargé.

uploadFromFile

public void uploadFromFile(String filePath)

Crée un fichier, avec le contenu du fichier spécifié. Par défaut, cette méthode ne remplace pas un fichier existant.

Exemples de code

try {
     client.uploadFromFile(filePath);
     System.out.println("Upload from file succeeded");
 } catch (UncheckedIOException ex) {
     System.err.printf("Failed to upload from file %s%n", ex.getMessage());
 }

Parameters:

filePath - Chemin du fichier à charger

uploadFromFile

public void uploadFromFile(String filePath, boolean overwrite)

Crée un fichier, avec le contenu du fichier spécifié.

Exemples de code

try {
     boolean overwrite = false;
     client.uploadFromFile(filePath, overwrite);
     System.out.println("Upload from file succeeded");
 } catch (UncheckedIOException ex) {
     System.err.printf("Failed to upload from file %s%n", ex.getMessage());
 }

Parameters:

filePath - Chemin du fichier à charger
overwrite - S’il faut remplacer si le fichier existe déjà

uploadFromFile

public void uploadFromFile(String filePath, ParallelTransferOptions parallelTransferOptions, PathHttpHeaders headers, Map metadata, DataLakeRequestConditions requestConditions, Duration timeout)

Crée un fichier, avec le contenu du fichier spécifié.

Pour éviter le remplacement, passez « * » à setIfNoneMatch(String ifNoneMatch).

Exemples de code

PathHttpHeaders headers = new PathHttpHeaders()
     .setContentMd5("data".getBytes(StandardCharsets.UTF_8))
     .setContentLanguage("en-US")
     .setContentType("binary");

 Map<String, String> metadata = Collections.singletonMap("metadata", "value");
 DataLakeRequestConditions requestConditions = new DataLakeRequestConditions()
     .setLeaseId(leaseId)
     .setIfUnmodifiedSince(OffsetDateTime.now().minusDays(3));
 Long blockSize = 100L * 1024L * 1024L; // 100 MB;
 ParallelTransferOptions parallelTransferOptions = new ParallelTransferOptions().setBlockSizeLong(blockSize);

 try {
     client.uploadFromFile(filePath, parallelTransferOptions, headers, metadata, requestConditions, timeout);
     System.out.println("Upload from file succeeded");
 } catch (UncheckedIOException ex) {
     System.err.printf("Failed to upload from file %s%n", ex.getMessage());
 }

Parameters:

filePath - Chemin du fichier à charger
parallelTransferOptions - ParallelTransferOptions permet de configurer le chargement mis en mémoire tampon.
headers - PathHttpHeaders
metadata - Métadonnées à associer à la ressource. S’il existe un espace blanc de début ou de fin dans une clé ou une valeur de métadonnées, il doit être supprimé ou encodé.
requestConditions - DataLakeRequestConditions
timeout - Valeur de délai d’expiration facultative au-delà de laquelle un RuntimeException sera déclenché.

uploadFromFileWithResponse

public Response uploadFromFileWithResponse(String filePath, ParallelTransferOptions parallelTransferOptions, PathHttpHeaders headers, Map metadata, DataLakeRequestConditions requestConditions, Duration timeout, Context context)

Crée un fichier, avec le contenu du fichier spécifié.

Pour éviter le remplacement, passez « * » à setIfNoneMatch(String ifNoneMatch).

Exemples de code

PathHttpHeaders headers = new PathHttpHeaders()
     .setContentMd5("data".getBytes(StandardCharsets.UTF_8))
     .setContentLanguage("en-US")
     .setContentType("binary");

 Map<String, String> metadata = Collections.singletonMap("metadata", "value");
 DataLakeRequestConditions requestConditions = new DataLakeRequestConditions()
     .setLeaseId(leaseId)
     .setIfUnmodifiedSince(OffsetDateTime.now().minusDays(3));
 Long blockSize = 100L * 1024L * 1024L; // 100 MB;
 ParallelTransferOptions parallelTransferOptions = new ParallelTransferOptions().setBlockSizeLong(blockSize);

 try {
     Response<PathInfo> response = client.uploadFromFileWithResponse(filePath, parallelTransferOptions, headers,
         metadata, requestConditions, timeout, new Context("key", "value"));
     System.out.printf("Upload from file succeeded with status %d%n", response.getStatusCode());
 } catch (UncheckedIOException ex) {
     System.err.printf("Failed to upload from file %s%n", ex.getMessage());
 }

Parameters:

filePath - Chemin du fichier à charger
parallelTransferOptions - ParallelTransferOptions permet de configurer le chargement mis en mémoire tampon.
headers - PathHttpHeaders
metadata - Métadonnées à associer à la ressource. S’il existe un espace blanc de début ou de fin dans une clé ou une valeur de métadonnées, il doit être supprimé ou encodé.
requestConditions - DataLakeRequestConditions
timeout - Valeur de délai d’expiration facultative au-delà de laquelle un RuntimeException sera déclenché.
context - Contexte supplémentaire transmis via le pipeline Http pendant l’appel de service.

Returns:

Réponse contenant des informations sur le chemin d’accès chargé.

uploadWithResponse

public Response uploadWithResponse(FileParallelUploadOptions options, Duration timeout, Context context)

Crée un nouveau fichier. Pour éviter le remplacement, passez « * » à setIfNoneMatch(String ifNoneMatch).

Exemples de code

PathHttpHeaders headers = new PathHttpHeaders()
     .setContentMd5("data".getBytes(StandardCharsets.UTF_8))
     .setContentLanguage("en-US")
     .setContentType("binary");

 Map<String, String> metadata = Collections.singletonMap("metadata", "value");
 DataLakeRequestConditions requestConditions = new DataLakeRequestConditions()
     .setLeaseId(leaseId)
     .setIfUnmodifiedSince(OffsetDateTime.now().minusDays(3));
 Long blockSize = 100L * 1024L * 1024L; // 100 MB;
 ParallelTransferOptions parallelTransferOptions = new ParallelTransferOptions().setBlockSizeLong(blockSize);

 try {
     client.uploadWithResponse(new FileParallelUploadOptions(data, length)
         .setParallelTransferOptions(parallelTransferOptions).setHeaders(headers)
         .setMetadata(metadata).setRequestConditions(requestConditions)
         .setPermissions("permissions").setUmask("umask"), timeout, new Context("key", "value"));
     System.out.println("Upload from file succeeded");
 } catch (UncheckedIOException ex) {
     System.err.printf("Failed to upload from file %s%n", ex.getMessage());
 }

Parameters:

timeout - Valeur de délai d’expiration facultative au-delà de laquelle un RuntimeException sera déclenché.
context - Contexte supplémentaire transmis via le pipeline Http pendant l’appel de service.

Returns:

Informations sur le chemin d’accès chargé.

S’applique à