FileSystemClient Klasa

Klient do interakcji z określonym systemem plików, nawet jeśli ten system plików nie może jeszcze istnieć.

W przypadku operacji związanych z określonym katalogiem lub plikiem w tym systemie plików można pobrać klienta katalogu lub klienta plików przy użyciu get_directory_client funkcji lub .get_file_client

Dziedziczenie
azure.storage.filedatalake._shared.base_client.StorageAccountHostsMixin
FileSystemClient

Konstruktor

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

Parametry

account_url
str
Wymagane

Identyfikator URI konta magazynu.

file_system_name
str
Wymagane

System plików dla katalogu lub plików.

credential
wartość domyślna: None

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

Pobierz element FileSystemClient z istniejącej klasy DataLakeServiceClient.


   # 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")

Zmienne

url
str

Pełny adres URL punktu końcowego do systemu plików, w tym token SAS, jeśli jest używany.

primary_endpoint
str

Pełny podstawowy adres URL punktu końcowego.

primary_hostname
str

Nazwa hosta podstawowego punktu końcowego.

Metody

acquire_lease

Żąda nowej dzierżawy. Jeśli system plików nie ma aktywnej dzierżawy, usługa DataLake tworzy dzierżawę systemu plików i zwraca nowy identyfikator dzierżawy.

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_directory

Tworzenie katalogu

create_file

Tworzenie pliku

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_directory

Oznacza określoną ścieżkę do usunięcia.

delete_file

Oznacza określony plik do usunięcia.

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.

exists

Zwraca wartość True, jeśli system plików istnieje i zwraca wartość False w przeciwnym razie.

from_connection_string

Utwórz element FileSystemClient na podstawie parametrów połączenia.

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

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_access_policy

Pobiera uprawnienia dla określonego systemu plików. Uprawnienia wskazują, czy dane systemu plików mogą być dostępne publicznie.

get_file_system_properties

Zwraca wszystkie metadane zdefiniowane przez użytkownika i właściwości systemu dla określonego systemu plików. Zwrócone dane nie zawierają listy ścieżek systemu plików.

get_paths

Zwraca generator, aby wyświetlić listę ścieżek (mogą to być pliki lub katalogi) w określonym systemie plików. Generator będzie leniwie podążać za tokenami kontynuacji zwróconymi przez usługę.

list_deleted_paths

Zwraca generator, aby wyświetlić listę usuniętych ścieżek (plików lub katalogu) w określonym systemie plików. Generator będzie leniwie podążać za tokenami kontynuacji zwróconymi przez usługę.

Nowość w wersji 12.4.0: Ta operacja została wprowadzona w interfejsie API w wersji 2020-06-12.

set_file_system_access_policy

Ustawia uprawnienia dla określonego systemu plików lub przechowywanych zasad dostępu, które mogą być używane z sygnaturami dostępu współdzielonego. Uprawnienia wskazują, czy pliki w systemie plików mogą być dostępne publicznie.

set_file_system_metadata

Ustawia co najmniej jedną parę nazwa-wartość zdefiniowaną przez użytkownika dla określonego systemu plików. Każde wywołanie tej operacji zastępuje wszystkie istniejące metadane dołączone do systemu plików. Aby usunąć wszystkie metadane z systemu plików, wywołaj tę operację bez dyktowania metadanych.

acquire_lease

Żąda nowej dzierżawy. Jeśli system plików nie ma aktywnej dzierżawy, usługa DataLake tworzy dzierżawę systemu plików i zwraca nowy identyfikator dzierżawy.

acquire_lease(lease_duration: int = -1, lease_id: str | None = None, **kwargs) -> DataLakeLeaseClient

Parametry

lease_duration
int
Wymagane

Określa czas trwania dzierżawy, w sekundach lub ujemny (-1) dla dzierżawy, która nigdy nie wygasa. Dzierżawa nieskończenie nieskończona może należeć do zakresu od 15 do 60 sekund. Nie można zmienić czasu trwania dzierżawy przy użyciu odnawiania ani zmiany. Wartość domyślna to -1 (nieskończona dzierżawa).

lease_id
str
Wymagane

Proponowany identyfikator dzierżawy w formacie ciągu GUID. Usługa DataLake zwraca wartość 400 (nieprawidłowe żądanie), jeśli proponowany identyfikator dzierżawy nie jest w poprawnym formacie.

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.

Zwraca

Obiekt DataLakeLeaseClient, który można uruchomić w menedżerze kontekstu.

Typ zwracany

Przykłady

