Delen via


DataLakeServiceClient Klas

Een client voor interactie met de DataLake-service op accountniveau.

Deze client biedt bewerkingen voor het ophalen en configureren van de accounteigenschappen, evenals het weergeven, maken en verwijderen van bestandssystemen binnen het account. Voor bewerkingen met betrekking tot een specifiek bestandssysteem, een specifieke map of een specifiek bestand kunnen clients voor die entiteiten ook worden opgehaald met behulp van de get_client-functies .

Overname
azure.storage.filedatalake._shared.base_client.StorageAccountHostsMixin
DataLakeServiceClient

Constructor

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

Parameters

account_url
str
Vereist

De URL naar het DataLake-opslagaccount. Alle andere entiteiten die zijn opgenomen in het URL-pad (bijvoorbeeld bestandssysteem of bestand), worden verwijderd. Deze URL kan optioneel worden geverifieerd met een SAS-token.

credential
standaardwaarde: None

De referenties waarmee moet worden geverifieerd. Dit is optioneel als de account-URL al een SAS-token heeft. De waarde kan een SAS-tokentekenreeks zijn, een exemplaar van een AzureSasCredential of AzureNamedKeyCredential van azure.core.credentials, een gedeelde toegangssleutel voor het account of een exemplaar van een TokenCredentials-klasse van azure.identity. Als de resource-URI al een SAS-token bevat, wordt dit genegeerd ten gunste van een expliciete referentie

  • behalve in het geval van AzureSasCredential, waarbij de conflicterende SAS-tokens een ValueError genereren. Als u een exemplaar van AzureNamedKeyCredential gebruikt, moet 'name' de naam van het opslagaccount zijn en moet 'sleutel' de sleutel van het opslagaccount zijn.
api_version
str

De storage-API-versie die moet worden gebruikt voor aanvragen. De standaardwaarde is de meest recente serviceversie die compatibel is met de huidige SDK. Instellen op een oudere versie kan leiden tot verminderde compatibiliteit van functies.

Voorbeelden

De DataLakeServiceClient maken op basis van connection string.


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

De DataLakeServiceClient maken met Azure Identity-referenties.


   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)

Variabelen

url
str

De volledige eindpunt-URL naar het eindpunt van de datalake-service.

primary_endpoint
str

De volledige URL van het primaire eindpunt.

primary_hostname
str

De hostnaam van het primaire eindpunt.

Methoden

close

Deze methode is het sluiten van de sockets die door de client zijn geopend. Deze hoeft niet te worden gebruikt bij gebruik met een contextbeheerder.

create_file_system

Hiermee maakt u een nieuw bestandssysteem onder het opgegeven account.

Als het bestandssysteem met dezelfde naam al bestaat, wordt er een ResourceExistsError gegenereerd. Deze methode retourneert een client waarmee kan worden gecommuniceerd met het zojuist gemaakte bestandssysteem.

delete_file_system

Hiermee wordt het opgegeven bestandssysteem gemarkeerd voor verwijdering.

Het bestandssysteem en alle bestanden die erin zijn opgenomen, worden later verwijderd tijdens de garbagecollection. Als het bestandssysteem niet wordt gevonden, wordt er een ResourceNotFoundError gegenereerd.

from_connection_string

Maak DataLakeServiceClient op basis van een verbindingsreeks.

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

get_directory_client

Vraag een client om te communiceren met de opgegeven map.

De map hoeft nog niet te bestaan.

get_file_client

Vraag een client om te communiceren met het opgegeven bestand.

Het bestand hoeft nog niet te bestaan.

get_file_system_client

Een client ophalen om te communiceren met het opgegeven bestandssysteem.

Het bestandssysteem hoeft nog niet te bestaan.

get_service_properties

Hiermee haalt u de eigenschappen op van de datalake-service van een opslagaccount, waaronder Azure Opslaganalyse.

Nieuw in versie 12.4.0: Deze bewerking is geïntroduceerd in API-versie '2020-06-12'.

