Partager via


DataLakeServiceClient class

DataLakeServiceClient vous permet de manipuler des ressources de service Azure Data Lake et des systèmes de fichiers. Le compte de stockage fournit l’espace de noms de niveau supérieur pour le service Data Lake.

Extends

StorageClient

Constructeurs

DataLakeServiceClient(string, Pipeline)

Crée une instance de DataLakeServiceClient à partir de l’URL et du pipeline.

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

Crée une instance de DataLakeServiceClient à partir de l’URL.

Propriétés héritées

accountName
credential

Tels que AnonymousCredential, StorageSharedKeyCredential ou toutes les informations d’identification du package @azure/identity pour authentifier les demandes auprès du service. Vous pouvez également fournir un objet qui implémente l’interface TokenCredential. Si ce n’est pas spécifié, AnonymousCredential est utilisé.

url

Valeur de chaîne d’URL encodée.

Méthodes

fromConnectionString(string, StoragePipelineOptions)

Crée une instance de DataLakeServiceClient à partir de la chaîne de connexion.

generateAccountSasUrl(Date, AccountSASPermissions, string, ServiceGenerateAccountSasUrlOptions)

Disponible uniquement pour DataLakeServiceClient construit avec des informations d’identification de clé partagée.

Génère un URI de signature d’accès partagé (SAP) de compte basé sur les propriétés et paramètres du client transmis. La SAP est signée par les informations d’identification de clé partagée du client.

Voir https://learn.microsoft.com/rest/api/storageservices/create-account-sas

generateSasStringToSign(Date, AccountSASPermissions, string, ServiceGenerateAccountSasUrlOptions)

Disponible uniquement pour DataLakeServiceClient construit avec des informations d’identification de clé partagée.

Génère une chaîne pour signer une signature d’accès partagé (SAP) de compte en fonction des propriétés et paramètres du client transmis. La SAP est signée par les informations d’identification de clé partagée du client.

Voir https://learn.microsoft.com/rest/api/storageservices/create-account-sas

getFileSystemClient(string)

Crée un objet DataLakeFileSystemClient.

getProperties(ServiceGetPropertiesOptions)

Obtient les propriétés du point de terminaison du service Blob d’un compte de stockage, y compris les propriétés des règles d’analyse de stockage et CORS (partage de ressources cross-origin).

Voir https://learn.microsoft.com/rest/api/storageservices/get-blob-service-properties

getUserDelegationKey(Date, Date, ServiceGetUserDelegationKeyOptions)

DISPONIBLE UNIQUEMENT LORS DE L’UTILISATION DE L’AUTHENTIFICATION PAR JETON DU PORTEUR (TokenCredential).

Récupère une clé de délégation d’utilisateur pour le service Data Lake. Il s’agit uniquement d’une opération valide lors de l’utilisation de l’authentification par jeton du porteur.

Example

import {
  DataLakeServiceClient,
  generateDataLakeSASQueryParameters,
  FileSystemSASPermissions,
  SASProtocol,
} from "@azure/storage-file-datalake";

const account = "<account>";
const sas = "<sas token>";
const datalakeServiceClient = new DataLakeServiceClient(
  `https://${account}.dfs.core.windows.net${sas}`,
);

const fileSystemName = "<file system name>";
const accountName = "<account name>";
const startsOn = new Date();
const expiresOn = new Date(+new Date() + 86400 * 1000);
// 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();

Voir https://learn.microsoft.com/rest/api/storageservices/get-user-delegation-key

listFileSystems(ServiceListFileSystemsOptions)

Retourne un itérateur itérable asynchrone pour répertorier tous les systèmes de fichiers sous le compte spécifié.

.byPage() retourne un itérateur itérable asynchrone pour répertorier les systèmes de fichiers dans les pages.

Exemple utilisant for await syntaxe :

import { DataLakeServiceClient } from "@azure/storage-file-datalake";
import { DefaultAzureCredential } from "@azure/identity";

const account = "<account>";
const datalakeServiceClient = new DataLakeServiceClient(
  `https://${account}.dfs.core.windows.net`,
  new DefaultAzureCredential(),
);

let i = 1;
const fileSystems = datalakeServiceClient.listFileSystems();
for await (const fileSystem of fileSystems) {
  console.log(`File system ${i++}: ${fileSystem.name}`);
}

Exemple utilisant iter.next():

import { DataLakeServiceClient } from "@azure/storage-file-datalake";
import { DefaultAzureCredential } from "@azure/identity";

const account = "<account>";
const datalakeServiceClient = new DataLakeServiceClient(
  `https://${account}.dfs.core.windows.net`,
  new DefaultAzureCredential(),
);

