Compartir a través de


DataLakeFileClient Clase

public class DataLakeFileClient
extends DataLakePathClient

Esta clase proporciona un cliente que contiene operaciones de archivo para Azure Storage Data Lake. Las operaciones proporcionadas por este cliente incluyen crear un archivo, eliminar un archivo, cambiar el nombre de un archivo, establecer metadatos y encabezados http, establecer y recuperar el control de acceso, obtener propiedades, leer un archivo y anexar y vaciar datos para escribir en un archivo.

Se crea una instancia de este cliente a través DataLakePathClientBuilder de o se recupera a través de getFileClient(String fileName).

Consulte Azure Docs para más información.

Resumen del método

Modificador y tipo Método y descripción
void append(BinaryData data, long fileOffset)

Anexa datos al recurso especificado para vaciarlos (escritos) más adelante mediante una llamada al vaciado.

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

Anexa datos al recurso especificado para vaciarlos (escritos) más adelante mediante una llamada al vaciado.

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

Anexa datos al recurso especificado para vaciarlos (escritos) más adelante mediante una llamada al vaciado.

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

Anexa datos al recurso especificado para vaciarlos (escritos) más adelante mediante una llamada al vaciado.

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

Anexa datos al recurso especificado para vaciarlos (escritos) más adelante mediante una llamada al vaciado.

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

Anexa datos al recurso especificado para vaciarlos (escritos) más adelante mediante una llamada al vaciado.

void delete()

Elimina un archivo.

boolean deleteIfExists()

Elimina un archivo si existe.

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

Elimina un archivo si existe.

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

Elimina un archivo.

PathInfo flush(long position)

Obsoleto

Vacía los datos (escrituras) previamente anexados al archivo a través de una llamada para anexar.

PathInfo flush(long position, boolean overwrite)

Vacía (escribe) los datos previamente anexados al archivo a través de una llamada a append.

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

Vacía (escribe) los datos previamente anexados al archivo a través de una llamada a append.

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

Vacía (escribe) los datos previamente anexados al archivo a través de una llamada a append.

DataLakeFileClient getCustomerProvidedKeyClient(CustomerProvidedKey customerProvidedKey)

Crea un nuevo DataLakeFileClient con el customerProvidedKey especificado.

String getFileName()

Obtiene el nombre de este archivo, no incluida su ruta de acceso completa.

String getFilePath()

Obtiene la ruta de acceso de este archivo, sin incluir el nombre del propio recurso.

String getFileUrl()

Obtiene la dirección URL del archivo representado por este cliente en el servicio Data Lake.

OutputStream getOutputStream()

Crea y abre un flujo de salida para escribir datos en el archivo.

OutputStream getOutputStream(DataLakeFileOutputStreamOptions options)

Crea y abre un flujo de salida para escribir datos en el archivo.

OutputStream getOutputStream(DataLakeFileOutputStreamOptions options, Context context)

Crea y abre un flujo de salida para escribir datos en el archivo.

DataLakeFileOpenInputStreamResult openInputStream()

Abre un flujo de entrada de archivo para descargar el archivo.

DataLakeFileOpenInputStreamResult openInputStream(DataLakeFileInputStreamOptions options)

Abre un flujo de entrada de archivo para descargar el intervalo especificado del archivo.

DataLakeFileOpenInputStreamResult openInputStream(DataLakeFileInputStreamOptions options, Context context)

Abre un flujo de entrada de archivo para descargar el intervalo especificado del archivo.

InputStream openQueryInputStream(String expression)

Abre un flujo de entrada para consultar el archivo.

Response<InputStream> openQueryInputStreamWithResponse(FileQueryOptions queryOptions)

Abre un flujo de entrada para consultar el archivo.

void query(OutputStream stream, String expression)

Consulta un archivo completo en un flujo de salida.

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

Consulta un archivo completo en un flujo de salida.

void read(OutputStream stream)

Lee todo el archivo en un flujo de salida.

PathProperties readToFile(String filePath)

Lee todo el archivo en un archivo especificado por la ruta de acceso.

PathProperties readToFile(String filePath, boolean overwrite)

