Compartir a través de


DataLakeServiceClient class

DataLakeServiceClient permite manipular los recursos del servicio Azure Data Lake y los sistemas de archivos. La cuenta de almacenamiento proporciona el espacio de nombres de nivel superior para el servicio Data Lake.

Extends

StorageClient

Constructores

DataLakeServiceClient(string, Pipeline)

Crea una instancia de DataLakeServiceClient a partir de la dirección URL y la canalización.

DataLakeServiceClient(string, StorageSharedKeyCredential | AnonymousCredential | TokenCredential, StoragePipelineOptions)

Crea una instancia de DataLakeServiceClient a partir de la dirección URL.

Propiedades heredadas

accountName
credential

Por ejemplo, AnonymousCredential, StorageSharedKeyCredential o cualquier credencial del @azure/identity paquete para autenticar las solicitudes en el servicio. También puede proporcionar un objeto que implemente la interfaz TokenCredential. Si no se especifica, se usa AnonymousCredential.

url

Valor de cadena de dirección URL codificada.

Métodos

fromConnectionString(string, StoragePipelineOptions)

Crea una instancia de DataLakeServiceClient a partir de la cadena de conexión.

generateAccountSasUrl(Date, AccountSASPermissions, string, ServiceGenerateAccountSasUrlOptions)

Solo está disponible para DataLakeServiceClient construido con una credencial de clave compartida.

Genera un URI de firma de acceso compartido (SAS) de cuenta basado en las propiedades y parámetros del cliente pasados. La SAS está firmada por la credencial de clave compartida del cliente.

Consulta https://docs.microsoft.com/en-us/rest/api/storageservices/create-account-sas.

getFileSystemClient(string)

Crea un objeto DataLakeFileSystemClient .

getProperties(ServiceGetPropertiesOptions)

Obtiene las propiedades del punto de conexión de Blob Service de una cuenta de almacenamiento, incluidas las propiedades de Storage Analytics y las reglas cors (uso compartido de recursos entre orígenes).

Consulta https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-service-properties.

getUserDelegationKey(Date, Date, ServiceGetUserDelegationKeyOptions)

SOLO ESTÁ DISPONIBLE CUANDO SE USA LA AUTENTICACIÓN DE TOKEN DE PORTADOR (TokenCredential).

Recupera una clave de delegación de usuarios para el servicio Data Lake. Solo se trata de una operación válida cuando se usa la autenticación de token de portador.

Ejemplo

// Generate user delegation SAS for a file system
const userDelegationKey = await dataLakeServiceClient.getUserDelegationKey(startsOn, expiresOn);
const fileSystemSAS = generateDataLakeSASQueryParameters({
    fileSystemName, // Required
    permissions: FileSystemSASPermissions.parse("racwdl"), // Required
    startsOn, // Required. Date type
    expiresOn, // Optional. Date type
    ipRange: { start: "0.0.0.0", end: "255.255.255.255" }, // Optional
    protocol: SASProtocol.HttpsAndHttp, // Optional
    version: "2018-11-09" // Must greater than or equal to 2018-11-09 to generate user delegation SAS
  },
  userDelegationKey, // UserDelegationKey
  accountName
).toString();

Consulta https://docs.microsoft.com/en-us/rest/api/storageservices/get-user-delegation-key.

listFileSystems(ServiceListFileSystemsOptions)

Devuelve un iterador asincrónico para enumerar todos los sistemas de archivos de la cuenta especificada.

.byPage() devuelve un iterador asincrónico para enumerar los sistemas de archivos de las páginas.

Ejemplo de uso de for await la sintaxis:

let i = 1;
for await (const fileSystem of serviceClient.listFileSystems()) {
  console.log(`FileSystem ${i++}: ${fileSystem.name}`);
}

Ejemplo con iter.next():

let i = 1;
const iter = serviceClient.listFileSystems();
let fileSystemItem = await iter.next();
while (!fileSystemItem.done) {
  console.log(`FileSystem ${i++}: ${fileSystemItem.value.name}`);
  fileSystemItem = await iter.next();
}

Ejemplo con byPage():

// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of serviceClient.listFileSystems().byPage({ maxPageSize: 20 })) {
  if (response.fileSystemItems) {
    for (const fileSystem of response.fileSystemItems) {
      console.log(`FileSystem ${i++}: ${fileSystem.name}`);
    }
  }
}

