DataLakeServiceClient Klass

En klient som ska interagera med DataLake-tjänsten på kontonivå.

Den här klienten tillhandahåller åtgärder för att hämta och konfigurera kontoegenskaper samt lista, skapa och ta bort filsystem i kontot. För åtgärder som rör ett specifikt filsystem, katalog eller fil kan klienter för dessa entiteter också hämtas med hjälp av get_client funktioner.

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

Konstruktor

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

Parametrar

account_url
str
Obligatorisk

URL:en till DataLake-lagringskontot. Andra entiteter som ingår i URL-sökvägen (t.ex. filsystem eller fil) tas bort. Den här URL:en kan även autentiseras med en SAS-token.

credential
standardvärde: None

De autentiseringsuppgifter som ska autentiseras med. Detta är valfritt om konto-URL:en redan har en SAS-token. Värdet kan vara en SAS-tokensträng, en instans av en AzureSasCredential eller AzureNamedKeyCredential från azure.core.credentials, en kontodelad åtkomstnyckel eller en instans av en TokenCredentials-klass från azure.identity. Om resurs-URI:n redan innehåller en SAS-token ignoreras detta till förmån för en explicit autentiseringsuppgift

  • utom när det gäller AzureSasCredential, där de motstridiga SAS-token genererar en ValueError. Om du använder en instans av AzureNamedKeyCredential ska "namn" vara lagringskontots namn och "nyckel" ska vara lagringskontonyckeln.
api_version
str

Lagrings-API-versionen som ska användas för begäranden. Standardvärdet är den senaste tjänstversionen som är kompatibel med den aktuella SDK:en. Om du anger en äldre version kan det leda till minskad funktionskompatibilitet.

Exempel

Skapa DataLakeServiceClient från anslutningssträngen.


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

Skapa DataLakeServiceClient med Azure Identity-autentiseringsuppgifter.


   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)

Variabler

url
str

Den fullständiga slutpunkts-URL:en till datalake-tjänstslutpunkten.

primary_endpoint
str

Den fullständiga primära slutpunkts-URL:en.

primary_hostname
str

Värdnamnet för den primära slutpunkten.

Metoder

close

Den här metoden är att stänga de sockets som öppnats av klienten. Den behöver inte användas när du använder med en kontexthanterare.

create_file_system

Skapar ett nytt filsystem under det angivna kontot.

Om filsystemet med samma namn redan finns utlöses en ResourceExistsError. Den här metoden returnerar en klient som du kan interagera med det nyligen skapade filsystemet med.

delete_file_system

Markerar det angivna filsystemet för borttagning.

Filsystemet och alla filer som ingår i det tas senare bort under skräpinsamlingen. Om filsystemet inte hittas utlöses en ResourceNotFoundError.

from_connection_string

Skapa DataLakeServiceClient från en anslutningssträng.

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

get_directory_client

Få en klient att interagera med den angivna katalogen.

Katalogen behöver inte redan finnas.

get_file_client

Hämta en klient för att interagera med den angivna filen.

Filen behöver inte redan finnas.

get_file_system_client

Få en klient att interagera med det angivna filsystemet.

Filsystemet behöver inte redan finnas.

get_service_properties

Hämtar egenskaperna för ett lagringskontos datalake-tjänst, inklusive Azure Lagringsanalys.

Ny i version 12.4.0: Den här åtgärden introducerades i API-versionen "2020-06-12".

get_user_delegation_key

Hämta en användardelegeringsnyckel för signering av SAS-token. En tokenautentiseringsuppgift måste finnas på tjänstobjektet för att begäran ska lyckas.

list_file_systems

Returnerar en generator för att lista filsystemen under det angivna kontot.

Generatorn följer lättsamt fortsättningstoken som returneras av tjänsten och stoppas när alla filsystem har returnerats.

set_service_properties

Anger egenskaperna för ett lagringskontos Datalake-tjänst, inklusive Azure Lagringsanalys.

Ny i version 12.4.0: Den här åtgärden introducerades i API-versionen "2020-06-12".

Om ett element (t.ex. analytics_logging) lämnas som Ingen bevaras de befintliga inställningarna för tjänsten för den funktionen.

undelete_file_system

Återställer mjukt borttaget filsystem.

