DataLakeServiceClient Classe

Client pour interagir avec le service DataLake au niveau du compte.

Ce client fournit des opérations pour récupérer et configurer les propriétés du compte, ainsi que répertorier, créer et supprimer des systèmes de fichiers dans le compte. Pour les opérations relatives à un système de fichiers, un répertoire ou un fichier spécifique, les clients de ces entités peuvent également être récupérés à l’aide des fonctions get_client .

Héritage
azure.storage.filedatalake._shared.base_client.StorageAccountHostsMixin
DataLakeServiceClient

Constructeur

DataLakeServiceClient(account_url: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any)

Paramètres

account_url
str
Obligatoire

URL du compte de stockage DataLake. Toutes les autres entités incluses dans le chemin d’URL (par exemple, système de fichiers ou fichier) sont ignorées. Cette URL peut éventuellement être authentifiée avec un jeton SAS.

credential
valeur par défaut: None

Informations d’identification avec lesquelles s’authentifier. Cela est facultatif si l’URL du compte a déjà un jeton SAS. La valeur peut être une chaîne de jeton SAS, une instance d’azureSasCredential ou AzureNamedKeyCredential à partir d’azure.core.credentials, une clé d’accès partagé de compte ou une instance d’une classe TokenCredentials à partir d’azure.identity. Si l’URI de ressource contient déjà un jeton SAS, celui-ci est ignoré au profit d’informations d’identification explicites.

  • sauf dans le cas d’AzureSasCredential, où les jetons SAP en conflit déclenchent un ValueError. Si vous utilisez une instance d’AzureNamedKeyCredential, « name » doit être le nom du compte de stockage et « key » doit être la clé de compte de stockage.
api_version
str

Version de l’API de stockage à utiliser pour les requêtes. La valeur par défaut est la version de service la plus récente compatible avec le KIT de développement logiciel (SDK) actuel. La définition d’une version antérieure peut réduire la compatibilité des fonctionnalités.

Exemples

Création du DataLakeServiceClient à partir de la chaîne de connexion.


   from azure.storage.filedatalake import DataLakeServiceClient
   datalake_service_client = DataLakeServiceClient.from_connection_string(self.connection_string)

Création du DataLakeServiceClient avec les informations d’identification Azure Identity.


   from azure.identity import ClientSecretCredential
   token_credential = ClientSecretCredential(
       self.active_directory_tenant_id,
       self.active_directory_application_id,
       self.active_directory_application_secret,
   )
   datalake_service_client = DataLakeServiceClient("https://{}.dfs.core.windows.net".format(self.account_name),
                                                   credential=token_credential)

Variables

url
str

URL complète du point de terminaison vers le point de terminaison de service datalake.

primary_endpoint
str

URL complète du point de terminaison principal.

primary_hostname
str

Nom d’hôte du point de terminaison principal.

Méthodes

close

Cette méthode consiste à fermer les sockets ouverts par le client. Il n’est pas nécessaire de l’utiliser lors de l’utilisation avec un gestionnaire de contexte.

create_file_system

Crée un système de fichiers sous le compte spécifié.

Si le système de fichiers portant le même nom existe déjà, une erreur ResourceExistsError est déclenchée. Cette méthode retourne un client avec lequel interagir avec le système de fichiers nouvellement créé.

delete_file_system

Marque le système de fichiers spécifié pour suppression.

Le système de fichiers et tous les fichiers qu’il contient sont supprimés ultérieurement pendant le garbage collection. Si le système de fichiers est introuvable, un ResourceNotFoundError est déclenché.

from_connection_string

Créez DataLakeServiceClient à partir d’une chaîne de connexion.

:return a DataLakeServiceClient :rtype ~azure.storage.filedatalake.DataLakeServiceClient

get_directory_client

Obtenir un client pour interagir avec le répertoire spécifié.

Le répertoire n’a pas besoin d’exister.

get_file_client

Obtenir un client pour interagir avec le fichier spécifié.

Le fichier n’a pas besoin d’exister.

get_file_system_client

Obtenir un client pour interagir avec le système de fichiers spécifié.

Le système de fichiers n’a pas besoin d’exister.

get_service_properties