let i = 1;
const fileSystems = datalakeServiceClient.listFileSystems();
let { value, done } = await fileSystems.next();
while (!done) {
  console.log(`File system ${i++}: ${value.name}`);
  ({ value, done } = await fileSystems.next());
}

Exemple utilisant byPage():

import { DataLakeServiceClient } from "@azure/storage-file-datalake";
import { DefaultAzureCredential } from "@azure/identity";

const account = "<account>";
const datalakeServiceClient = new DataLakeServiceClient(
  `https://${account}.dfs.core.windows.net`,
  new DefaultAzureCredential(),
);

let i = 1;
for await (const response of datalakeServiceClient.listFileSystems().byPage({ maxPageSize: 20 })) {
  if (response.fileSystemItems) {
    for (const fileSystem of response.fileSystemItems) {
      console.log(`File System ${i++}: ${fileSystem.name}`);
    }
  }
}

Exemple d’utilisation de la pagination avec un marqueur :

import { DataLakeServiceClient } from "@azure/storage-file-datalake";
import { DefaultAzureCredential } from "@azure/identity";

const account = "<account>";
const datalakeServiceClient = new DataLakeServiceClient(
  `https://${account}.dfs.core.windows.net`,
  new DefaultAzureCredential(),
);

let i = 1;
let fileSystems = datalakeServiceClient.listFileSystems().byPage({ maxPageSize: 2 });
let response = (await fileSystems.next()).value;
// Prints 2 file systems
if (response.fileSystemItems) {
  for (const fileSystem of response.fileSystemItems) {
    console.log(`File system ${i++}: ${fileSystem.name}`);
  }
}
// Gets next marker
let marker = response.continuationToken;
// Passing next marker as continuationToken
fileSystems = datalakeServiceClient
  .listFileSystems()
  .byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await fileSystems.next()).value;
// Prints 10 file systems
if (response.fileSystemItems) {
  for (const fileSystem of response.fileSystemItems) {
    console.log(`File system ${i++}: ${fileSystem.name}`);
  }
}

Voir https://learn.microsoft.com/rest/api/storageservices/list-containers2

setProperties(BlobServiceProperties, ServiceSetPropertiesOptions)

Définit les propriétés du point de terminaison du service Blob d’un compte de stockage, y compris les propriétés des règles Storage Analytics, CORS (partage de ressources cross-origin) et les paramètres de suppression réversible.

Voir https://learn.microsoft.com/rest/api/storageservices/set-blob-service-properties

undeleteFileSystem(string, string, ServiceUndeleteFileSystemOptions)

Restaurez un système de fichiers précédemment supprimé. Cette API est fonctionnelle uniquement si la suppression réversible de conteneur est activée pour le compte de stockage.

Détails du constructeur

DataLakeServiceClient(string, Pipeline)

Crée une instance de DataLakeServiceClient à partir de l’URL et du pipeline.

new DataLakeServiceClient(url: string, pipeline: Pipeline)

Paramètres

url

string

Chaîne cliente pointant vers le service Data Lake Stockage Azure, par exemple «https://myaccount.dfs.core.windows.net". Vous pouvez ajouter une SAP si vous utilisez AnonymousCredential, par exemple «https://myaccount.dfs.core.windows.net?sasString".

pipeline
Pipeline

Appelez newPipeline() pour créer un pipeline par défaut ou fournissez un pipeline personnalisé.

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

Crée une instance de DataLakeServiceClient à partir de l’URL.

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

Paramètres

url

string

Chaîne cliente pointant vers le service Data Lake Stockage Azure, par exemple «https://myaccount.dfs.core.windows.net". Vous pouvez ajouter une SAP si vous utilisez AnonymousCredential, par exemple «https://myaccount.dfs.core.windows.net?sasString".

credential

StorageSharedKeyCredential | AnonymousCredential | TokenCredential

Tels que AnonymousCredential, StorageSharedKeyCredential ou toutes les informations d’identification du package @azure/identity pour authentifier les demandes auprès du service. Vous pouvez également fournir un objet qui implémente l’interface TokenCredential. Si ce n’est pas spécifié, AnonymousCredential est utilisé.

options
StoragePipelineOptions

Optional. Options de configuration du pipeline HTTP.

Détails de la propriété héritée

accountName

accountName: string

Valeur de propriété

string

héritée de StorageClient.accountName

credential

Tels que AnonymousCredential, StorageSharedKeyCredential ou toutes les informations d’identification du package @azure/identity pour authentifier les demandes auprès du service. Vous pouvez également fournir un objet qui implémente l’interface TokenCredential. Si ce n’est pas spécifié, AnonymousCredential est utilisé.

credential: StorageSharedKeyCredential | AnonymousCredential | TokenCredential

Valeur de propriété