Uzyskanie dzierżawy w systemie plików.


   # Acquire a lease on the file system
   lease = file_system_client.acquire_lease()

   # Delete file system by passing in the lease
   file_system_client.delete_file_system(lease=lease)

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_directory

Tworzenie katalogu

create_directory(directory: DirectoryProperties | str, metadata: Dict[str, str] | None = None, **kwargs) -> DataLakeDirectoryClient

Parametry

directory
str lub DirectoryProperties
Wymagane

Katalog, z którym należy korzystać. Może to być nazwa katalogu lub wystąpienie właściwości DirectoryProperties.

metadata
dict(str, str)
Wymagane

Pary name-value skojarzone z plikiem jako metadane.

content_settings
ContentSettings

Obiekt ContentSettings używany do ustawiania właściwości ścieżki.

lease
DataLakeLeaseClient lub str

Wymagane, jeśli plik ma aktywną dzierżawę. Wartość może być obiektem DataLakeLeaseClient lub identyfikatorem dzierżawy jako ciągiem.

umask
str

Opcjonalne i prawidłowe tylko wtedy, gdy hierarchiczna przestrzeń nazw jest włączona dla konta. Podczas tworzenia pliku lub katalogu, a folder nadrzędny nie ma domyślnej listy ACL, maska umask ogranicza uprawnienia do utworzenia pliku lub katalogu. Wynikowe uprawnienie jest podane przez użytkownika p & ^u, gdzie p jest uprawnieniem i jest maską umask. Jeśli na przykład wartość p to 0777 i wartość 0057, wynikowe uprawnienie to 0720. Domyślne uprawnienie to 0777 dla katalogu i 0666 dla pliku. Domyślna maska umask to 0027. Maska umask musi być określona w notacji 4-cyfrowej ósemkowej (np. 0766).

owner
str

Właściciel pliku lub katalogu.

group
str

Grupa będąca właścicielem pliku lub katalogu.

acl
str

Ustawia prawa kontroli dostępu POSIX w plikach i katalogach. Wartość jest rozdzielaną przecinkami listą wpisów kontroli dostępu. Każdy wpis kontroli dostępu (ACE) składa się z zakresu, typu, identyfikatora użytkownika lub grupy oraz uprawnień w formacie "[scope:][type]::[id]:[permissions]".

lease_id
str

Proponowany identyfikator dzierżawy w formacie ciągu GUID. Usługa DataLake zwraca wartość 400 (nieprawidłowe żądanie), jeśli proponowany identyfikator dzierżawy nie jest w poprawnym formacie.

lease_duration
int

Określa czas trwania dzierżawy, w sekundach lub ujemny (-1) dla dzierżawy, która nigdy nie wygasa. Dzierżawa nieskończenie nieskończona może należeć do zakresu od 15 do 60 sekund. Nie można zmienić czasu trwania dzierżawy przy użyciu odnawiania ani zmiany.

permissions
str

Opcjonalne i prawidłowe tylko wtedy, gdy hierarchiczna przestrzeń nazw jest włączona dla konta. Ustawia uprawnienia dostępu poSIX dla właściciela pliku, grupy właścicieli plików i innych. Każda klasa może mieć uprawnienia do odczytu, zapisu lub wykonywania. Bit sticky jest również obsługiwany. Obsługiwane są zarówno notacje symboliczne (rwxrw-rw-) i 4-cyfrowe ósemkowe (np. 0766).

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.

Zwraca

DataLakeDirectoryClient

Przykłady

Utwórz katalog w systemie plików.


   directory_client = file_system_client.create_directory("mydirectory")

create_file

Tworzenie pliku

create_file(file: FileProperties | str, **kwargs) -> DataLakeFileClient

Parametry

file
str lub FileProperties
Wymagane

Plik, z którym należy wchodzić w interakcję. Może to być nazwa pliku lub wystąpienie właściwości FileProperties.

content_settings
ContentSettings
Wymagane

Obiekt ContentSettings używany do ustawiania właściwości ścieżki.

metadata
dict(str, str)
Wymagane

Pary name-value skojarzone z plikiem jako metadane.

lease
DataLakeLeaseClient lub str

Wymagane, jeśli plik ma aktywną dzierżawę. Wartość może być obiektem DataLakeLeaseClient lub identyfikatorem dzierżawy jako ciągiem.

umask
str