Obtient les propriétés du service datalake d’un compte de stockage, y compris Azure Storage Analytics.

Nouveauté de la version 12.4.0 : cette opération a été introduite dans la version d’API « 2020-06-12 ».

get_user_delegation_key

Obtenez une clé de délégation utilisateur dans le but de signer des jetons SAP. Des informations d’identification de jeton doivent être présentes sur l’objet de service pour que cette demande aboutisse.

list_file_systems

Retourne un générateur pour répertorier les systèmes de fichiers sous le compte spécifié.

Le générateur suit paresseusement les jetons de continuation retournés par le service et s’arrête lorsque tous les systèmes de fichiers ont été retournés.

set_service_properties

Définit les propriétés du service Datalake d’un compte de stockage, y compris Azure Storage Analytics.

Nouveauté de la version 12.4.0 : cette opération a été introduite dans la version d’API « 2020-06-12 ».

Si un élément (par exemple, analytics_logging) reste aucun, les paramètres existants sur le service pour cette fonctionnalité sont conservés.

undelete_file_system

Restaure le système de fichiers supprimé de manière réversible.

L’opération ne réussit que si elle est utilisée dans le nombre de jours spécifié défini dans la stratégie de rétention de suppression.

Nouveautés de la version 12.3.0 : cette opération a été introduite dans la version d’API « 2019-12-12 ».

close

Cette méthode consiste à fermer les sockets ouverts par le client. Il n’est pas nécessaire de l’utiliser lors de l’utilisation avec un gestionnaire de contexte.

close() -> None

create_file_system

Crée un système de fichiers sous le compte spécifié.

Si le système de fichiers portant le même nom existe déjà, une erreur ResourceExistsError est déclenchée. Cette méthode retourne un client avec lequel interagir avec le système de fichiers nouvellement créé.

create_file_system(file_system: FileSystemProperties | str, metadata: Dict[str, str] | None = None, public_access: PublicAccess | None = None, **kwargs) -> FileSystemClient

Paramètres

file_system
str
Obligatoire

Nom du système de fichiers à créer.

metadata
dict(str, str)
Obligatoire

dict avec des paires nom-valeur à associer au système de fichiers en tant que métadonnées. Exemple : {'Category':'test'}

public_access
PublicAccess
Obligatoire

Les valeurs possibles sont les suivantes : système de fichiers, fichier.

encryption_scope_options
dict ou EncryptionScopeOptions

Spécifie l’étendue de chiffrement par défaut à définir sur le système de fichiers et à utiliser pour toutes les écritures ultérieures.

Nouveautés de la version 12.9.0.

timeout
int

Définit le délai d’expiration côté serveur pour l’opération en secondes. Pour plus d’informations, consultez https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Cette valeur n’est pas suivie ou validée sur le client. Pour configurer les délais d’expiration du réseau côté client, consultez ici.

Type de retour

Exemples

Création d’un système de fichiers dans le service datalake.


   datalake_service_client.create_file_system("filesystem")

delete_file_system

Marque le système de fichiers spécifié pour suppression.

Le système de fichiers et tous les fichiers qu’il contient sont supprimés ultérieurement pendant le garbage collection. Si le système de fichiers est introuvable, un ResourceNotFoundError est déclenché.

delete_file_system(file_system: FileSystemProperties | str, **kwargs) -> FileSystemClient

Paramètres

file_system
str ou FileSystemProperties
Obligatoire

Système de fichiers à supprimer. Il peut s’agir du nom du système de fichiers ou d’un instance de FileSystemProperties.

lease
DataLakeLeaseClient ou str

S’il est spécifié, delete_file_system réussit uniquement si le bail du système de fichiers est actif et correspond à cet ID. Obligatoire si le système de fichiers a un bail actif.

if_modified_since
datetime

Valeur DateTime. Azure s’attend à ce que la valeur de date passée soit UTC. Si le fuseau horaire est inclus, toutes les datetimes non UTC sont converties en UTC. Si une date est passée sans informations de fuseau horaire, elle est supposée être UTC. Spécifiez cet en-tête pour exécuter l'opération uniquement si la ressource a été modifiée depuis le temps indiqué.

if_unmodified_since
datetime