Ejemplo de uso de paginación con un marcador:

let i = 1;
let iterator = serviceClient.listFileSystems().byPage({ maxPageSize: 2 });
let response = (await iterator.next()).value;

// Prints 2 file system names
if (response.fileSystemItems) {
  for (const fileSystem of response.fileSystemItems) {
    console.log(`FileSystem ${i++}: ${fileSystem.name}`);
  }
}

// Gets next marker
let marker = response.continuationToken;
// Passing next marker as continuationToken
iterator = serviceClient
  .listContainers()
  .byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;

// Prints 10 file system names
if (response.fileSystemItems) {
  for (const fileSystem of response.fileSystemItems) {
     console.log(`FileSystem ${i++}: ${fileSystem.name}`);
  }
}

Consulta https://docs.microsoft.com/en-us/rest/api/storageservices/list-containers2.

setProperties(BlobServiceProperties, ServiceSetPropertiesOptions)

Establece las propiedades para el punto de conexión de Blob Service de una cuenta de almacenamiento, incluidas las propiedades para Storage Analytics, las reglas cors (uso compartido de recursos entre orígenes) y la configuración de eliminación temporal.

Consulta https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-service-properties.

undeleteFileSystem(string, string, ServiceUndeleteFileSystemOptions)

Restaure un sistema de archivos eliminado anteriormente. Esta API solo es funcional si la eliminación temporal del contenedor está habilitada para la cuenta de almacenamiento.

Detalles del constructor

DataLakeServiceClient(string, Pipeline)

Crea una instancia de DataLakeServiceClient a partir de la dirección URL y la canalización.

new DataLakeServiceClient(url: string, pipeline: Pipeline)

Parámetros

url

string

Cadena de cliente que apunta al servicio De lago de datos de Azure Storage, como "https://myaccount.dfs.core.windows.net". Puede anexar una SAS si usa AnonymousCredential, como "https://myaccount.dfs.core.windows.net?sasString".

pipeline
Pipeline

Llame a newPipeline() para crear una canalización predeterminada o proporcione una canalización personalizada.

DataLakeServiceClient(string, StorageSharedKeyCredential | AnonymousCredential | TokenCredential, StoragePipelineOptions)

Crea una instancia de DataLakeServiceClient a partir de la dirección URL.

new DataLakeServiceClient(url: string, credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential, options?: StoragePipelineOptions)

Parámetros

url

string

Cadena de cliente que apunta al servicio De lago de datos de Azure Storage, como "https://myaccount.dfs.core.windows.net". Puede anexar una SAS si usa AnonymousCredential, como "https://myaccount.dfs.core.windows.net?sasString".

credential

StorageSharedKeyCredential | AnonymousCredential | TokenCredential

Por ejemplo, AnonymousCredential, StorageSharedKeyCredential o cualquier credencial del @azure/identity paquete para autenticar las solicitudes en el servicio. También puede proporcionar un objeto que implemente la interfaz TokenCredential. Si no se especifica, se usa AnonymousCredential.

options
StoragePipelineOptions

Opcional. Opciones para configurar la canalización HTTP.

Detalles de las propiedades heredadas

accountName

accountName: string

Valor de propiedad

string

Heredado de StorageClient.accountName

credential

Por ejemplo, AnonymousCredential, StorageSharedKeyCredential o cualquier credencial del @azure/identity paquete para autenticar las solicitudes en el servicio. También puede proporcionar un objeto que implemente la interfaz TokenCredential. Si no se especifica, se usa AnonymousCredential.

credential: StorageSharedKeyCredential | AnonymousCredential | TokenCredential

Valor de propiedad

Heredado de StorageClient.credential

url

Valor de cadena de dirección URL codificada.

url: string

Valor de propiedad

string

Heredado de StorageClient.url

Detalles del método

fromConnectionString(string, StoragePipelineOptions)

Crea una instancia de DataLakeServiceClient a partir de la cadena de conexión.

static function fromConnectionString(connectionString: string, options?: StoragePipelineOptions): DataLakeServiceClient

Parámetros

connectionString

string