Opcjonalne i prawidłowe tylko wtedy, gdy hierarchiczna przestrzeń nazw jest włączona dla konta. Podczas tworzenia pliku lub katalogu, a folder nadrzędny nie ma domyślnej listy ACL, maska umask ogranicza uprawnienia do utworzenia pliku lub katalogu. Wynikowe uprawnienie jest podane przez użytkownika p & ^u, gdzie p jest uprawnieniem i jest maską umask. Jeśli na przykład wartość p to 0777 i wartość 0057, wynikowe uprawnienie to 0720. Domyślne uprawnienie to 0777 dla katalogu i 0666 dla pliku. Domyślna maska umask to 0027. Maska umask musi być określona w notacji 4-cyfrowej ósemkowej (np. 0766).

owner
str

Właściciel pliku lub katalogu.

group
str

Grupa będąca właścicielem pliku lub katalogu.

acl
str

Ustawia prawa kontroli dostępu POSIX w plikach i katalogach. Wartość jest rozdzielaną przecinkami listą wpisów kontroli dostępu. Każdy wpis kontroli dostępu (ACE) składa się z zakresu, typu, identyfikatora użytkownika lub grupy oraz uprawnień w formacie "[scope:][type]::[id]:[permissions]".

lease_id
str

Proponowany identyfikator dzierżawy w formacie ciągu GUID. Usługa DataLake zwraca wartość 400 (nieprawidłowe żądanie), jeśli proponowany identyfikator dzierżawy nie jest w poprawnym formacie.

lease_duration
int

Określa czas trwania dzierżawy, w sekundach lub ujemny (-1) dla dzierżawy, która nigdy nie wygasa. Dzierżawa nieskończenie nieskończona może należeć do zakresu od 15 do 60 sekund. Nie można zmienić czasu trwania dzierżawy przy użyciu odnawiania ani zmiany.

expires_on
datetime lub int

Czas ustawiania pliku na wygaśnięcie. Jeśli typ expires_on jest int, czas wygaśnięcia zostanie ustawiony jako liczba milisekund upłynął od czasu utworzenia. Jeśli typ expires_on to data/godzina, godzina wygaśnięcia zostanie ustawiona bezwzględnie na podaną godzinę. Jeśli nie podano informacji o strefie czasowej, zostanie to zinterpretowane jako UTC.

permissions
str

Opcjonalne i prawidłowe tylko wtedy, gdy hierarchiczna przestrzeń nazw jest włączona dla konta. Ustawia uprawnienia dostępu poSIX dla właściciela pliku, grupy właścicieli plików i innych. Każda klasa może mieć uprawnienia do odczytu, zapisu lub wykonywania. Bit sticky jest również obsługiwany. Obsługiwane są zarówno notacje symboliczne (rwxrw-rw-) i 4-cyfrowe ósemkowe (np. 0766).

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.

Zwraca

DataLakeFileClient

Przykłady

Utwórz plik w systemie plików.


   file_client = file_system_client.create_file("myfile")

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(metadata: Dict[str, str] | None = None, public_access: PublicAccess | None = None, **kwargs) -> Dict[str, str | datetime]

Parametry

metadata
dict(str, str)
Wymagane

Dykt z parami name-value do skojarzenia z systemem plików jako metadanymi. Przykład: {'Category':'test'}

public_access
PublicAccess
Wymagane

Aby określić, czy dane w systemie plików mogą być dostępne publicznie i na poziomie dostępu.

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.

Zwraca

Słownik nagłówków odpowiedzi.

Typ zwracany

Przykłady

Tworzenie systemu plików w usłudze datalake.


   file_system_client.create_file_system()

delete_directory

Oznacza określoną ścieżkę do usunięcia.

delete_directory(directory: DirectoryProperties | str, **kwargs) -> DataLakeDirectoryClient

Parametry

directory
str lub DirectoryProperties
Wymagane

Katalog, z którym należy korzystać. Może to być nazwa katalogu lub wystąpienie właściwości DirectoryProperties.

lease
DataLakeLeaseClient lub str

Wymagane, jeśli plik ma aktywną dzierżawę. Wartość może być obiektem LeaseClient lub identyfikatorem dzierżawy jako ciągiem.

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.

Zwraca

DataLakeDirectoryClient

Przykłady

Usuń katalog w systemie plików.


   file_system_client.delete_directory("mydirectory")

delete_file

Oznacza określony plik do usunięcia.

delete_file(file: FileProperties | str, **kwargs) -> DataLakeFileClient

Parametry

file
str lub FileProperties
Wymagane

Plik, z którym należy wchodzić w interakcję. Może to być nazwa pliku lub wystąpienie właściwości FileProperties.

lease
DataLakeLeaseClient lub str

Wymagane, jeśli plik ma aktywną dzierżawę. Wartość może być obiektem LeaseClient lub identyfikatorem dzierżawy jako ciągiem.

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.