héritée de StorageClient.credential

url

Valeur de chaîne d’URL encodée.

url: string

Valeur de propriété

string

héritée de StorageClient.url

Détails de la méthode

fromConnectionString(string, StoragePipelineOptions)

Crée une instance de DataLakeServiceClient à partir de la chaîne de connexion.

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

Paramètres

connectionString

string

Chaîne de connexion de compte ou chaîne de connexion SAP d’un compte de stockage Azure. [ Remarque : la chaîne de connexion de compte ne peut être utilisée que dans NODE.JS runtime. ] Exemple de chaîne de connexion de compte - exemple de chaîne de connexion SAS DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net - 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

Optional. Options de configuration du pipeline HTTP.

Retours

generateAccountSasUrl(Date, AccountSASPermissions, string, ServiceGenerateAccountSasUrlOptions)

Disponible uniquement pour DataLakeServiceClient construit avec des informations d’identification de clé partagée.

Génère un URI de signature d’accès partagé (SAP) de compte basé sur les propriétés et paramètres du client transmis. La SAP est signée par les informations d’identification de clé partagée du client.

Voir https://learn.microsoft.com/rest/api/storageservices/create-account-sas

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

Paramètres

expiresOn

Date

Optional. Heure à laquelle la signature d’accès partagé devient non valide. La valeur par défaut est une heure plus tard si elle n’est pas spécifiée.

permissions
AccountSASPermissions

Spécifie la liste des autorisations à associer à la SAP.

resourceTypes

string

Spécifie les types de ressources associés à la signature d’accès partagé.

options
ServiceGenerateAccountSasUrlOptions

Paramètres facultatifs.

Retours

string

URI SAP de compte constitué de l’URI de la ressource représentée par ce client, suivi du jeton SAP généré.

generateSasStringToSign(Date, AccountSASPermissions, string, ServiceGenerateAccountSasUrlOptions)

Disponible uniquement pour DataLakeServiceClient construit avec des informations d’identification de clé partagée.

Génère une chaîne pour signer une signature d’accès partagé (SAP) de compte en fonction des propriétés et paramètres du client transmis. La SAP est signée par les informations d’identification de clé partagée du client.

Voir https://learn.microsoft.com/rest/api/storageservices/create-account-sas

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

Paramètres

expiresOn

Date

Optional. Heure à laquelle la signature d’accès partagé devient non valide. La valeur par défaut est une heure plus tard si elle n’est pas spécifiée.

permissions
AccountSASPermissions

Spécifie la liste des autorisations à associer à la SAP.

resourceTypes

string

Spécifie les types de ressources associés à la signature d’accès partagé.

options
ServiceGenerateAccountSasUrlOptions

Paramètres facultatifs.

Retours

string

URI SAP de compte constitué de l’URI de la ressource représentée par ce client, suivi du jeton SAP généré.

getFileSystemClient(string)

Crée un objet DataLakeFileSystemClient.

function getFileSystemClient(fileSystemName: string): DataLakeFileSystemClient

Paramètres

fileSystemName

string

Nom du système de fichiers.

Retours

getProperties(ServiceGetPropertiesOptions)

Obtient les propriétés du point de terminaison du service Blob d’un compte de stockage, y compris les propriétés des règles d’analyse de stockage et CORS (partage de ressources cross-origin).

Voir https://learn.microsoft.com/rest/api/storageservices/get-blob-service-properties

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

Paramètres

options
ServiceGetPropertiesOptions

Options de l’opération De propriétés d’obtention du service.

Retours

Données de réponse pour l’opération Propriétés d’obtention du service.

getUserDelegationKey(Date, Date, ServiceGetUserDelegationKeyOptions)

DISPONIBLE UNIQUEMENT LORS DE L’UTILISATION DE L’AUTHENTIFICATION PAR JETON DU PORTEUR (TokenCredential).

Récupère une clé de délégation d’utilisateur pour le service Data Lake. Il s’agit uniquement d’une opération valide lors de l’utilisation de l’authentification par jeton du porteur.

Example

import {
  DataLakeServiceClient,
  generateDataLakeSASQueryParameters,
  FileSystemSASPermissions,
  SASProtocol,
} from "@azure/storage-file-datalake";

const account = "<account>";
const sas = "<sas token>";
const datalakeServiceClient = new DataLakeServiceClient(
  `https://${account}.dfs.core.windows.net${sas}`,
);

const fileSystemName = "<file system name>";
const accountName = "<account name>";
const startsOn = new Date();
const expiresOn = new Date(+new Date() + 86400 * 1000);
// 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();

Voir https://learn.microsoft.com/rest/api/storageservices/get-user-delegation-key

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

Paramètres

startsOn

Date