Cadena de conexión de la cuenta o una cadena de conexión de SAS de una cuenta de almacenamiento de Azure. [ Nota: la cadena de conexión de la cuenta solo se puede usar en NODE.JS tiempo de ejecución. ] Ejemplo de cadena de conexión de cuenta:DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net Ejemplo de cadena de conexión de SAS: BlobEndpoint=https://myaccount.blob.core.windows.net/;QueueEndpoint=https://myaccount.queue.core.windows.net/;FileEndpoint=https://myaccount.file.core.windows.net/;TableEndpoint=https://myaccount.table.core.windows.net/;SharedAccessSignature=sasString

options
StoragePipelineOptions

Opcional. Opciones para configurar la canalización HTTP.

Devoluciones

generateAccountSasUrl(Date, AccountSASPermissions, string, ServiceGenerateAccountSasUrlOptions)

Solo está disponible para DataLakeServiceClient construido con una credencial de clave compartida.

Genera un URI de firma de acceso compartido (SAS) de cuenta basado en las propiedades y parámetros del cliente pasados. La SAS está firmada por la credencial de clave compartida del cliente.

Consulta https://docs.microsoft.com/en-us/rest/api/storageservices/create-account-sas.

function generateAccountSasUrl(expiresOn?: Date, permissions?: AccountSASPermissions, resourceTypes?: string, options?: ServiceGenerateAccountSasUrlOptions): string

Parámetros

expiresOn

Date

Opcional. Hora en la que la firma de acceso compartido deja de ser válida. El valor predeterminado es una hora más tarde si no se especifica.

permissions
AccountSASPermissions

Especifica la lista de permisos que se van a asociar a la SAS.

resourceTypes

string

Especifica los tipos de recursos asociados a la firma de acceso compartido.

options
ServiceGenerateAccountSasUrlOptions

Parámetros opcionales.

Devoluciones

string

Un URI de SAS de cuenta que consta del URI al recurso representado por este cliente, seguido del token de SAS generado.

getFileSystemClient(string)

Crea un objeto DataLakeFileSystemClient .

function getFileSystemClient(fileSystemName: string): DataLakeFileSystemClient

Parámetros

fileSystemName

string

Nombre del sistema de archivos.

Devoluciones

getProperties(ServiceGetPropertiesOptions)

Obtiene las propiedades del punto de conexión de Blob Service de una cuenta de almacenamiento, incluidas las propiedades de Storage Analytics y las reglas cors (uso compartido de recursos entre orígenes).

Consulta https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-service-properties.

function getProperties(options?: ServiceGetPropertiesOptions): Promise<ServiceGetPropertiesResponse>

Parámetros

options
ServiceGetPropertiesOptions

Opciones para la operación Obtener propiedades del servicio.

Devoluciones

Datos de respuesta para la operación Obtener propiedades del servicio.

getUserDelegationKey(Date, Date, ServiceGetUserDelegationKeyOptions)

SOLO ESTÁ DISPONIBLE CUANDO SE USA LA AUTENTICACIÓN DE TOKEN DE PORTADOR (TokenCredential).

Recupera una clave de delegación de usuarios para el servicio Data Lake. Solo se trata de una operación válida cuando se usa la autenticación de token de portador.

Ejemplo

// Generate user delegation SAS for a file system
const userDelegationKey = await dataLakeServiceClient.getUserDelegationKey(startsOn, expiresOn);
const fileSystemSAS = generateDataLakeSASQueryParameters({
    fileSystemName, // Required
    permissions: FileSystemSASPermissions.parse("racwdl"), // Required
    startsOn, // Required. Date type
    expiresOn, // Optional. Date type
    ipRange: { start: "0.0.0.0", end: "255.255.255.255" }, // Optional
    protocol: SASProtocol.HttpsAndHttp, // Optional
    version: "2018-11-09" // Must greater than or equal to 2018-11-09 to generate user delegation SAS
  },
  userDelegationKey, // UserDelegationKey
  accountName
).toString();

Consulta https://docs.microsoft.com/en-us/rest/api/storageservices/get-user-delegation-key.

function getUserDelegationKey(startsOn: Date, expiresOn: Date, options?: ServiceGetUserDelegationKeyOptions): Promise<ServiceGetUserDelegationKeyResponse>

