DataLakeServiceClient Klasa
Klient do interakcji z usługą DataLake na poziomie konta.
Ten klient udostępnia operacje pobierania i konfigurowania właściwości konta, a także listy, tworzenia i usuwania systemów plików w ramach konta. W przypadku operacji związanych z określonym systemem plików, katalogiem lub plikiem klienci dla tych jednostek mogą być również pobierani przy użyciu funkcji get_client .
- Dziedziczenie
-
azure.storage.filedatalake._shared.base_client.StorageAccountHostsMixinDataLakeServiceClient
Konstruktor
DataLakeServiceClient(account_url: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any)
Parametry
- account_url
- str
Adres URL konta magazynu DataLake. Wszystkie inne jednostki uwzględnione w ścieżce adresu URL (np. system plików lub plik) zostaną odrzucone. Ten adres URL można opcjonalnie uwierzytelnić przy użyciu tokenu SAS.
- credential
Poświadczenia, za pomocą których należy się uwierzytelniać. Jest to opcjonalne, jeśli adres URL konta ma już token SAS. Wartość może być ciągiem tokenu sygnatury dostępu współdzielonego, wystąpieniem klasy AzureSasCredential lub AzureNamedKeyCredential z elementu azure.core.credentials, kluczem dostępu współużytkowanego konta lub wystąpieniem klasy TokenCredentials z klasy azure.identity. Jeśli identyfikator URI zasobu zawiera już token sygnatury dostępu współdzielonego, zostanie on zignorowany na rzecz jawnego poświadczenia
- z wyjątkiem przypadków usługi AzureSasCredential, gdzie powodujące konflikty tokeny SYGNATURy dostępu współdzielonego spowodują podniesienie wartościError. Jeśli używasz wystąpienia elementu AzureNamedKeyCredential, wartość "name" powinna być nazwą konta magazynu, a "klucz" powinien być kluczem konta magazynu.
- api_version
- str
Wersja interfejsu API usługi Storage do użycia dla żądań. Wartość domyślna to najnowsza wersja usługi zgodna z bieżącym zestawem SDK. Ustawienie starszej wersji może spowodować zmniejszenie zgodności funkcji.
Przykłady
Tworzenie elementu DataLakeServiceClient na podstawie parametrów połączenia.
from azure.storage.filedatalake import DataLakeServiceClient
datalake_service_client = DataLakeServiceClient.from_connection_string(self.connection_string)
Tworzenie obiektu DataLakeServiceClient przy użyciu poświadczeń tożsamości platformy Azure.
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)
Zmienne
- url
- str
Pełny adres URL punktu końcowego do punktu końcowego usługi datalake.
- primary_endpoint
- str
Pełny podstawowy adres URL punktu końcowego.
- primary_hostname
- str
Nazwa hosta podstawowego punktu końcowego.
Metody
close |
Ta metoda polega na zamknięciu gniazd otwartych przez klienta. Nie trzeba jej używać w przypadku używania z menedżerem kontekstu. |
create_file_system |
Tworzy nowy system plików na określonym koncie. Jeśli system plików o tej samej nazwie już istnieje, zostanie zgłoszony błąd ResourceExistsError. Ta metoda zwraca klienta, z którym można korzystać z nowo utworzonego systemu plików. |
delete_file_system |
Oznacza określony system plików do usunięcia. System plików i wszystkie zawarte w nim pliki są później usuwane podczas odzyskiwania pamięci. Jeśli system plików nie zostanie znaleziony, zostanie zgłoszony błąd ResourceNotFoundError. |
from_connection_string |
Utwórz element DataLakeServiceClient na podstawie parametrów połączenia. :return a DataLakeServiceClient :rtype ~azure.storage.filedatalake.DataLakeServiceClient |
get_directory_client |
Pobierz klienta do interakcji z określonym katalogiem. Katalog nie musi jeszcze istnieć. |
get_file_client |
Pobierz klienta do interakcji z określonym plikiem. Plik nie musi jeszcze istnieć. |
get_file_system_client |
Pobierz klienta w celu interakcji z określonym systemem plików. System plików nie musi jeszcze istnieć. |
get_service_properties |
Pobiera właściwości usługi datalake konta magazynu, w tym usługi Azure analityka magazynu. Nowość w wersji 12.4.0: Ta operacja została wprowadzona w interfejsie API w wersji 2020-06-12. |
get_user_delegation_key |
Uzyskaj klucz delegowania użytkownika na potrzeby podpisywania tokenów SAS. Poświadczenia tokenu muszą być obecne w obiekcie usługi, aby to żądanie powiodło się. |
list_file_systems |
Zwraca generator, aby wyświetlić listę systemów plików w ramach określonego konta. Generator będzie z opóźnieniem śledzić tokeny kontynuacji zwracane przez usługę i zatrzymywać się po zwróceniu wszystkich systemów plików. |
set_service_properties |
Ustawia właściwości usługi Datalake konta magazynu, w tym azure analityka magazynu. Nowość w wersji 12.4.0: Ta operacja została wprowadzona w interfejsie API w wersji 2020-06-12. Jeśli element (np. analytics_logging) zostanie pozostawiony jako Brak, istniejące ustawienia usługi dla tej funkcji zostaną zachowane. |
undelete_file_system |
Przywraca nietrwale usunięty system plików. Operacja zakończy się powodzeniem tylko wtedy, gdy zostanie użyta w określonej liczbie dni ustawionej w zasadach przechowywania usuwania. Nowość w wersji 12.3.0: Ta operacja została wprowadzona w interfejsie API w wersji "2019-12-12". |
close
Ta metoda polega na zamknięciu gniazd otwartych przez klienta. Nie trzeba jej używać w przypadku używania z menedżerem kontekstu.
close() -> None
create_file_system
Tworzy nowy system plików na określonym koncie.
Jeśli system plików o tej samej nazwie już istnieje, zostanie zgłoszony błąd ResourceExistsError. Ta metoda zwraca klienta, z którym można korzystać z nowo utworzonego systemu plików.
create_file_system(file_system: FileSystemProperties | str, metadata: Dict[str, str] | None = None, public_access: PublicAccess | None = None, **kwargs) -> FileSystemClient
Parametry
Dykt z parami name-value do skojarzenia z systemem plików jako metadanymi. Przykład: {'Category':'test'}
- encryption_scope_options
- dict lub EncryptionScopeOptions
Określa domyślny zakres szyfrowania, który ma być ustawiony w systemie plików i jest używany dla wszystkich przyszłych zapisów.
Nowość w wersji 12.9.0.
- timeout
- int
Ustawia limit czasu po stronie serwera dla operacji w sekundach. Aby uzyskać więcej informacji, zobacz https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Ta wartość nie jest śledzona ani weryfikowana na kliencie. Aby skonfigurować limity czasu sieci po stronie klienta, zobacz tutaj.
Typ zwracany
Przykłady
Tworzenie systemu plików w usłudze datalake.
datalake_service_client.create_file_system("filesystem")
delete_file_system
Oznacza określony system plików do usunięcia.
System plików i wszystkie zawarte w nim pliki są później usuwane podczas odzyskiwania pamięci. Jeśli system plików nie zostanie znaleziony, zostanie zgłoszony błąd ResourceNotFoundError.
delete_file_system(file_system: FileSystemProperties | str, **kwargs) -> FileSystemClient
Parametry
- file_system
- str lub FileSystemProperties
System plików do usunięcia. Może to być nazwa systemu plików lub wystąpienie klasy FileSystemProperties.
- lease
- DataLakeLeaseClient lub str
Jeśli zostanie określony, delete_file_system zakończy się powodzeniem tylko wtedy, gdy dzierżawa systemu plików jest aktywna i jest zgodna z tym identyfikatorem. Wymagane, jeśli system plików ma aktywną dzierżawę.
- if_modified_since
- datetime
Wartość typu Data/godzina. Platforma Azure oczekuje, że wartość daty przekazana w formacie UTC będzie mieć wartość UTC. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na UTC. Jeśli data jest przekazywana bez informacji o strefie czasowej, przyjmuje się, że jest to utc. Określ ten nagłówek, aby wykonać operację tylko wtedy, gdy zasób został zmodyfikowany od określonego czasu.
- if_unmodified_since
- datetime
Wartość typu Data/godzina. Platforma Azure oczekuje, że wartość daty przekazana w formacie UTC będzie mieć wartość UTC. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na UTC. Jeśli data jest przekazywana bez informacji o strefie czasowej, przyjmuje się, że jest to utc. Określ ten nagłówek, aby wykonać operację tylko wtedy, gdy zasób nie został zmodyfikowany od określonej daty/godziny.
- etag
- str
Wartość ETag lub symbol wieloznaczny (*). Służy do sprawdzania, czy zasób uległ zmianie i działa zgodnie z warunkiem określonym przez parametr match_condition .
- match_condition
- MatchConditions
Warunek dopasowania do użycia na etagu.
- timeout
- int
Ustawia limit czasu po stronie serwera dla operacji w sekundach. Aby uzyskać więcej informacji, zobacz https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Ta wartość nie jest śledzona ani weryfikowana na kliencie. Aby skonfigurować limity czasu sieci po stronie klienta, zobacz tutaj.
Typ zwracany
Przykłady
Usuwanie systemu plików w usłudze datalake.
datalake_service_client.delete_file_system("filesystem")
from_connection_string
Utwórz element DataLakeServiceClient na podstawie parametrów połączenia.
: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
Parametry
- credential
Poświadczenia, za pomocą których należy się uwierzytelniać. Jest to opcjonalne, jeśli adres URL konta ma już token sygnatury dostępu współdzielonego lub parametry połączenia mają już wartości klucza dostępu współdzielonego. Wartość może być ciągiem tokenu sygnatury dostępu współdzielonego, wystąpieniem klasy AzureSasCredential from azure.core.credentials, kluczem dostępu współużytkowanego konta lub wystąpieniem klasy TokenCredentials z witryny azure.identity. Poświadczenia podane w tym miejscu będą miały pierwszeństwo przed tymi w parametrach połączenia.
Przykłady
Tworzenie elementu DataLakeServiceClient na podstawie parametrów połączenia.
from azure.storage.filedatalake import DataLakeServiceClient
datalake_service_client = DataLakeServiceClient.from_connection_string(self.connection_string)
get_directory_client
Pobierz klienta do interakcji z określonym katalogiem.
Katalog nie musi jeszcze istnieć.
get_directory_client(file_system: FileSystemProperties | str, directory: DirectoryProperties | str) -> DataLakeDirectoryClient
Parametry
- file_system
- str lub FileSystemProperties
System plików, w którego znajduje się katalog. Może to być nazwa systemu plików lub wystąpienie klasy FileSystemProperties.
- directory
- str lub DirectoryProperties
Katalog, z którym należy korzystać. Może to być nazwa katalogu lub wystąpienie właściwości DirectoryProperties.
Zwraca
Element DataLakeDirectoryClient.
Typ zwracany
Przykłady
Pobieranie klienta katalogu do interakcji z określonym katalogiem.
directory_client = datalake_service_client.get_directory_client(file_system_client.file_system_name,
"mydirectory")
get_file_client
Pobierz klienta do interakcji z określonym plikiem.
Plik nie musi jeszcze istnieć.
get_file_client(file_system: FileSystemProperties | str, file_path: FileProperties | str) -> DataLakeFileClient
Parametry
- file_system
- str lub FileSystemProperties
System plików, w którego znajduje się plik. Może to być nazwa systemu plików lub wystąpienie klasy FileSystemProperties.
- file_path
- str lub FileProperties
Plik, z którym należy wchodzić w interakcję. Może to być pełna ścieżka pliku (z katalogu głównego) lub wystąpienie właściwości FileProperties. Np. katalog/podkatalog/plik
Zwraca
Element DataLakeFileClient.
Typ zwracany
Przykłady
Pobieranie klienta pliku do interakcji z określonym plikiem.
file_client = datalake_service_client.get_file_client(file_system_client.file_system_name, "myfile")
get_file_system_client
Pobierz klienta w celu interakcji z określonym systemem plików.
System plików nie musi jeszcze istnieć.
get_file_system_client(file_system: FileSystemProperties | str) -> FileSystemClient
Parametry
- file_system
- str lub FileSystemProperties
System plików. Może to być nazwa systemu plików lub wystąpienie klasy FileSystemProperties.
Zwraca
Element FileSystemClient.
Typ zwracany
Przykłady
Pobieranie klienta systemu plików w celu interakcji z określonym systemem plików.
# 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
Pobiera właściwości usługi datalake konta magazynu, w tym usługi Azure analityka magazynu.
Nowość w wersji 12.4.0: Ta operacja została wprowadzona w interfejsie API w wersji 2020-06-12.
get_service_properties(**kwargs: Any) -> Dict[str, Any]
Parametry
- timeout
- int
Ustawia limit czasu po stronie serwera dla operacji w sekundach. Aby uzyskać więcej informacji, zobacz https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Ta wartość nie jest śledzona ani weryfikowana na kliencie. Aby skonfigurować limity czasu sieci po stronie klienta, zobacz tutaj.
Zwraca
Obiekt zawierający właściwości usługi datalake, takie jak rejestrowanie analiz, metryki godzin/minuty, reguły cors itp.
Typ zwracany
get_user_delegation_key
Uzyskaj klucz delegowania użytkownika na potrzeby podpisywania tokenów SAS. Poświadczenia tokenu muszą być obecne w obiekcie usługi, aby to żądanie powiodło się.
get_user_delegation_key(key_start_time: datetime, key_expiry_time: datetime, **kwargs: Any) -> UserDelegationKey
Parametry
- key_start_time
- datetime
Wartość typu Data/godzina. Wskazuje, kiedy klucz staje się prawidłowy.
- key_expiry_time
- datetime
Wartość typu Data/godzina. Wskazuje, kiedy klucz przestanie być prawidłowy.
- timeout
- int
Ustawia limit czasu po stronie serwera dla operacji w sekundach. Aby uzyskać więcej informacji, zobacz https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Ta wartość nie jest śledzona ani weryfikowana na kliencie. Aby skonfigurować limity czasu sieci po stronie klienta, zobacz tutaj.
Zwraca
Klucz delegowania użytkownika.
Typ zwracany
Przykłady
Pobierz klucz delegowania użytkownika z klienta usługi 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
Zwraca generator, aby wyświetlić listę systemów plików w ramach określonego konta.
Generator będzie z opóźnieniem śledzić tokeny kontynuacji zwracane przez usługę i zatrzymywać się po zwróceniu wszystkich systemów plików.
list_file_systems(name_starts_with: str | None = None, include_metadata: bool | None = None, **kwargs) -> ItemPaged[FileSystemProperties]
Parametry
- name_starts_with
- str
Filtruje wyniki, aby zwracać tylko systemy plików, których nazwy zaczynają się od określonego prefiksu.
- include_metadata
- bool
Określa, że metadane systemu plików są zwracane w odpowiedzi. Wartość domyślna to False.
- results_per_page
- int
Maksymalna liczba nazw systemu plików do pobrania na wywołanie interfejsu API. Jeśli żądanie nie określi, serwer zwróci maksymalnie 5000 elementów na stronę.
- timeout
- int
Ustawia limit czasu po stronie serwera dla operacji w sekundach. Aby uzyskać więcej informacji, zobacz https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Ta wartość nie jest śledzona ani weryfikowana na kliencie. Aby skonfigurować limity czasu sieci po stronie klienta, zobacz tutaj.
- include_deleted
- bool
Określa, że usunięte systemy plików mają być zwracane w odpowiedzi. Dotyczy to konta z włączoną obsługą przywracania systemu plików. Wartość domyślna to False. .. versionadded:: 12.3.0
- include_system
- bool
Flaga określająca, że należy uwzględnić systemowe systemy plików. .. versionadded:: 12.6.0
Zwraca
Iterowalne (automatyczne stronicowanie) właściwości systemu plików.
Typ zwracany
Przykłady
Wyświetlanie listy systemów plików w usłudze datalake.
file_systems = datalake_service_client.list_file_systems()
for file_system in file_systems:
print(file_system.name)
set_service_properties
Ustawia właściwości usługi Datalake konta magazynu, w tym azure analityka magazynu.
Nowość w wersji 12.4.0: Ta operacja została wprowadzona w interfejsie API w wersji 2020-06-12.
Jeśli element (np. analytics_logging) zostanie pozostawiony jako Brak, istniejące ustawienia usługi dla tej funkcji zostaną zachowane.
set_service_properties(**kwargs: Any) -> None
Parametry
- analytics_logging
Grupuje ustawienia rejestrowania usługi Azure Analytics.
- hour_metrics
Ustawienia metryk godzin zawierają podsumowanie statystyk żądań pogrupowanych według interfejsu API w agregacjach godzinowych.
- minute_metrics
Ustawienia metryk minut zapewniają statystyki żądań dla każdej minuty.
- cors
Na liście można uwzględnić maksymalnie pięć elementów CorsRule. Jeśli zostanie określona pusta lista, wszystkie reguły CORS zostaną usunięte, a mechanizm CORS zostanie wyłączony dla usługi.
- target_version
- str
Wskazuje domyślną wersję, która ma być używana dla żądań, jeśli nie określono wersji żądania przychodzącego.
- delete_retention_policy
Zasady przechowywania usuwania określają, czy zachować usunięte pliki/katalogi. Określa również liczbę dni i wersje pliku/katalogu, które mają być zachowywane.
- static_website
Określa, czy funkcja statycznej witryny internetowej jest włączona, a jeśli tak, wskazuje dokument indeksu i dokument o błędzie 404 do użycia.
- timeout
- int
Ustawia limit czasu po stronie serwera dla operacji w sekundach. Aby uzyskać więcej informacji, zobacz https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Ta wartość nie jest śledzona ani weryfikowana na kliencie. Aby skonfigurować limity czasu sieci po stronie klienta, zobacz tutaj.
Typ zwracany
undelete_file_system
Przywraca nietrwale usunięty system plików.
Operacja zakończy się powodzeniem tylko wtedy, gdy zostanie użyta w określonej liczbie dni ustawionej w zasadach przechowywania usuwania.
Nowość w wersji 12.3.0: Ta operacja została wprowadzona w interfejsie API w wersji "2019-12-12".
undelete_file_system(name: str, deleted_version: str, **kwargs: Any) -> FileSystemClient
Parametry
- timeout
- int
Ustawia limit czasu po stronie serwera dla operacji w sekundach. Aby uzyskać więcej informacji, zobacz https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Ta wartość nie jest śledzona ani weryfikowana na kliencie. Aby skonfigurować limity czasu sieci po stronie klienta, zobacz tutaj.
Zwraca
Przywrócony element solft-deleted FileSystemClient.
Typ zwracany
Atrybuty
api_version
Wersja interfejsu API usługi Storage używana dla żądań.
location_mode
Tryb lokalizacji używany przez klienta.
Domyślnie będzie to "podstawowe". Opcje obejmują "podstawowe" i "pomocnicze".
primary_endpoint
Pełny podstawowy adres URL punktu końcowego.
primary_hostname
Nazwa hosta podstawowego punktu końcowego.
secondary_endpoint
Pełny pomocniczy adres URL punktu końcowego, jeśli został skonfigurowany.
Jeśli parametr ValueError nie jest dostępny, zostanie zgłoszony. Aby jawnie określić pomocniczą nazwę hosta, użyj opcjonalnego argumentu słowa kluczowego secondary_hostname wystąpienia.
Wyjątki
secondary_hostname
Nazwa hosta pomocniczego punktu końcowego.
Jeśli ta opcja nie będzie dostępna, będzie to Brak. Aby jawnie określić pomocniczą nazwę hosta, użyj opcjonalnego argumentu słowa kluczowego secondary_hostname wystąpienia.
url
Pełny adres URL punktu końcowego do tej jednostki, w tym token SAS, jeśli jest używany.
Może to być podstawowy punkt końcowy lub pomocniczy punkt końcowy w zależności od bieżącego location_modeelementu . :zwraca: pełny adres URL punktu końcowego do tej jednostki, w tym token SAS, jeśli jest używany. :rtype: str
Azure SDK for Python