Heure de début de la SAP de délégation d’utilisateur. Doit être dans les 7 jours suivant l’heure actuelle.

expiresOn

Date

Heure de fin de la SAP de délégation d’utilisateur. Doit être dans les 7 jours suivant l’heure actuelle.

Retours

listFileSystems(ServiceListFileSystemsOptions)

Retourne un itérateur itérable asynchrone pour répertorier tous les systèmes de fichiers sous le compte spécifié.

.byPage() retourne un itérateur itérable asynchrone pour répertorier les systèmes de fichiers dans les pages.

Exemple utilisant for await syntaxe :

import { DataLakeServiceClient } from "@azure/storage-file-datalake";
import { DefaultAzureCredential } from "@azure/identity";

const account = "<account>";
const datalakeServiceClient = new DataLakeServiceClient(
  `https://${account}.dfs.core.windows.net`,
  new DefaultAzureCredential(),
);

let i = 1;
const fileSystems = datalakeServiceClient.listFileSystems();
for await (const fileSystem of fileSystems) {
  console.log(`File system ${i++}: ${fileSystem.name}`);
}

Exemple utilisant iter.next():

import { DataLakeServiceClient } from "@azure/storage-file-datalake";
import { DefaultAzureCredential } from "@azure/identity";

const account = "<account>";
const datalakeServiceClient = new DataLakeServiceClient(
  `https://${account}.dfs.core.windows.net`,
  new DefaultAzureCredential(),
);

let i = 1;
const fileSystems = datalakeServiceClient.listFileSystems();
let { value, done } = await fileSystems.next();
while (!done) {
  console.log(`File system ${i++}: ${value.name}`);
  ({ value, done } = await fileSystems.next());
}

Exemple utilisant byPage():

import { DataLakeServiceClient } from "@azure/storage-file-datalake";
import { DefaultAzureCredential } from "@azure/identity";

const account = "<account>";
const datalakeServiceClient = new DataLakeServiceClient(
  `https://${account}.dfs.core.windows.net`,
  new DefaultAzureCredential(),
);

let i = 1;
for await (const response of datalakeServiceClient.listFileSystems().byPage({ maxPageSize: 20 })) {
  if (response.fileSystemItems) {
    for (const fileSystem of response.fileSystemItems) {
      console.log(`File System ${i++}: ${fileSystem.name}`);
    }
  }
}

Exemple d’utilisation de la pagination avec un marqueur :

import { DataLakeServiceClient } from "@azure/storage-file-datalake";
import { DefaultAzureCredential } from "@azure/identity";

const account = "<account>";
const datalakeServiceClient = new DataLakeServiceClient(
  `https://${account}.dfs.core.windows.net`,
  new DefaultAzureCredential(),
);

let i = 1;
let fileSystems = datalakeServiceClient.listFileSystems().byPage({ maxPageSize: 2 });
let response = (await fileSystems.next()).value;
// Prints 2 file systems
if (response.fileSystemItems) {
  for (const fileSystem of response.fileSystemItems) {
    console.log(`File system ${i++}: ${fileSystem.name}`);
  }
}
// Gets next marker
let marker = response.continuationToken;
// Passing next marker as continuationToken
fileSystems = datalakeServiceClient
  .listFileSystems()
  .byPage({ continuationToken: marker, maxPageSize: 10 });
response = (await fileSystems.next()).value;
// Prints 10 file systems
if (response.fileSystemItems) {
  for (const fileSystem of response.fileSystemItems) {
    console.log(`File system ${i++}: ${fileSystem.name}`);
  }
}

Voir https://learn.microsoft.com/rest/api/storageservices/list-containers2

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

Paramètres

Retours

setProperties(BlobServiceProperties, ServiceSetPropertiesOptions)

Définit les propriétés du point de terminaison du service Blob d’un compte de stockage, y compris les propriétés des règles Storage Analytics, CORS (partage de ressources cross-origin) et les paramètres de suppression réversible.

Voir https://learn.microsoft.com/rest/api/storageservices/set-blob-service-properties

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

Paramètres

options
ServiceSetPropertiesOptions

Options de l’opération Propriétés du jeu de services.

Retours

Données de réponse pour l’opération Propriétés du jeu de services.

undeleteFileSystem(string, string, ServiceUndeleteFileSystemOptions)

Restaurez un système de fichiers précédemment supprimé. Cette API est fonctionnelle uniquement si la suppression réversible de conteneur est activée pour le compte de stockage.

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

Paramètres

deletedFileSystemName

string

Nom du système de fichiers source.

deleteFileSystemVersion

string

Nouveau nom du système de fichiers.

options
ServiceUndeleteFileSystemOptions

Options de configuration de l’opération de restauration du système de fichiers.

Retours

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