Valeur DateTime. Azure s’attend à ce que la valeur de date passée soit UTC. Si le fuseau horaire est inclus, toutes les datetimes non UTC sont converties en UTC. Si une date est passée sans informations de fuseau horaire, elle est supposée être UTC. Spécifiez cet en-tête pour exécuter l'opération uniquement si la ressource n'a pas été modifiée depuis la date/l'heure indiquées.

etag
str

Spécifiez une valeur ETag ou le caractère générique *. Permet de case activée si la ressource a changé et d’agir selon la condition spécifiée par le paramètre match_condition.

match_condition
MatchConditions

Condition de correspondance à utiliser sur l’etag.

timeout
int

Définit le délai d’expiration côté serveur pour l’opération en secondes. Pour plus d’informations, consultez https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Cette valeur n’est pas suivie ou validée sur le client. Pour configurer les délais d’expiration du réseau côté client, consultez ici.

Type de retour

Exemples

Suppression d’un système de fichiers dans le service datalake.


   datalake_service_client.delete_file_system("filesystem")

from_connection_string

Créez DataLakeServiceClient à partir d’une chaîne de connexion.

:return a DataLakeServiceClient :rtype ~azure.storage.filedatalake.DataLakeServiceClient

from_connection_string(conn_str: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any) -> Self

Paramètres

conn_str
str
Obligatoire

Chaîne de connexion à un compte de stockage Azure.

credential
valeur par défaut: None

Informations d’identification avec lesquelles s’authentifier. Cela est facultatif si l’URL du compte a déjà un jeton SAS ou si la chaîne de connexion a déjà des valeurs de clé d’accès partagé. La valeur peut être une chaîne de jeton SAS, une instance d’une instance AzureSasCredential à partir d’azure.core.credentials, une clé d’accès partagé de compte ou une instance d’une classe TokenCredentials à partir d’azure.identity. Les informations d’identification fournies ici sont prioritaires sur celles de la chaîne de connexion.

Exemples

Création du DataLakeServiceClient à partir d’une chaîne de connexion.


   from azure.storage.filedatalake import DataLakeServiceClient
   datalake_service_client = DataLakeServiceClient.from_connection_string(self.connection_string)

get_directory_client

Obtenir un client pour interagir avec le répertoire spécifié.

Le répertoire n’a pas besoin d’exister.

get_directory_client(file_system: FileSystemProperties | str, directory: DirectoryProperties | str) -> DataLakeDirectoryClient

Paramètres

file_system
str ou FileSystemProperties
Obligatoire

Système de fichiers dans lequel se trouve le répertoire. Il peut s’agir du nom du système de fichiers ou d’un instance de FileSystemProperties.

directory
str ou DirectoryProperties
Obligatoire

Répertoire avec lequel interagir. Il peut s’agir du nom du répertoire ou d’un instance de DirectoryProperties.

Retours

A DataLakeDirectoryClient.

Type de retour

Exemples

Obtention du client d’annuaire pour interagir avec un répertoire spécifique.


   directory_client = datalake_service_client.get_directory_client(file_system_client.file_system_name,
                                                                   "mydirectory")

get_file_client

Obtenir un client pour interagir avec le fichier spécifié.

Le fichier n’a pas besoin d’exister.

get_file_client(file_system: FileSystemProperties | str, file_path: FileProperties | str) -> DataLakeFileClient

Paramètres

file_system
str ou FileSystemProperties
Obligatoire

Système de fichiers dans lequel se trouve le fichier. Il peut s’agir du nom du système de fichiers ou d’un instance de FileSystemProperties.

file_path
str ou FileProperties
Obligatoire

Fichier avec lequel interagir. Il peut s’agir du chemin d’accès complet du fichier (à partir du répertoire racine) ou d’un instance de FileProperties. Par exemple, répertoire/sous-répertoire/fichier

Retours

A DataLakeFileClient.

Type de retour

Exemples

Obtention du client de fichiers pour interagir avec un fichier spécifique.


   file_client = datalake_service_client.get_file_client(file_system_client.file_system_name, "myfile")

get_file_system_client

Obtenir un client pour interagir avec le système de fichiers spécifié.

Le système de fichiers n’a pas besoin d’exister.