Lee todo el archivo en un archivo especificado por la ruta de acceso.

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

Lee todo el archivo en un archivo especificado por la ruta de acceso.

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

Lee un intervalo de bytes de un archivo en un flujo de salida.

DataLakeFileClient rename(String destinationFileSystem, String destinationPath)

Mueve el archivo a otra ubicación dentro del sistema de archivos.

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

Mueve el archivo a otra ubicación dentro del sistema de archivos.

void scheduleDeletion(FileScheduleDeletionOptions options)

Programa el archivo para su eliminación.

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

Programa el archivo para su eliminación.

PathInfo upload(BinaryData data)

Crea un nuevo archivo.

PathInfo upload(BinaryData data, boolean overwrite)

Crea un nuevo archivo o actualiza el contenido de un archivo existente.

PathInfo upload(InputStream data, long length)

Crea un nuevo archivo.

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

Crea un nuevo archivo o actualiza el contenido de un archivo existente.

void uploadFromFile(String filePath)

Crea un archivo, con el contenido del archivo especificado.

void uploadFromFile(String filePath, boolean overwrite)

Crea un archivo, con el contenido del archivo especificado.

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

Crea un archivo, con el contenido del archivo especificado.

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

Crea un archivo, con el contenido del archivo especificado.

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

Crea un nuevo archivo.

Métodos heredados de DataLakePathClient

Métodos heredados de java.lang.Object

Detalles del método

append

public void append(BinaryData data, long fileOffset)

Anexa datos al recurso especificado para vaciarlos (escritos) más adelante mediante una llamada al vaciado.

Ejemplos de código

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

Para más información, consulte Azure Docs.

Parameters:

data - Datos que se van a escribir en el archivo.
fileOffset - Posición donde se van a anexar los datos.

append

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

Anexa datos al recurso especificado para vaciarlos (escritos) más adelante mediante una llamada al vaciado.

Ejemplos de código

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

Para más información, consulte Azure Docs.

Parameters:

data - Datos que se van a escribir en el archivo.
fileOffset - Posición donde se van a anexar los datos.
length - Longitud exacta de los datos.

appendWithResponse

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

Anexa datos al recurso especificado para vaciarlos (escritos) más adelante mediante una llamada al vaciado.

Ejemplos de código

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());

Para más información, consulte Azure Docs.

Parameters:

data - Datos que se van a escribir en el archivo.
fileOffset - Posición donde se van a anexar los datos.
contentMd5 - Hash MD5 del contenido de los datos. Si se especifica, el servicio calculará el MD5 de los datos recibidos y producirá un error en la solicitud si no coincide con el MD5 proporcionado.
leaseId - Al establecer el identificador de concesión, se producirá un error en las solicitudes si la concesión proporcionada no coincide con la concesión activa en el archivo.
timeout - Valor de tiempo de espera opcional más allá del cual se generará un RuntimeException .
context - Contexto adicional que se pasa a través de la canalización Http durante la llamada al servicio.

Returns:

Finalización de señalización de respuesta.

appendWithResponse

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

Anexa datos al recurso especificado para vaciarlos (escritos) más adelante mediante una llamada al vaciado.

Ejemplos de código

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());

Para más información, consulte Azure Docs.

Parameters:

data - Datos que se van a escribir en el archivo.
fileOffset - Posición donde se van a anexar los datos.
appendOptions - DataLakeFileAppendOptions
timeout - Valor de tiempo de espera opcional más allá del cual se generará un RuntimeException .
context - Contexto adicional que se pasa a través de la canalización Http durante la llamada al servicio.

Returns:

Finalización de señalización de respuesta.

appendWithResponse

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

Anexa datos al recurso especificado para vaciarlos (escritos) más adelante mediante una llamada al vaciado.

Ejemplos de código

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());

Para más información, consulte Azure Docs.

Parameters:

data - Datos que se van a escribir en el archivo.
fileOffset - Posición donde se van a anexar los datos.
length - Longitud exacta de los datos.
contentMd5 - Hash MD5 del contenido de los datos. Si se especifica, el servicio calculará el MD5 de los datos recibidos y producirá un error en la solicitud si no coincide con el MD5 proporcionado.
leaseId - Al establecer el identificador de concesión, se producirá un error en las solicitudes si la concesión proporcionada no coincide con la concesión activa en el archivo.
timeout - Valor de tiempo de espera opcional más allá del cual se generará un RuntimeException .
context - Contexto adicional que se pasa a través de la canalización Http durante la llamada al servicio.

Returns:

Finalización de señalización de respuesta.

appendWithResponse

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

Anexa datos al recurso especificado para vaciarlos (escritos) más adelante mediante una llamada al vaciado.

Ejemplos de código

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());

Para más información, consulte Azure Docs.

Parameters:

data - Datos que se van a escribir en el archivo.
fileOffset - Posición donde se van a anexar los datos.
length - Longitud exacta de los datos.
appendOptions - DataLakeFileAppendOptions
timeout - Valor de tiempo de espera opcional más allá del cual se generará un RuntimeException .
context - Contexto adicional que se pasa a través de la canalización Http durante la llamada al servicio.

Returns:

Finalización de señalización de respuesta.

delete

public void delete()

Elimina un archivo.

Ejemplos de código

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

Para más información, consulte Azure Docs.

deleteIfExists

public boolean deleteIfExists()

Elimina un archivo si existe.

Ejemplos de código

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

Para más información, consulte Azure Docs.

Overrides:

DataLakeFileClient.deleteIfExists()

Returns:

true si el archivo se elimina correctamente, false si el archivo no existe.

deleteIfExistsWithResponse

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

Elimina un archivo si existe.

Ejemplos de código

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());
 }

Para más información, consulte Azure Docs.

Overrides:

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

Parameters:

timeout - Valor de tiempo de espera opcional más allá del cual se generará un RuntimeException .
context - Contexto adicional que se pasa a través de la canalización Http durante la llamada al servicio.

Returns:

Respuesta que contiene el código de estado y los encabezados HTTP. Si Response<T>el código de estado es 200, el archivo se eliminó correctamente. Si el código de estado es 404, el archivo no existe.

deleteWithResponse

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

Elimina un archivo.

Ejemplos de código

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

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

Para más información, consulte Azure Docs.

Parameters:

requestConditions - DataLakeRequestConditions
timeout - Valor de tiempo de espera opcional más allá del cual se generará un RuntimeException .
context - Contexto adicional que se pasa a través de la canalización Http durante la llamada al servicio.

Returns:

Respuesta que contiene el código de estado y los encabezados HTTP.

flush

@Deprecated
public PathInfo flush(long position)

Obsoleto

Vacía los datos (escrituras) previamente anexados al archivo a través de una llamada para anexar. Los datos cargados anteriormente deben ser contiguos.

De forma predeterminada, este método no sobrescribirá los datos existentes.

Ejemplos de código

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

Para más información, consulte Azure Docs.

Parameters:

position - Longitud del archivo después de que se hayan escrito todos los datos.

Returns:

Información sobre el recurso creado.

flush

public PathInfo flush(long position, boolean overwrite)

Vacía los datos (escrituras) previamente anexados al archivo a través de una llamada para anexar. Los datos cargados anteriormente deben ser contiguos.

Ejemplos de código

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

Para más información, consulte Azure Docs.

Parameters:

position - Longitud del archivo después de que se hayan escrito todos los datos.
overwrite - Si se va a sobrescribir, deben existir datos en el archivo.

Returns:

Información sobre el recurso creado.

flushWithResponse

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

Vacía (escribe) los datos previamente anexados al archivo a través de una llamada a append. Los datos cargados anteriormente deben ser contiguos.

Ejemplos de código

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());

Para más información, consulte Azure Docs.

Parameters:

position - Longitud del archivo después de que se hayan escrito todos los datos.
retainUncommittedData - Si los datos no confirmados se conservarán después de la operación.
close - Si un evento cambiado de archivo generado indica la finalización (true) o la modificación (false).
httpHeaders - PathHttpHeaders
requestConditions - DataLakeRequestConditions
timeout - Valor de tiempo de espera opcional más allá del cual se generará un RuntimeException .
context - Contexto adicional que se pasa a través de la canalización Http durante la llamada al servicio.