get_user_delegation_key

Verkrijg een sleutel voor gebruikersdelegatie voor het ondertekenen van SAS-tokens. Deze aanvraag slaagt alleen als er een tokenreferentie aanwezig is op het serviceobject.

list_file_systems

Retourneert een generator om de bestandssystemen onder het opgegeven account weer te geven.

De generator volgt lui de vervolgtokens die door de service worden geretourneerd en stopt wanneer alle bestandssystemen zijn geretourneerd.

set_service_properties

Hiermee stelt u de eigenschappen van de Datalake-service van een opslagaccount in, waaronder Azure Opslaganalyse.

Nieuw in versie 12.4.0: Deze bewerking is geïntroduceerd in API-versie '2020-06-12'.

Als een element (bijvoorbeeld analytics_logging) wordt overgelaten op Geen, blijven de bestaande instellingen in de service voor die functionaliteit behouden.

undelete_file_system

Herstelt voorlopig verwijderd bestandssysteem.

De bewerking is alleen geslaagd als deze wordt gebruikt binnen het opgegeven aantal dagen dat is ingesteld in het bewaarbeleid voor verwijderen.

Nieuw in versie 12.3.0: Deze bewerking is geïntroduceerd in API-versie '2019-12-12'.

close

Deze methode is het sluiten van de sockets die door de client zijn geopend. Deze hoeft niet te worden gebruikt bij gebruik met een contextbeheerder.

close() -> None

create_file_system

Hiermee maakt u een nieuw bestandssysteem onder het opgegeven account.

Als het bestandssysteem met dezelfde naam al bestaat, wordt er een ResourceExistsError gegenereerd. Deze methode retourneert een client waarmee kan worden gecommuniceerd met het zojuist gemaakte bestandssysteem.

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

Parameters

file_system
str
Vereist

De naam van het bestandssysteem dat moet worden gemaakt.

metadata
dict(str, str)
Vereist

Een dict met naam-waardeparen om als metagegevens aan het bestandssysteem te koppelen. Voorbeeld: {'Category':'test'}

public_access
PublicAccess
Vereist

Mogelijke waarden zijn: bestandssysteem, bestand.

encryption_scope_options
dict of EncryptionScopeOptions

Hiermee geeft u het standaardversleutelingsbereik op dat moet worden ingesteld in het bestandssysteem en moet worden gebruikt voor alle toekomstige schrijfbewerkingen.

Nieuw in versie 12.9.0.

timeout
int

Hiermee stelt u de time-out aan de serverzijde voor de bewerking in seconden in. Zie https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations voor meer informatie. Deze waarde wordt niet bijgehouden of gevalideerd op de client. Zie hier als u netwerktime-outs aan de clientzijde wilt configureren.

Retourtype

Voorbeelden

Een bestandssysteem maken in de datalake-service.


   datalake_service_client.create_file_system("filesystem")

delete_file_system

Hiermee wordt het opgegeven bestandssysteem gemarkeerd voor verwijdering.

Het bestandssysteem en alle bestanden die erin zijn opgenomen, worden later verwijderd tijdens de garbagecollection. Als het bestandssysteem niet wordt gevonden, wordt er een ResourceNotFoundError gegenereerd.

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

Parameters

file_system
str of FileSystemProperties
Vereist

Het bestandssysteem dat u wilt verwijderen. Dit kan de naam van het bestandssysteem of een exemplaar van FileSystemProperties zijn.

lease
DataLakeLeaseClient of str

Indien opgegeven, slaagt delete_file_system alleen als de lease van het bestandssysteem actief is en overeenkomt met deze id. Vereist als het bestandssysteem een actieve lease heeft.

if_modified_since
datetime

Een datum/tijd-waarde. Azure verwacht dat de doorgegeven datumwaarde UTC is. Als tijdzone is opgenomen, worden alle niet-UTC-datums geconverteerd naar UTC. Als een datum wordt doorgegeven zonder tijdzone-informatie, wordt ervan uitgegaan dat deze UTC is. Geef deze header op om de bewerking alleen uit te voeren als de resource sinds de opgegeven tijd is gewijzigd.