Åtgärden lyckas endast om den används inom det angivna antalet dagar som angetts i borttagningsprincipen för kvarhållning.

Ny i version 12.3.0: Den här åtgärden introducerades i API-versionen "2019-12-12".

close

Den här metoden är att stänga de sockets som öppnats av klienten. Den behöver inte användas när du använder med en kontexthanterare.

close() -> None

create_file_system

Skapar ett nytt filsystem under det angivna kontot.

Om filsystemet med samma namn redan finns utlöses en ResourceExistsError. Den här metoden returnerar en klient som du kan interagera med det nyligen skapade filsystemet med.

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

Parametrar

file_system
str
Obligatorisk

Namnet på filsystemet som ska skapas.

metadata
dict(str, str)
Obligatorisk

En diktamen med namn/värde-par som ska associeras med filsystemet som metadata. Exempel: {'Category':'test'}

public_access
PublicAccess
Obligatorisk

Möjliga värden är: filsystem, fil.

encryption_scope_options
dict eller EncryptionScopeOptions

Anger standardkrypteringsomfånget som ska anges i filsystemet och används för alla framtida skrivningar.

Nytt i version 12.9.0.

timeout
int

Anger tidsgränsen på serversidan för åtgärden i sekunder. Mer information finns i: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Det här värdet spåras eller verifieras inte på klienten. Information om hur du konfigurerar tidsgränser för nätverk på klientsidan finns här.

Returtyp

Exempel

Skapa ett filsystem i datalake-tjänsten.


   datalake_service_client.create_file_system("filesystem")

delete_file_system

Markerar det angivna filsystemet för borttagning.

Filsystemet och alla filer som ingår i det tas senare bort under skräpinsamlingen. Om filsystemet inte hittas utlöses en ResourceNotFoundError.

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

Parametrar

file_system
str eller FileSystemProperties
Obligatorisk

Filsystemet som ska tas bort. Detta kan antingen vara namnet på filsystemet eller en instans av FileSystemProperties.

lease
DataLakeLeaseClient eller str

Om det anges lyckas delete_file_system endast om filsystemets lån är aktivt och matchar det här ID:t. Krävs om filsystemet har ett aktivt lån.

if_modified_since
datetime

Ett DateTime-värde. Azure förväntar sig att det datumvärde som skickas in är UTC. Om tidszonen ingår konverteras alla icke-UTC-datetimes till UTC. Om ett datum skickas utan tidszonsinformation antas det vara UTC. Ange det här huvudet för att utföra åtgärden endast om resursen har ändrats sedan den angivna tiden.

if_unmodified_since
datetime

Ett DateTime-värde. Azure förväntar sig att det datumvärde som skickas in är UTC. Om tidszonen ingår konverteras alla icke-UTC-datetimes till UTC. Om ett datum skickas utan tidszonsinformation antas det vara UTC. Ange det här huvudet för att utföra åtgärden endast om resursen inte har ändrats sedan det angivna datumet/tiden.

etag
str

Ett ETag-värde eller jokertecknet (*). Används för att kontrollera om resursen har ändrats och agera enligt villkoret som anges av parametern match_condition .

match_condition
MatchConditions

Matchningsvillkoret som ska användas på etag.

timeout
int

Anger tidsgränsen på serversidan för åtgärden i sekunder. Mer information finns i: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Det här värdet spåras eller verifieras inte på klienten. Information om hur du konfigurerar tidsgränser för nätverk på klientsidan finns här.

Returtyp

Exempel

Ta bort ett filsystem i datalake-tjänsten.


   datalake_service_client.delete_file_system("filesystem")

from_connection_string

Skapa DataLakeServiceClient från en anslutningssträng.

: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

Parametrar

conn_str
str
Obligatorisk

En anslutningssträng till ett Azure Storage-konto.

credential
standardvärde: None

De autentiseringsuppgifter som ska autentiseras med. Det här är valfritt om konto-URL:en redan har en SAS-token, eller om anslutningssträngen redan har värden för delad åtkomstnyckel. Värdet kan vara en SAS-tokensträng, en instans av en AzureSasCredential från azure.core.credentials, en kontodelad åtkomstnyckel eller en instans av en TokenCredentials-klass från azure.identity. Autentiseringsuppgifterna som anges här har företräde framför dem i anslutningssträngen.