Parámetros

startsOn

Date

Hora de inicio de la SAS de delegación de usuarios. Debe estar en un plazo de 7 días a partir de la hora actual.

expiresOn

Date

Hora de finalización de la SAS de delegación de usuarios. Debe estar en un plazo de 7 días a partir de la hora actual.

Devoluciones

listFileSystems(ServiceListFileSystemsOptions)

Devuelve un iterador asincrónico para enumerar todos los sistemas de archivos de la cuenta especificada.

.byPage() devuelve un iterador asincrónico para enumerar los sistemas de archivos de las páginas.

Ejemplo de uso de for await la sintaxis:

let i = 1;
for await (const fileSystem of serviceClient.listFileSystems()) {
  console.log(`FileSystem ${i++}: ${fileSystem.name}`);
}

Ejemplo con iter.next():

let i = 1;
const iter = serviceClient.listFileSystems();
let fileSystemItem = await iter.next();
while (!fileSystemItem.done) {
  console.log(`FileSystem ${i++}: ${fileSystemItem.value.name}`);
  fileSystemItem = await iter.next();
}

Ejemplo con byPage():

// passing optional maxPageSize in the page settings
let i = 1;
for await (const response of serviceClient.listFileSystems().byPage({ maxPageSize: 20 })) {
  if (response.fileSystemItems) {
    for (const fileSystem of response.fileSystemItems) {
      console.log(`FileSystem ${i++}: ${fileSystem.name}`);
    }
  }
}

Ejemplo de uso de paginación con un marcador:

let i = 1;
let iterator = serviceClient.listFileSystems().byPage({ maxPageSize: 2 });
let response = (await iterator.next()).value;

// Prints 2 file system names
if (response.fileSystemItems) {
  for (const fileSystem of response.fileSystemItems) {
    console.log(`FileSystem ${i++}: ${fileSystem.name}`);
  }
}

// Gets next marker
let marker = response.continuationToken;
// Passing next marker as continuationToken
iterator = serviceClient
  .listContainers()
  .byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await iterator.next()).value;

// Prints 10 file system names
if (response.fileSystemItems) {
  for (const fileSystem of response.fileSystemItems) {
     console.log(`FileSystem ${i++}: ${fileSystem.name}`);
  }
}

Consulta https://docs.microsoft.com/en-us/rest/api/storageservices/list-containers2.

function listFileSystems(options?: ServiceListFileSystemsOptions): PagedAsyncIterableIterator<FileSystemItem, ServiceListFileSystemsSegmentResponse, PageSettings>

Parámetros

Devoluciones

setProperties(BlobServiceProperties, ServiceSetPropertiesOptions)

Establece las propiedades para el punto de conexión de Blob Service de una cuenta de almacenamiento, incluidas las propiedades para Storage Analytics, las reglas cors (uso compartido de recursos entre orígenes) y la configuración de eliminación temporal.

Consulta https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-service-properties.

function setProperties(properties: BlobServiceProperties, options?: ServiceSetPropertiesOptions): Promise<ServiceSetPropertiesResponse>

Parámetros

options
ServiceSetPropertiesOptions

Opciones de la operación Propiedades del conjunto de servicios.

Devoluciones

Datos de respuesta para la operación Propiedades del conjunto de servicios.

undeleteFileSystem(string, string, ServiceUndeleteFileSystemOptions)

Restaure un sistema de archivos eliminado anteriormente. Esta API solo es funcional si la eliminación temporal del contenedor está habilitada para la cuenta de almacenamiento.

function undeleteFileSystem(deletedFileSystemName: string, deleteFileSystemVersion: string, options?: ServiceUndeleteFileSystemOptions): Promise<{ fileSystemClient: DataLakeFileSystemClient, fileSystemUndeleteResponse: ContainerUndeleteResponse }>

Parámetros

deletedFileSystemName

string

Nombre del sistema de archivos de origen.

deleteFileSystemVersion

string

Nuevo nombre del sistema de archivos.

options
ServiceUndeleteFileSystemOptions

Opciones para configurar la operación de restauración del sistema de archivos.

Devoluciones

Promise<{ fileSystemClient: DataLakeFileSystemClient, fileSystemUndeleteResponse: ContainerUndeleteResponse }>