if_unmodified_since
datetime

Een datum/tijd-waarde. Azure verwacht dat de doorgegeven datumwaarde UTC is. Als tijdzone is opgenomen, worden alle niet-UTC-datums geconverteerd naar UTC. Als een datum wordt doorgegeven zonder tijdzone-informatie, wordt ervan uitgegaan dat deze UTC is. Geef deze header op om de bewerking alleen uit te voeren als de resource niet is gewijzigd sinds de opgegeven datum/tijd.

etag
str

Een ETag-waarde of het jokerteken (*). Wordt gebruikt om te controleren of de resource is gewijzigd en om te handelen volgens de voorwaarde die is opgegeven door de parameter match_condition .

match_condition
MatchConditions

De overeenkomstvoorwaarde die moet worden gebruikt voor de etag.

timeout
int

Hiermee stelt u de time-out aan de serverzijde voor de bewerking in seconden in. Zie https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations voor meer informatie. Deze waarde wordt niet bijgehouden of gevalideerd op de client. Zie hier als u netwerktime-outs aan de clientzijde wilt configureren.

Retourtype

Voorbeelden

Een bestandssysteem verwijderen in de datalake-service.


   datalake_service_client.delete_file_system("filesystem")

from_connection_string

Maak DataLakeServiceClient op basis van een verbindingsreeks.

: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

Parameters

conn_str
str
Vereist

Een connection string naar een Azure Storage-account.

credential
standaardwaarde: None

De referenties waarmee moet worden geverifieerd. Dit is optioneel als de account-URL al een SAS-token heeft of als de connection string al gedeelde toegangssleutelwaarden heeft. De waarde kan een SAS-tokentekenreeks zijn, een exemplaar van een AzureSasCredential van azure.core.credentials, een gedeelde toegangssleutel voor een account of een exemplaar van een TokenCredentials-klasse van azure.identity. Referenties die hier worden opgegeven, hebben voorrang op de referenties in de connection string.

Voorbeelden

De DataLakeServiceClient maken op basis van een connection string.


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

get_directory_client

Vraag een client om te communiceren met de opgegeven map.

De map hoeft nog niet te bestaan.

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

Parameters

file_system
str of FileSystemProperties
Vereist

Het bestandssysteem waarin de map zich bevindt. Dit kan de naam van het bestandssysteem of een exemplaar van FileSystemProperties zijn.

directory
str of DirectoryProperties
Vereist

De map waarmee moet worden gecommuniceerd. Dit kan de naam van de map zijn of een exemplaar van DirectoryProperties.

Retouren

Een DataLakeDirectoryClient.

Retourtype

Voorbeelden

De directoryclient laten communiceren met een specifieke map.


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

get_file_client

Vraag een client om te communiceren met het opgegeven bestand.

Het bestand hoeft nog niet te bestaan.

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

Parameters

file_system
str of FileSystemProperties
Vereist

Het bestandssysteem waarin het bestand zich bevindt. Dit kan de naam van het bestandssysteem of een exemplaar van FileSystemProperties zijn.

file_path
str of FileProperties
Vereist

Het bestand waarmee moet worden gecommuniceerd. Dit kan het volledige pad van het bestand (uit de hoofdmap) of een exemplaar van FileProperties zijn. bijvoorbeeld map/submap/bestand

Retouren

Een DataLakeFileClient.

Retourtype

Voorbeelden

De bestandsclient laten communiceren met een specifiek bestand.


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

get_file_system_client

Een client ophalen om te communiceren met het opgegeven bestandssysteem.

Het bestandssysteem hoeft nog niet te bestaan.

get_file_system_client(file_system: FileSystemProperties | str) -> FileSystemClient

Parameters

file_system
str of FileSystemProperties
Vereist