Exempel

Skapa DataLakeServiceClient från en anslutningssträng.


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

get_directory_client

Få en klient att interagera med den angivna katalogen.

Katalogen behöver inte redan finnas.

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

Parametrar

file_system
str eller FileSystemProperties
Obligatorisk

Det filsystem som katalogen finns i. Detta kan antingen vara namnet på filsystemet eller en instans av FileSystemProperties.

directory
str eller DirectoryProperties
Obligatorisk

Katalogen som du vill interagera med. Detta kan antingen vara namnet på katalogen eller en instans av DirectoryProperties.

Returer

En DataLakeDirectoryClient.

Returtyp

Exempel

Hämta katalogklienten för att interagera med en specifik katalog.


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

get_file_client

Hämta en klient för att interagera med den angivna filen.

Filen behöver inte redan finnas.

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

Parametrar

file_system
str eller FileSystemProperties
Obligatorisk

Filsystemet som filen finns i. Detta kan antingen vara namnet på filsystemet eller en instans av FileSystemProperties.

file_path
str eller FileProperties
Obligatorisk

Filen som du vill interagera med. Detta kan antingen vara den fullständiga sökvägen till filen (från rotkatalogen) eller en instans av FileProperties. T.ex. katalog/underkatalog/fil

Returer

En DataLakeFileClient.

Returtyp

Exempel

Hämta filklienten för att interagera med en specifik fil.


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

get_file_system_client

Få en klient att interagera med det angivna filsystemet.

Filsystemet behöver inte redan finnas.

get_file_system_client(file_system: FileSystemProperties | str) -> FileSystemClient

Parametrar

file_system
str eller FileSystemProperties
Obligatorisk

Filsystemet. Detta kan antingen vara namnet på filsystemet eller en instans av FileSystemProperties.

Returer

En FileSystemClient.

Returtyp

Exempel

Hämta filsystemklienten för att interagera med ett specifikt filsystem.


   # 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

Hämtar egenskaperna för ett lagringskontos datalake-tjänst, inklusive Azure Lagringsanalys.

Ny i version 12.4.0: Den här åtgärden introducerades i API-versionen "2020-06-12".

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

Parametrar

timeout
int

Anger tidsgränsen på serversidan för åtgärden i sekunder. Mer information finns i: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Det här värdet spåras eller verifieras inte på klienten. Information om hur du konfigurerar tidsgränser för nätverk på klientsidan finns här.

Returer

Ett objekt som innehåller datalake-tjänstegenskaper som analysloggning, tim-/minutmått, cors-regler osv.

Returtyp

get_user_delegation_key

Hämta en användardelegeringsnyckel för signering av SAS-token. En tokenautentiseringsuppgift måste finnas på tjänstobjektet för att begäran ska lyckas.

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

Parametrar

key_start_time
datetime
Obligatorisk

Ett DateTime-värde. Anger när nyckeln blir giltig.

key_expiry_time
datetime
Obligatorisk

Ett DateTime-värde. Anger när nyckeln slutar vara giltig.

timeout
int

Anger tidsgränsen på serversidan för åtgärden i sekunder. Mer information finns i: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Det här värdet spåras eller verifieras inte på klienten. Information om hur du konfigurerar tidsgränser för nätverk på klientsidan finns här.

Returer

Användarens delegeringsnyckel.

Returtyp

Exempel

Hämta användardelegeringsnyckeln från datalake-tjänstklienten.


   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

Returnerar en generator för att lista filsystemen under det angivna kontot.

Generatorn följer lättsamt fortsättningstoken som returneras av tjänsten och stoppas när alla filsystem har returnerats.

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

Parametrar

name_starts_with
str
Obligatorisk

Filtrerar resultatet för att endast returnera filsystem vars namn börjar med det angivna prefixet.

include_metadata
bool
Obligatorisk

Anger att filsystemmetadata ska returneras i svaret. Standardvärdet är Falskt.

results_per_page
int

Det maximala antalet filsystemnamn som ska hämtas per API-anrop. Om begäran inte anger returnerar servern upp till 5 000 objekt per sida.

timeout
int

Anger tidsgränsen på serversidan för åtgärden i sekunder. Mer information finns i: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Det här värdet spåras eller verifieras inte på klienten. Information om hur du konfigurerar tidsgränser för nätverk på klientsidan finns här.