get_file_system_client(file_system: FileSystemProperties | str) -> FileSystemClient

Paramètres

file_system
str ou FileSystemProperties
Obligatoire

le système de fichiers ; Il peut s’agir du nom du système de fichiers ou d’un instance de FileSystemProperties.

Retours

A FileSystemClient.

Type de retour

Exemples

Obtention du client du système de fichiers pour interagir avec un système de fichiers spécifique.


   # Instantiate a DataLakeServiceClient using a connection string
   from azure.storage.filedatalake import DataLakeServiceClient
   datalake_service_client = DataLakeServiceClient.from_connection_string(self.connection_string)

   # Instantiate a FileSystemClient
   file_system_client = datalake_service_client.get_file_system_client("mynewfilesystem")

get_service_properties

Obtient les propriétés du service datalake d’un compte de stockage, y compris Azure Storage Analytics.

Nouveauté de la version 12.4.0 : cette opération a été introduite dans la version d’API « 2020-06-12 ».

get_service_properties(**kwargs: Any) -> Dict[str, Any]

Paramètres

timeout
int

Définit le délai d’expiration côté serveur pour l’opération en secondes. Pour plus d’informations, consultez https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Cette valeur n’est pas suivie ou validée sur le client. Pour configurer les délais d’expiration du réseau côté client, consultez ici.

Retours

Objet contenant des propriétés de service datalake telles que la journalisation analytique, les métriques d’heure/minute, les règles cors, etc.

Type de retour

get_user_delegation_key

Obtenez une clé de délégation utilisateur dans le but de signer des jetons SAP. Des informations d’identification de jeton doivent être présentes sur l’objet de service pour que cette demande aboutisse.

get_user_delegation_key(key_start_time: datetime, key_expiry_time: datetime, **kwargs: Any) -> UserDelegationKey

Paramètres

key_start_time
datetime
Obligatoire

Valeur DateTime. Indique quand la clé devient valide.

key_expiry_time
datetime
Obligatoire

Valeur DateTime. Indique quand la clé cesse d’être valide.

timeout
int

Définit le délai d’expiration côté serveur pour l’opération en secondes. Pour plus d’informations, consultez https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Cette valeur n’est pas suivie ou validée sur le client. Pour configurer les délais d’expiration du réseau côté client, consultez ici.

Retours

Clé de délégation utilisateur.

Type de retour

Exemples

Obtenir la clé de délégation d’utilisateur à partir du client du service datalake.


   from datetime import datetime, timedelta
   user_delegation_key = datalake_service_client.get_user_delegation_key(datetime.utcnow(),
                                                                         datetime.utcnow() + timedelta(hours=1))

list_file_systems

Retourne un générateur pour répertorier les systèmes de fichiers sous le compte spécifié.

Le générateur suit paresseusement les jetons de continuation retournés par le service et s’arrête lorsque tous les systèmes de fichiers ont été retournés.

list_file_systems(name_starts_with: str | None = None, include_metadata: bool | None = None, **kwargs) -> ItemPaged[FileSystemProperties]

Paramètres

name_starts_with
str
Obligatoire

Filtre les résultats pour renvoyer uniquement les systèmes de fichiers dont le nom commence par le préfixe spécifié.

include_metadata
bool
Obligatoire

Spécifie que les métadonnées du système de fichiers doivent être retournées dans la réponse. La valeur par défaut est False.

results_per_page
int

Nombre maximal de noms de système de fichiers à récupérer par appel d’API. Si la demande ne spécifie pas, le serveur retourne jusqu’à 5 000 éléments par page.

timeout
int

Définit le délai d’expiration côté serveur pour l’opération en secondes. Pour plus d’informations, consultez https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Cette valeur n’est pas suivie ou validée sur le client. Pour configurer les délais d’expiration du réseau côté client, consultez ici.

include_deleted
bool

Spécifie que les systèmes de fichiers supprimés doivent être retournés dans la réponse. Il s’agit du compte activé pour la restauration du système de fichiers. La valeur par défaut est False. .. versionadded:: 12.3.0

include_system
bool

Indicateur spécifiant que les systèmes de fichiers système doivent être inclus. .. versionadded:: 12.6.0