Returns:

Respuesta que contiene la información del recurso creado.

flushWithResponse

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

Vacía (escribe) los datos previamente anexados al archivo a través de una llamada a append. Los datos cargados anteriormente deben ser contiguos.

Ejemplos de código

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());

Para más información, consulte Azure Docs.

Parameters:

position - Longitud del archivo después de que se hayan escrito todos los datos.
flushOptions - DataLakeFileFlushOptions
timeout - Valor de tiempo de espera opcional más allá del cual se generará un RuntimeException .
context - Contexto adicional que se pasa a través de la canalización Http durante la llamada al servicio.

Returns:

Respuesta que contiene la información del recurso creado.

getCustomerProvidedKeyClient

public DataLakeFileClient getCustomerProvidedKeyClient(CustomerProvidedKey customerProvidedKey)

Crea un nuevo DataLakeFileClient con el customerProvidedKey especificado.

Overrides:

DataLakeFileClient.getCustomerProvidedKeyClient(CustomerProvidedKey customerProvidedKey)

Parameters:

customerProvidedKey - para CustomerProvidedKey el blob, pase null para que no use ninguna clave proporcionada por el cliente.

Returns:

un DataLakeFileClient objeto con el especificado customerProvidedKey.

getFileName

public String getFileName()

Obtiene el nombre de este archivo, no incluida su ruta de acceso completa.

Returns:

Nombre del archivo.

getFilePath

public String getFilePath()

Obtiene la ruta de acceso de este archivo, sin incluir el nombre del propio recurso.

Returns:

Ruta de acceso del archivo.

getFileUrl

public String getFileUrl()

Obtiene la dirección URL del archivo representado por este cliente en el servicio Data Lake.

Returns:

la dirección URL.

getOutputStream

public OutputStream getOutputStream()

Crea y abre un flujo de salida para escribir datos en el archivo. Si el archivo ya existe en el servicio, se sobrescribirá.

Returns:

OutputStream que se puede usar para escribir en el archivo.

getOutputStream

public OutputStream getOutputStream(DataLakeFileOutputStreamOptions options)

Crea y abre un flujo de salida para escribir datos en el archivo. Si el archivo ya existe en el servicio, se sobrescribirá.

Para evitar sobrescribir, pase "*" a setIfNoneMatch(String ifNoneMatch).

Parameters:

Returns:

OutputStream que se puede usar para escribir en el archivo.

getOutputStream

public OutputStream getOutputStream(DataLakeFileOutputStreamOptions options, Context context)

Crea y abre un flujo de salida para escribir datos en el archivo. Si el archivo ya existe en el servicio, se sobrescribirá.

Para evitar sobrescribir, pase "*" a setIfNoneMatch(String ifNoneMatch).

Parameters:

context - Contexto adicional que se pasa a través de la canalización Http durante la llamada al servicio.

Returns:

OutputStream que se puede usar para escribir en el archivo.

openInputStream

public DataLakeFileOpenInputStreamResult openInputStream()

Abre un flujo de entrada de archivo para descargar el archivo. Bloqueos en ETags.

DataLakeFileOpenInputStreamResult inputStream = client.openInputStream();

Returns:

Objeto InputStream que representa la secuencia que se va a usar para leer el archivo.

openInputStream

public DataLakeFileOpenInputStreamResult openInputStream(DataLakeFileInputStreamOptions options)

Abre un flujo de entrada de archivo para descargar el intervalo especificado del archivo. El valor predeterminado es bloquear ETag si no se especifica la opción .

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

Parameters:

Returns:

Objeto DataLakeFileOpenInputStreamResult que contiene la secuencia que se va a usar para leer el archivo.

openInputStream

public DataLakeFileOpenInputStreamResult openInputStream(DataLakeFileInputStreamOptions options, Context context)

Abre un flujo de entrada de archivo para descargar el intervalo especificado del archivo. El valor predeterminado es bloquear ETag si no se especifica la opción .

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