Zwraca

DataLakeFileClient

Przykłady

Usuń plik w systemie plików.


   file_system_client.delete_file("myfile")

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(**kwargs: Any) -> None

Parametry

lease
str lub DataLakeLeaseClient

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.


   file_system_client.delete_file_system()

exists

Zwraca wartość True, jeśli system plików istnieje i zwraca wartość False w przeciwnym razie.

exists(**kwargs: Any) -> bool

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

Prawda, jeśli istnieje system plików, w przeciwnym razie wartość False.

Typ zwracany

from_connection_string

Utwórz element FileSystemClient na podstawie parametrów połączenia.

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

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

Parametry

conn_str
str
Wymagane

Parametry połączenia z kontem usługi Azure Storage.

file_system_name
str
Wymagane

Nazwa systemu plików do interakcji.

credential
wartość domyślna: None

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 lub AzureNamedKeyCredential z elementu azure.core.credentials, kluczem dostępu współużytkowanego konta lub wystąpieniem klasy TokenCredentials z klasy azure.identity. Poświadczenia podane w tym miejscu będą miały pierwszeństwo przed tymi w parametrach połączenia. Jeśli używasz wystąpienia elementu AzureNamedKeyCredential, wartość "name" powinna być nazwą konta magazynu, a "klucz" powinien być kluczem konta magazynu.

Przykłady

Tworzenie elementu FileSystemClient na podstawie parametrów połączenia


   from azure.storage.filedatalake import FileSystemClient
   file_system_client = FileSystemClient.from_connection_string(self.connection_string, "filesystem")

get_directory_client

Pobierz klienta do interakcji z określonym katalogiem.

Katalog nie musi jeszcze istnieć.

get_directory_client(directory: DirectoryProperties | str) -> DataLakeDirectoryClient

Parametry

directory
str lub DirectoryProperties
Wymagane

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.


   # Get the DataLakeDirectoryClient from the FileSystemClient to interact with a specific file
   directory_client = file_system_client.get_directory_client("mynewdirectory")

get_file_client

Pobierz klienta do interakcji z określonym plikiem.

Plik nie musi jeszcze istnieć.

get_file_client(file_path: FileProperties | str) -> DataLakeFileClient

Parametry

file_path
str lub FileProperties
Wymagane

Plik, z którym należy wchodzić w interakcję. Może to być ś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.


   # Get the FileClient from the FileSystemClient to interact with a specific file
   file_client = file_system_client.get_file_client("mynewfile")

get_file_system_access_policy

Pobiera uprawnienia dla określonego systemu plików. Uprawnienia wskazują, czy dane systemu plików mogą być dostępne publicznie.

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

Parametry

lease
DataLakeLeaseClient lub str

Jeśli zostanie określony, operacja zakończy się powodzeniem tylko wtedy, gdy dzierżawa systemu plików jest aktywna i jest zgodna z tym identyfikatorem.

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

Uzyskiwanie dostępu do informacji o zasadach w dykt.

Typ zwracany

get_file_system_properties

Zwraca wszystkie metadane zdefiniowane przez użytkownika i właściwości systemu dla określonego systemu plików. Zwrócone dane nie zawierają listy ścieżek systemu plików.

get_file_system_properties(**kwargs: Any) -> FileSystemProperties

Parametry

lease
str lub DataLakeLeaseClient

Jeśli zostanie określony, get_file_system_properties zakończy się powodzeniem tylko wtedy, gdy dzierżawa systemu plików jest aktywna i jest zgodna z tym identyfikatorem.

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

Właściwości określonego systemu plików w obiekcie systemu plików.

Typ zwracany

Przykłady

Pobieranie właściwości w systemie plików.


   properties = file_system_client.get_file_system_properties()

get_paths

Zwraca generator, aby wyświetlić listę ścieżek (mogą to być pliki lub katalogi) w określonym systemie plików. Generator będzie leniwie podążać za tokenami kontynuacji zwróconymi przez usługę.

get_paths(path: str | None = None, recursive: bool | None = True, max_results: int | None = None, **kwargs) -> ItemPaged[PathProperties]

Parametry

path
str
Wymagane

Filtruje wyniki, aby zwracać tylko ścieżki w określonej ścieżce.

recursive
Optional[bool]
Wymagane

Opcjonalny. Ustaw wartość True dla cyklicznej wartości False dla iteracyjnej.

max_results
int
Wymagane

Opcjonalna wartość określająca maksymalną liczbę elementów do zwrócenia na stronę. Jeśli pominięto lub więcej niż 5000, odpowiedź będzie zawierać maksymalnie 5000 elementów na stronę.