Het bestandssysteem. Dit kan de naam van het bestandssysteem of een exemplaar van FileSystemProperties zijn.

Retouren

Een FileSystemClient.

Retourtype

Voorbeelden

De bestandssysteemclient laten communiceren met een specifiek bestandssysteem.


   # 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

Hiermee haalt u de eigenschappen op van de datalake-service van een opslagaccount, waaronder Azure Opslaganalyse.

Nieuw in versie 12.4.0: Deze bewerking is geïntroduceerd in API-versie '2020-06-12'.

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

Parameters

timeout
int

Hiermee stelt u de time-out aan de serverzijde voor de bewerking in seconden in. Zie https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations voor meer informatie. Deze waarde wordt niet bijgehouden of gevalideerd op de client. Als u netwerktime-outs aan de clientzijde wilt configureren, raadpleegt u hier.

Retouren

Een object met datalake-service-eigenschappen, zoals logboekregistratie van analyses, metrische gegevens per uur/minuut, cors-regels, enzovoort.

Retourtype

get_user_delegation_key

Verkrijg een sleutel voor gebruikersdelegatie voor het ondertekenen van SAS-tokens. Deze aanvraag slaagt alleen als er een tokenreferentie aanwezig is op het serviceobject.

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

Parameters

key_start_time
datetime
Vereist

Een datum/tijd-waarde. Geeft aan wanneer de sleutel geldig wordt.

key_expiry_time
datetime
Vereist

Een datum/tijd-waarde. Geeft aan wanneer de sleutel niet meer geldig is.

timeout
int

Hiermee stelt u de time-out aan de serverzijde voor de bewerking in seconden in. Zie https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations voor meer informatie. Deze waarde wordt niet bijgehouden of gevalideerd op de client. Als u netwerktime-outs aan de clientzijde wilt configureren, raadpleegt u hier.

Retouren

De sleutel voor gebruikersdelegatie.

Retourtype

Voorbeelden

Haal de sleutel voor gebruikersdelegatie op uit de datalake-serviceclient.


   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

Retourneert een generator om de bestandssystemen onder het opgegeven account weer te geven.

De generator volgt lui de vervolgtokens die door de service worden geretourneerd en stopt wanneer alle bestandssystemen zijn geretourneerd.

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

Parameters

name_starts_with
str
Vereist

Filtert de resultaten om alleen bestandssystemen te retourneren waarvan de namen beginnen met het opgegeven voorvoegsel.

include_metadata
bool
Vereist

Hiermee geeft u op dat metagegevens van het bestandssysteem worden geretourneerd in het antwoord. De standaardwaarde is False.

results_per_page
int

Het maximum aantal bestandssysteemnamen dat per API-aanroep moet worden opgehaald. Als de aanvraag niet opgeeft, retourneert de server maximaal 5000 items per pagina.

timeout
int

Hiermee stelt u de time-out aan de serverzijde voor de bewerking in seconden in. Zie https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations voor meer informatie. Deze waarde wordt niet bijgehouden of gevalideerd op de client. Als u netwerktime-outs aan de clientzijde wilt configureren, raadpleegt u hier.

include_deleted
bool

Hiermee geeft u op dat verwijderde bestandssystemen worden geretourneerd in het antwoord. Dit is voor een account waarvoor bestandssysteemherstel is ingeschakeld. De standaardwaarde is False. .. versionadded:: 12.3.0

include_system
bool

Vlag die aangeeft dat systeembestandssystemen moeten worden opgenomen. .. versionadded:: 12.6.0

Retouren

Een iterable (auto-paging) van FileSystemProperties.

Retourtype

Voorbeelden

De bestandssystemen in de datalake-service weergeven.


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

set_service_properties

Hiermee stelt u de eigenschappen van de Datalake-service van een opslagaccount in, waaronder Azure Opslaganalyse.

Nieuw in versie 12.4.0: Deze bewerking is geïntroduceerd in API-versie '2020-06-12'.