Parameters:

context - Contexto adicional que se pasa a través de la canalización Http durante la llamada al servicio.

Returns:

Objeto DataLakeFileOpenInputStreamResult que contiene la secuencia que se va a usar para leer el archivo.

openQueryInputStream

public InputStream openQueryInputStream(String expression)

Abre un flujo de entrada para consultar el archivo.

Para más información, consulte Azure Docs.

Ejemplos de código

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

Parameters:

expression - La expresión de consulta.

Returns:

Objeto InputStream que representa la secuencia que se va a usar para leer la respuesta de la consulta.

openQueryInputStreamWithResponse

public Response openQueryInputStreamWithResponse(FileQueryOptions queryOptions)

Abre un flujo de entrada para consultar el archivo.

Para más información, consulte Azure Docs.

Ejemplos de código

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:

Una respuesta que contiene el código de estado y los encabezados HTTP, incluido un InputStream objeto que representa la secuencia que se va a usar para leer la respuesta de la consulta.

query

public void query(OutputStream stream, String expression)

Consulta un archivo completo en un flujo de salida.

Para más información, consulte Azure Docs.

Ejemplos de código

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

Parameters:

stream - Instancia que no es null OutputStream donde se escribirán los datos descargados.
expression - La expresión de consulta.

queryWithResponse

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

Consulta un archivo completo en un flujo de salida.

Para más información, consulte Azure Docs.

Ejemplos de código

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 - Valor de tiempo de espera opcional más allá del cual se generará un RuntimeException .
context - Contexto adicional que se pasa a través de la canalización Http durante la llamada al servicio.

Returns:

Respuesta que contiene el código de estado y los encabezados HTTP.

read

public void read(OutputStream stream)

Lee todo el archivo en un flujo de salida.

Ejemplos de código

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

Para más información, consulte Azure Docs.

Parameters:

stream - Instancia que no es null OutputStream donde se escribirán los datos descargados.

readToFile

public PathProperties readToFile(String filePath)

Lee todo el archivo en un archivo especificado por la ruta de acceso.

El archivo se creará y no debe existir, si el archivo ya existe, se producirá una FileAlreadyExistsException excepción .

Ejemplos de código

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

Para más información, consulte Azure Docs.

Parameters:

filePath - que String representa filePath donde se escribirán los datos descargados.

Returns:

Propiedades y metadatos del archivo.

readToFile

public PathProperties readToFile(String filePath, boolean overwrite)

Lee todo el archivo en un archivo especificado por la ruta de acceso.

Si la sobrescritura se establece en false, se creará el archivo y no debe existir, si el archivo ya existe, se producirá una FileAlreadyExistsException excepción .

Ejemplos de código

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

Para más información, consulte Azure Docs.

Parameters:

filePath - que String representa el filePath donde se escribirán los datos descargados.
overwrite - Si se va a sobrescribir el archivo, debe existir el archivo.

Returns:

Propiedades y metadatos del archivo.

readToFileWithResponse

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

Lee todo el archivo en un archivo especificado por la ruta de acceso.

De forma predeterminada, el archivo se creará y no debe existir, si el archivo ya existe, se producirá un FileAlreadyExistsException . Para invalidar este comportamiento, proporcione lo adecuado. OpenOptions

Ejemplos de código

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");

Para más información, consulte Azure Docs.

Parameters:

filePath - que String representa el filePath donde se escribirán los datos descargados.
range - FileRange
parallelTransferOptions - ParallelTransferOptions para usar para descargar en el archivo. Se omite el número de parámetros de transferencias paralelas.
downloadRetryOptions - DownloadRetryOptions
requestConditions - DataLakeRequestConditions
rangeGetContentMd5 - Si se debe devolver el contentMD5 para el intervalo de archivos especificado.
openOptions - OpenOptions para usar para configurar cómo abrir o crear el archivo.
timeout - Valor de tiempo de espera opcional más allá del cual se generará un RuntimeException .
context - Contexto adicional que se pasa a través de la canalización Http durante la llamada al servicio.