include_deleted
bool

Anger att borttagna filsystem ska returneras i svaret. Detta gäller för ett konto som är aktiverat för återställning av filsystem. Standardvärdet är Falskt. .. versionadded:: 12.3.0

include_system
bool

Flagga som anger att systemfilsystem ska inkluderas. .. versionadded:: 12.6.0

Returer

En iterabel (automatisk växling) av FileSystemEgenskaper.

Returtyp

Exempel

Visa en lista över filsystemen i datalake-tjänsten.


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

set_service_properties

Anger egenskaperna för ett lagringskontos Datalake-tjänst, inklusive Azure Lagringsanalys.

Ny i version 12.4.0: Den här åtgärden introducerades i API-versionen "2020-06-12".

Om ett element (t.ex. analytics_logging) lämnas som Ingen bevaras de befintliga inställningarna för tjänsten för den funktionen.

set_service_properties(**kwargs: Any) -> None

Parametrar

analytics_logging

Grupperar loggningsinställningarna för Azure Analytics.

hour_metrics

Inställningarna för timmått ger en sammanfattning av begärandestatistik grupperad efter API i timaggregeringar.

minute_metrics

Minutmåttinställningarna tillhandahåller begärandestatistik för varje minut.

cors

Du kan inkludera upp till fem CorsRule-element i listan. Om en tom lista anges tas alla CORS-regler bort och CORS inaktiveras för tjänsten.

target_version
str

Anger den standardversion som ska användas för begäranden om en inkommande begärans version inte har angetts.

delete_retention_policy

Kvarhållningsprincipen för borttagning anger om borttagna filer/kataloger ska behållas. Den anger också antalet dagar och versioner av filen/katalogen som ska behållas.

static_website

Anger om funktionen för statisk webbplats är aktiverad och om ja anger indexdokumentet och 404-feldokumentet som ska användas.

timeout
int

Anger tidsgränsen på serversidan för åtgärden i sekunder. Mer information finns i: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Det här värdet spåras eller verifieras inte på klienten. Information om hur du konfigurerar tidsgränser för nätverk på klientsidan finns här.

Returtyp

undelete_file_system

Återställer mjukt borttaget filsystem.

Åtgärden lyckas endast om den används inom det angivna antalet dagar som angetts i borttagningsprincipen för kvarhållning.

Ny i version 12.3.0: Den här åtgärden introducerades i API-versionen "2019-12-12".

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

Parametrar

name
str
Obligatorisk

Anger namnet på det borttagna filsystemet som ska återställas.

deleted_version
str
Obligatorisk

Anger vilken version av det borttagna filsystemet som ska återställas.

timeout
int

Anger tidsgränsen på serversidan för åtgärden i sekunder. Mer information finns i: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Det här värdet spåras eller verifieras inte på klienten. Information om hur du konfigurerar tidsgränser för nätverk på klientsidan finns här.

Returer

Den återställde solft-borttagna FileSystemClient.

Returtyp

Attribut

api_version

Den version av lagrings-API:et som används för begäranden.

location_mode

Det platsläge som klienten använder för närvarande.

Som standard är detta "primärt". Alternativen är "primär" och "sekundär".

primary_endpoint

Den fullständiga primära slutpunkts-URL:en.

primary_hostname

Värdnamnet för den primära slutpunkten.

secondary_endpoint

Den fullständiga sekundära slutpunkts-URL:en om den har konfigurerats.

Om den inte är tillgänglig utlöses en ValueError. Om du uttryckligen vill ange ett sekundärt värdnamn använder du det valfria nyckelordsargumentet secondary_hostname vid instansiering.

Undantag

secondary_hostname

Värdnamnet för den sekundära slutpunkten.

Om det inte är tillgängligt blir det Ingen. Om du uttryckligen vill ange ett sekundärt värdnamn använder du det valfria nyckelordsargumentet secondary_hostname vid instansiering.

url

Den fullständiga slutpunkts-URL:en till den här entiteten, inklusive SAS-token om den används.

Detta kan vara antingen den primära slutpunkten eller den sekundära slutpunkten beroende på aktuell location_mode. :returns: Den fullständiga slutpunkts-URL:en till den här entiteten, inklusive SAS-token om den används. :rtype: str