Als een element (bijvoorbeeld analytics_logging) wordt overgelaten op Geen, blijven de bestaande instellingen in de service voor die functionaliteit behouden.

set_service_properties(**kwargs: Any) -> None

Parameters

analytics_logging

Groepeert de azure Analytics-instellingen voor logboekregistratie.

hour_metrics

De instellingen voor metrische uurgegevens bieden een overzicht van aanvraagstatistieken gegroepeerd per API in aggregaties per uur.

minute_metrics

De instellingen voor metrische minuutgegevens bieden aanvraagstatistieken voor elke minuut.

cors

U kunt maximaal vijf CorsRule-elementen in de lijst opnemen. Als er een lege lijst is opgegeven, worden alle CORS-regels verwijderd en CORS uitgeschakeld voor de service.

target_version
str

Geeft de standaardversie aan die moet worden gebruikt voor aanvragen als de versie van een binnenkomende aanvraag niet is opgegeven.

delete_retention_policy

Het bewaarbeleid voor verwijderen geeft aan of verwijderde bestanden/mappen moeten worden bewaard. Het geeft ook het aantal dagen en versies van bestand/map dat moet worden bewaard.

static_website

Hiermee geeft u op of de functie statische website is ingeschakeld en zo ja, geeft u het indexdocument en het 404-foutdocument aan dat moet worden gebruikt.

timeout
int

Hiermee stelt u de time-out aan de serverzijde voor de bewerking in seconden in. Zie https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations voor meer informatie. Deze waarde wordt niet bijgehouden of gevalideerd op de client. Als u netwerktime-outs aan de clientzijde wilt configureren, raadpleegt u hier.

Retourtype

undelete_file_system

Herstelt voorlopig verwijderd bestandssysteem.

De bewerking is alleen geslaagd als deze wordt gebruikt binnen het opgegeven aantal dagen dat is ingesteld in het bewaarbeleid voor verwijderen.

Nieuw in versie 12.3.0: Deze bewerking is geïntroduceerd in API-versie '2019-12-12'.

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

Parameters

name
str
Vereist

Hiermee geeft u de naam van het verwijderde bestandssysteem te herstellen.

deleted_version
str
Vereist

Hiermee geeft u de versie van het verwijderde bestandssysteem te herstellen.

timeout
int

Hiermee stelt u de time-out aan de serverzijde voor de bewerking in seconden in. Zie https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations voor meer informatie. Deze waarde wordt niet bijgehouden of gevalideerd op de client. Als u netwerktime-outs aan de clientzijde wilt configureren, raadpleegt u hier.

Retouren

De herstelde door solft verwijderde FileSystemClient.

Retourtype

Kenmerken

api_version

De versie van de Storage-API die wordt gebruikt voor aanvragen.

location_mode

De locatiemodus die de client momenteel gebruikt.

Dit is standaard 'primair'. Opties zijn 'primair' en 'secundair'.

primary_endpoint

De volledige URL van het primaire eindpunt.

primary_hostname

De hostnaam van het primaire eindpunt.

secondary_endpoint

De volledige url van het secundaire eindpunt, indien geconfigureerd.

Als dit niet beschikbaar is, wordt er een ValueError gegenereerd. Als u expliciet een secundaire hostnaam wilt opgeven, gebruikt u het optionele secondary_hostname trefwoordargument bij instantiëring.

Uitzonderingen

secondary_hostname

De hostnaam van het secundaire eindpunt.

Als dit niet beschikbaar is, is dit Geen. Als u expliciet een secundaire hostnaam wilt opgeven, gebruikt u het optionele secondary_hostname trefwoordargument bij instantiëring.

url

De volledige eindpunt-URL naar deze entiteit, inclusief SAS-token indien gebruikt.

Dit kan het primaire eindpunt of het secundaire eindpunt zijn, afhankelijk van de huidige location_mode. :retourneert: de volledige eindpunt-URL naar deze entiteit, inclusief SAS-token indien gebruikt. :rtype: str