Returns:

Respuesta que contiene las propiedades y los metadatos del archivo.

readWithResponse

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

Lee un intervalo de bytes de un archivo en un flujo de salida.

Ejemplos de código

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());

Para más información, consulte Azure Docs.

Parameters:

stream - Una instancia que no sea NULL OutputStream donde se escribirán los datos descargados.
range - FileRange
requestConditions - DataLakeRequestConditions
getRangeContentMd5 - Si se debe devolver el contentMD5 para el intervalo de archivos especificado.
timeout - Valor de tiempo de espera opcional más allá del cual se generará un RuntimeException .
context - Contexto adicional que se pasa a través de la canalización Http durante la llamada al servicio.

Returns:

Respuesta que contiene el código de estado y los encabezados HTTP.

rename

public DataLakeFileClient rename(String destinationFileSystem, String destinationPath)

Mueve el archivo a otra ubicación dentro del sistema de archivos. Para más información, consulte Azure Docs.

Ejemplos de código

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

Parameters:

destinationFileSystem - Sistema de archivos del destino dentro de la cuenta. null para el sistema de archivos actual.
destinationPath - La ruta de acceso relativa del sistema de archivos a la que se va a cambiar el nombre del archivo excluye el nombre del sistema de archivos. Por ejemplo, si desea mover un archivo con fileSystem = "myfilesystem", path = "mydir/hello.txt" a otra ruta de acceso en myfilesystem (por ejemplo: newdir/hi.txt), establezca destinationPath = "newdir/hi.txt"

Returns:

que DataLakeFileClient se usa para interactuar con el nuevo archivo creado.

renameWithResponse

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

Mueve el archivo a otra ubicación dentro del sistema de archivos. Para más información, consulte Azure Docs.

Ejemplos de código

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 - Sistema de archivos del destino dentro de la cuenta. null para el sistema de archivos actual.
destinationPath - La ruta de acceso relativa del sistema de archivos a la que se va a cambiar el nombre del archivo excluye el nombre del sistema de archivos. Por ejemplo, si desea mover un archivo con fileSystem = "myfilesystem", path = "mydir/hello.txt" a otra ruta de acceso en myfilesystem (por ejemplo: newdir/hi.txt), establezca destinationPath = "newdir/hi.txt"
sourceRequestConditions - DataLakeRequestConditions en el origen.
destinationRequestConditions - DataLakeRequestConditions en el destino.
timeout - Valor de tiempo de espera opcional más allá del cual se generará un RuntimeException .
context - Contexto adicional que se pasa a través de la canalización Http durante la llamada al servicio.

Returns:

que Response<T>value contiene un DataLakeFileClient objeto utilizado para interactuar con el archivo creado.

scheduleDeletion

public void scheduleDeletion(FileScheduleDeletionOptions options)

Programa el archivo para su eliminación.

Ejemplos de código

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

Parameters:

options - Programar parámetros de eliminación.

scheduleDeletionWithResponse

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

Programa el archivo para su eliminación.

Ejemplos de código

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 - Programar parámetros de eliminación.
timeout - Valor de tiempo de espera opcional más allá del cual se generará un RuntimeException .
context - Contexto adicional que se pasa a través de la canalización Http durante la llamada al servicio.

Returns:

Respuesta que contiene el código de estado y los encabezados HTTP.

upload

public PathInfo upload(BinaryData data)

Crea un nuevo archivo. De forma predeterminada, este método no sobrescribirá un archivo existente.

Ejemplos de código

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 - Datos que se van a escribir en el blob. Los datos deben ser marcados. Esto es para admitir reintentos. Si los datos no se pueden marcar, considere la posibilidad de encapsular el origen de datos en bufferedInputStream para agregar compatibilidad con marcas.

Returns:

Información sobre la ruta de acceso cargada.

upload

public PathInfo upload(BinaryData data, boolean overwrite)

Crea un nuevo archivo o actualiza el contenido de un archivo existente.