Retours

Itérable (pagination automatique) de FileSystemProperties.

Type de retour

Exemples

Répertorier les systèmes de fichiers dans le service datalake.


   file_systems = datalake_service_client.list_file_systems()
   for file_system in file_systems:
       print(file_system.name)

set_service_properties

Définit les propriétés du service Datalake d’un compte de stockage, y compris Azure Storage Analytics.

Nouveauté de la version 12.4.0 : cette opération a été introduite dans la version d’API « 2020-06-12 ».

Si un élément (par exemple, analytics_logging) reste aucun, les paramètres existants sur le service pour cette fonctionnalité sont conservés.

set_service_properties(**kwargs: Any) -> None

Paramètres

analytics_logging

Regroupe les paramètres de journalisation d'analyse Azure.

hour_metrics

Les paramètres de métriques d’heure fournissent un résumé des statistiques de requête regroupées par API dans des agrégats horaires.

minute_metrics

Les paramètres de métriques de minute fournissent des statistiques de requête pour chaque minute.

cors

Vous pouvez inclure jusqu’à cinq éléments CorsRule dans la liste. Si une liste vide est spécifiée, toutes les règles CORS sont supprimées et CORS est désactivé pour le service.

target_version
str

Indique la version par défaut à utiliser pour les requêtes si la version d’une requête entrante n’est pas spécifiée.

delete_retention_policy

La stratégie de suppression de rétention spécifie s’il faut conserver les fichiers/répertoires supprimés. Il spécifie également le nombre de jours et les versions du fichier/répertoire à conserver.

static_website

Spécifie si la fonctionnalité de site web statique est activée et, si oui, indique le document d’index et le document d’erreur 404 à utiliser.

timeout
int

Définit le délai d’expiration côté serveur pour l’opération en secondes. Pour plus d’informations, consultez https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Cette valeur n’est pas suivie ou validée sur le client. Pour configurer les délais d’expiration du réseau côté client, consultez ici.

Type de retour

undelete_file_system

Restaure le système de fichiers supprimé de manière réversible.

L’opération ne réussit que si elle est utilisée dans le nombre de jours spécifié défini dans la stratégie de rétention de suppression.

Nouveautés de la version 12.3.0 : cette opération a été introduite dans la version d’API « 2019-12-12 ».

undelete_file_system(name: str, deleted_version: str, **kwargs: Any) -> FileSystemClient

Paramètres

name
str
Obligatoire

Spécifie le nom du système de fichiers supprimé à restaurer.

deleted_version
str
Obligatoire

Spécifie la version du système de fichiers supprimé à restaurer.

timeout
int

Définit le délai d’expiration côté serveur pour l’opération en secondes. Pour plus d’informations, consultez https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Cette valeur n’est pas suivie ou validée sur le client. Pour configurer les délais d’expiration du réseau côté client, consultez ici.

Retours

Fichier FileSystemClient supprimé par solft restauré.

Type de retour

Attributs

api_version

Version de l’API de stockage utilisée pour les requêtes.

location_mode

Mode d’emplacement que le client utilise actuellement.

Par défaut, il s’agit de « primary ». Les options incluent « principal » et « secondaire ».

primary_endpoint

URL complète du point de terminaison principal.

primary_hostname

Nom d’hôte du point de terminaison principal.

secondary_endpoint

URL complète du point de terminaison secondaire si elle est configurée.

S’il n’est pas disponible, un objet ValueError est déclenché. Pour spécifier explicitement un nom d’hôte secondaire, utilisez l’argument facultatif mot clé secondary_hostname lors de l’instanciation.

Exceptions

secondary_hostname

Nom d’hôte du point de terminaison secondaire.

S’il n’est pas disponible, il s’agit de None. Pour spécifier explicitement un nom d’hôte secondaire, utilisez l’argument facultatif mot clé secondary_hostname lors de l’instanciation.

url

URL complète du point de terminaison de cette entité, y compris le jeton SAS s’il est utilisé.

Il peut s’agir du point de terminaison principal ou du point de terminaison secondaire en fonction du actuel location_mode. :returns : URL de point de terminaison complète de cette entité, y compris le jeton SAP s’il est utilisé. :rtype: str