upn

Opcjonalny. Prawidłowe tylko wtedy, gdy hierarchiczna przestrzeń nazw jest włączona dla konta. Jeśli wartość "true", wartości tożsamości użytkownika zwrócone w nagłówkach odpowiedzi x-ms-owner, x-ms-group i x-ms-acl zostaną przekształcone z identyfikatorów obiektów usługi Azure Active Directory na główne nazwy użytkowników. Jeśli wartość "false" zostanie zwrócona jako identyfikatory obiektów usługi Azure Active Directory. Wartość domyślna to false. Należy pamiętać, że identyfikatory obiektów grupy i aplikacji nie są tłumaczone, ponieważ nie mają unikatowych przyjaznych nazw.

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

Iterowalne (automatyczne stronicowanie) odpowiedź właściwości PathProperties.

Typ zwracany

Przykłady

Wyświetl listę ścieżek w systemie plików.


   path_list = file_system_client.get_paths()
   for path in path_list:
       print(path.name + '\n')

list_deleted_paths

Zwraca generator, aby wyświetlić listę usuniętych ścieżek (plików lub katalogu) w określonym systemie plików. Generator będzie leniwie podążać za tokenami kontynuacji zwróconymi przez usługę.

Nowość w wersji 12.4.0: Ta operacja została wprowadzona w interfejsie API w wersji 2020-06-12.

list_deleted_paths(**kwargs: Any) -> ItemPaged[DeletedPathProperties]

Parametry

path_prefix
str

Filtruje wyniki, aby zwracać tylko ścieżki w określonej ścieżce.

results_per_page
int

Opcjonalna wartość określająca maksymalną liczbę elementów do zwrócenia na stronę. Jeśli pominięto lub więcej niż 5000, odpowiedź będzie zawierać 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.

Zwraca

Iterable (auto-paging) odpowiedź DeletedPathProperties.

Typ zwracany

set_file_system_access_policy

Ustawia uprawnienia dla określonego systemu plików lub przechowywanych zasad dostępu, które mogą być używane z sygnaturami dostępu współdzielonego. Uprawnienia wskazują, czy pliki w systemie plików mogą być dostępne publicznie.

set_file_system_access_policy(signed_identifiers: Dict[str, AccessPolicy], public_access: str | PublicAccess | None = None, **kwargs) -> Dict[str, str | datetime]

Parametry

signed_identifiers
dict[str, AccessPolicy]
Wymagane

Słownik zasad dostępu do skojarzenia z systemem plików. Słownik może zawierać maksymalnie 5 elementów. Pusty słownik wyczyści zasady dostępu ustawione w usłudze.

public_access
PublicAccess
Wymagane

Aby określić, czy dane w systemie plików mogą być dostępne publicznie i na poziomie dostępu.

lease
DataLakeLeaseClient lub str

Wymagane, jeśli system plików ma aktywną dzierżawę. Wartość może być obiektem DataLakeLeaseClient lub identyfikatorem dzierżawy jako ciągiem.

if_modified_since
datetime

Wartość daty/godziny. 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ślonej daty/godziny.

if_unmodified_since
datetime

Wartość daty/godziny. 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.

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

Zaktualizowany przez system plików właściwość dict (Etag i ostatnia modyfikacja).

Typ zwracany

set_file_system_metadata

Ustawia co najmniej jedną parę nazwa-wartość zdefiniowaną przez użytkownika dla określonego systemu plików. Każde wywołanie tej operacji zastępuje wszystkie istniejące metadane dołączone do systemu plików. Aby usunąć wszystkie metadane z systemu plików, wywołaj tę operację bez dyktowania metadanych.

set_file_system_metadata(metadata: Dict[str, str], **kwargs) -> Dict[str, str | datetime]

Parametry

metadata
dict[str, str]
Wymagane

Dykt zawierający pary name-value do skojarzenia z systemem plików jako metadanymi. Przykład: {'category':'test'}

lease
str lub DataLakeLeaseClient

Jeśli zostanie określony, set_file_system_metadata powiedzie się tylko wtedy, gdy dzierżawa systemu plików jest aktywna i jest zgodna z tym identyfikatorem.

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.

Zwraca

filesystem zaktualizowany właściwość dict (Etag i ostatnia modyfikacja).

Typ zwracany

Przykłady

Ustawianie metadanych w systemie plików.


   # Create key, value pairs for metadata
   metadata = {'type': 'test'}

   # Set metadata on the file system
   file_system_client.set_file_system_metadata(metadata=metadata)

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