Ejemplos de código

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 - Datos que se van a escribir en el blob. Los datos deben ser marcados. Esto es para admitir reintentos. Si los datos no se pueden marcar, considere la posibilidad de encapsular el origen de datos en bufferedInputStream para agregar compatibilidad con marcas.
overwrite - Si se va a sobrescribir, deben existir datos en el archivo.

Returns:

Información sobre la ruta de acceso cargada.

upload

public PathInfo upload(InputStream data, long length)

Crea un nuevo archivo. De forma predeterminada, este método no sobrescribirá un archivo existente.

Ejemplos de código

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 - Datos que se van a escribir en el blob. Los datos deben ser marcados. Esto es para admitir reintentos. Si los datos no se pueden marcar, considere la posibilidad de encapsular el origen de datos en bufferedInputStream para agregar compatibilidad con marcas.
length - Longitud exacta de los datos. Es importante que este valor coincida exactamente con la longitud de los datos proporcionados en .InputStream

Returns:

Información sobre la ruta de acceso cargada.

upload

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

Crea un nuevo archivo o actualiza el contenido de un archivo existente.

Ejemplos de código

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 - Datos que se van a escribir en el blob. Los datos deben ser marcados. Esto es para admitir reintentos. Si los datos no se pueden marcar, considere la posibilidad de encapsular el origen de datos en bufferedInputStream para agregar compatibilidad con marcas.
length - Longitud exacta de los datos. Es importante que este valor coincida exactamente con la longitud de los datos proporcionados en .InputStream
overwrite - Si se va a sobrescribir, deben existir datos en el archivo.

Returns:

Información sobre la ruta de acceso cargada.

uploadFromFile

public void uploadFromFile(String filePath)

Crea un archivo, con el contenido del archivo especificado. De forma predeterminada, este método no sobrescribirá un archivo existente.

Ejemplos de código

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 - Ruta de acceso del archivo que se va a cargar

uploadFromFile

public void uploadFromFile(String filePath, boolean overwrite)

Crea un archivo, con el contenido del archivo especificado.

Ejemplos de código

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 - Ruta de acceso del archivo que se va a cargar
overwrite - Si se va a sobrescribir, si el archivo ya existe

uploadFromFile

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

Crea un archivo, con el contenido del archivo especificado.

Para evitar sobrescribir, pase "*" a setIfNoneMatch(String ifNoneMatch).

Ejemplos de código

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 - Ruta de acceso del archivo que se va a cargar
parallelTransferOptions - ParallelTransferOptions se usa para configurar la carga almacenada en búfer.
headers - PathHttpHeaders
metadata - Metadatos que se van a asociar al recurso. Si hay espacios en blanco iniciales o finales en cualquier clave o valor de metadatos, se debe quitar o codificar.
requestConditions - DataLakeRequestConditions
timeout - Valor de tiempo de espera opcional más allá del cual se generará un RuntimeException .

uploadFromFileWithResponse

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

Crea un archivo, con el contenido del archivo especificado.

Para evitar sobrescribir, pase "*" a setIfNoneMatch(String ifNoneMatch).

Ejemplos de código

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 - Ruta de acceso del archivo que se va a cargar
parallelTransferOptions - ParallelTransferOptions se usa para configurar la carga almacenada en búfer.
headers - PathHttpHeaders
metadata - Metadatos que se van a asociar al recurso. Si hay espacios en blanco iniciales o finales en cualquier clave o valor de metadatos, se debe quitar o codificar.
requestConditions - DataLakeRequestConditions
timeout - Valor de tiempo de espera opcional más allá del cual se generará un RuntimeException .
context - Contexto adicional que se pasa a través de la canalización Http durante la llamada al servicio.

Returns:

Respuesta que contiene información sobre la ruta de acceso cargada.

uploadWithResponse

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

Crea un nuevo archivo. Para evitar sobrescribir, pase "*" a setIfNoneMatch(String ifNoneMatch).

Ejemplos de código

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 - Valor de tiempo de espera opcional más allá del cual se generará un RuntimeException .
context - Contexto adicional que se pasa a través de la canalización Http durante la llamada al servicio.

Returns:

Información sobre la ruta de acceso cargada.

Se aplica a