Udostępnij za pośrednictwem


DataLakeFileClient Klasa

Klient do interakcji z plikiem DataLake, nawet jeśli plik może jeszcze nie istnieć.

Dziedziczenie
azure.storage.filedatalake._path_client.PathClient
DataLakeFileClient

Konstruktor

DataLakeFileClient(account_url: str, file_system_name: str, file_path: 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.

file_path
str
Wymagane

Cała ścieżka pliku, dzięki czemu można wchodzić w interakcję z określonym plikiem. np. "{directory}/{podkatalog}/{file}"

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

Tworzenie elementu DataLakeServiceClient na podstawie parametrów połączenia.


   from azure.storage.filedatalake import DataLakeFileClient
   DataLakeFileClient.from_connection_string(connection_string, "myfilesystem", "mydirectory", "myfile")

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 plik lub katalog nie ma aktywnej dzierżawy, usługa DataLake tworzy dzierżawę pliku/katalogu i zwraca nowy identyfikator dzierżawy.

append_data

Dołącz dane do pliku.

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

Utwórz nowy plik.

delete_file

Oznacza określony plik do usunięcia.

download_file

Pobiera plik do storageStreamDownloader. Metoda readall() musi służyć do odczytywania całej zawartości lub funkcji readinto() musi służyć do pobierania pliku do strumienia. Użycie fragmentów() zwraca iterator, który umożliwia użytkownikowi iterowanie zawartości we fragmentach.

exists

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

flush_data

Zatwierdź poprzednie dołączone dane.

from_connection_string

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

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

get_access_control
get_file_properties

Zwraca wszystkie metadane zdefiniowane przez użytkownika, standardowe właściwości HTTP i właściwości systemu dla pliku. Nie zwraca zawartości pliku.

query_file

Umożliwia użytkownikom wybieranie/projekt na danych pliku datalake, zapewniając proste wyrażenia zapytań. Te operacje zwracają element DataLakeFileQueryReader, użytkownicy muszą używać funkcji readall() lub readinto(), aby pobrać dane zapytania.

remove_access_control_recursive

Usuwa Access Control na ścieżce i ścieżkach podrzędnych.

rename_file

Zmień nazwę pliku źródłowego.

set_access_control

Ustaw właściciela, grupę, uprawnienia lub listę kontroli dostępu dla ścieżki.

set_access_control_recursive

Ustawia Access Control na ścieżce i ścieżkach podrzędnych.

set_file_expiry

Ustawia czas wygaśnięcia pliku i zostanie usunięty.

set_http_headers

Ustawia właściwości systemowe w pliku lub katalogu.

Jeśli dla content_settings ustawiono jedną właściwość, wszystkie właściwości zostaną zastąpione.

set_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.

update_access_control_recursive

Modyfikuje Access Control na ścieżce i ścieżkach podrzędnych.

upload_data

Przekazywanie danych do pliku.

acquire_lease

Żąda nowej dzierżawy. Jeśli plik lub katalog nie ma aktywnej dzierżawy, usługa DataLake tworzy dzierżawę pliku/katalogu i zwraca nowy identyfikator dzierżawy.

acquire_lease(lease_duration: int | None = -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

append_data

Dołącz dane do pliku.

append_data(data: bytes | str | Iterable[AnyStr] | IO[AnyStr], offset: int, length: int | None = None, **kwargs) -> Dict[str, str | datetime | int]

Parametry

data
Wymagane

Zawartość do dołączenia do pliku

offset
Wymagane

pozycja początkowa danych do dołączenia.

length
Wymagane

Rozmiar danych w bajtach.

flush
bool

Jeśli wartość true, zatwierdzi dane po dołączeniu.

validate_content
bool

Jeśli wartość true, oblicza skrót MD5 zawartości bloku. Usługa magazynu sprawdza skrót zawartości, która dotarła do wysłanego skrótu. Jest to przede wszystkim przydatne do wykrywania bitflips w sieci, jeśli używasz protokołu HTTP zamiast https jako https (wartość domyślna) będzie już weryfikowane. Należy pamiętać, że ten skrót MD5 nie jest przechowywany w pliku.

lease_action
Literal["acquire", "auto-renew", "release", "acquire-release"]

Służy do wykonywania operacji dzierżawy wraz z dołączaniem danych.

"pozyskiwanie" — uzyskiwanie dzierżawy. "Automatyczne odnawianie" — nowa istniejąca dzierżawa. "release" — zwolnij dzierżawę po zakończeniu operacji. Wymaga opróżnienia=true. "acquire-release" — uzyskaj dzierżawę i zwolnij ją po zakończeniu operacji. Wymaga opróżnienia=true.

lease_duration
int

Prawidłowa wartość , jeśli lease_action ma wartość "acquire" lub "acquire-release".

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
DataLakeLeaseClient lub str

Wymagane, jeśli plik ma aktywną dzierżawę lub jeśli lease_action ma wartość "acquire" lub "acquire-release". Jeśli plik ma istniejącą dzierżawę, będzie on używany do uzyskiwania dostępu do pliku. W przypadku uzyskania nowej dzierżawy będzie to używane jako nowy identyfikator dzierżawy. Wartość może być obiektem DataLakeLeaseClient lub identyfikatorem dzierżawy jako ciągiem.

cpk
CustomerProvidedEncryptionKey

Szyfruje dane po stronie usługi przy użyciu danego klucza. Korzystanie z kluczy dostarczonych przez klienta musi odbywać się za pośrednictwem protokołu HTTPS.

Zwraca

dict nagłówka odpowiedzi

Przykłady

Dołącz dane do pliku.


   file_client.append_data(data=file_content[2048:3072], offset=2048, length=1024)

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

Utwórz nowy plik.

create_file(content_settings: ContentSettings | None = None, metadata: Dict[str, str] | None = None, **kwargs) -> Dict[str, str | datetime]

Parametry

content_settings
ContentSettings
Wymagane

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

metadata
Optional[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 4-cyfrowej notacji ó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 dla plików i katalogów. 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 i uprawnień w formacie "[scope:][type]:[id]:[permissions]".

lease_id
str

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

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 odnowienia lub 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ć uprawnienie do odczytu, zapisu lub wykonywania. Bit sticky jest również obsługiwany. Obsługiwane są notacje symboliczne (rwxrw-rw-) i 4-cyfrowe notacje ósemkowej (np. 0766).

if_modified_since
datetime

Wartość typu Data/godzina. Platforma Azure oczekuje, że wartość daty przekazana w formacie UTC. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na czas 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. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na czas 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ść elementu 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.

cpk
CustomerProvidedEncryptionKey

Szyfruje dane po stronie usługi przy użyciu danego klucza. Korzystanie z kluczy dostarczonych przez klienta musi odbywać się za pośrednictwem protokołu HTTPS.

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.

encryption_context
str

Określa kontekst szyfrowania, który ma być ustawiony w pliku.

Zwraca

dict odpowiedzi (Etag i ostatnia modyfikacja).

Przykłady

Utwórz plik.


   file_client = filesystem_client.get_file_client(file_name)
   file_client.create_file()

delete_file

Oznacza określony plik do usunięcia.

delete_file(**kwargs) -> None

Parametry

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. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na czas 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. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na czas 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ść elementu 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

Brak

Przykłady

Usuń plik.


   new_client.delete_file()

download_file

Pobiera plik do storageStreamDownloader. Metoda readall() musi służyć do odczytywania całej zawartości lub funkcji readinto() musi służyć do pobierania pliku do strumienia. Użycie fragmentów() zwraca iterator, który umożliwia użytkownikowi iterowanie zawartości we fragmentach.

download_file(offset: int | None = None, length: int | None = None, **kwargs: Any) -> StorageStreamDownloader

Parametry

offset
int
Wymagane

Początek zakresu bajtów, który ma być używany do pobierania sekcji pliku. Należy ustawić, jeśli podano długość.

length
int
Wymagane

Liczba bajtów do odczytania ze strumienia. Jest to opcjonalne, ale powinno zostać dostarczone w celu uzyskania optymalnej wydajności.

lease
DataLakeLeaseClient lub str

Jeśli zostanie określony, pobieranie zakończy się powodzeniem tylko wtedy, gdy dzierżawa pliku jest aktywna i jest zgodna z tym identyfikatorem. Wymagane, jeśli plik ma aktywną dzierżawę.

if_modified_since
datetime

Wartość typu Data/godzina. Platforma Azure oczekuje, że wartość daty przekazana w formacie UTC. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na czas 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. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na czas 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ść elementu 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.

cpk
CustomerProvidedEncryptionKey

Odszyfrowuje dane po stronie usługi przy użyciu danego klucza. Korzystanie z kluczy dostarczonych przez klienta musi odbywać się za pośrednictwem protokołu HTTPS. Wymagane, jeśli plik został utworzony przy użyciu klucza Customer-Provided.

max_concurrency
int

Liczba połączeń równoległych, z którymi należy pobrać.

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. Ta metoda może wykonywać wiele wywołań usługi, a limit czasu będzie stosowany do każdego wywołania osobno.

Zwraca

Obiekt przesyłania strumieniowego (StorageStreamDownloader)

Typ zwracany

Przykłady

Zwróć pobrane dane.


   download = file_client.download_file()
   downloaded_bytes = download.readall()

exists

Zwraca wartość True, jeśli plik 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

Wartość True, jeśli plik istnieje, w przeciwnym razie zwraca wartość False.

Typ zwracany

flush_data

Zatwierdź poprzednie dołączone dane.

flush_data(offset: int, retain_uncommitted_data: bool | None = False, **kwargs) -> Dict[str, str | datetime]

Parametry

offset
Wymagane

przesunięcie jest równe długości pliku po zatwierdzeniu poprzednich dołączonych danych.

retain_uncommitted_data
bool
Wymagane

Prawidłowe tylko dla operacji opróżniania. Jeśli wartość "true", niezatwierdzone dane są zachowywane po zakończeniu operacji opróżniania; w przeciwnym razie niezatwierdzone dane są usuwane po operacji opróżniania. Wartością domyślną jest false. Dane z przesunięciem mniejszym niż określona pozycja są zapisywane w pliku po pomyślnym opróżnieniu, ale ten opcjonalny parametr umożliwia zachowanie danych po ustawieniu opróżnienia dla przyszłej operacji opróżniania.

content_settings
ContentSettings

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

close
bool

Zdarzenia usługi Azure Storage umożliwiają aplikacjom odbieranie powiadomień po zmianie plików. Po włączeniu zdarzeń usługi Azure Storage jest zgłaszane zdarzenie zmiany pliku. To zdarzenie ma właściwość wskazującą, czy jest to ostateczna zmiana, aby odróżnić różnicę między pośrednim opróżnianiem strumienia plików a ostatecznym zamknięciem strumienia plików. Parametr zamykania zapytania jest prawidłowy tylko wtedy, gdy akcja jest "opróżniona", a powiadomienia o zmianie są włączone. Jeśli wartość close ma wartość "true", a operacja opróżniania zakończy się pomyślnie, usługa zgłasza powiadomienie o zmianie pliku z właściwością wskazującą, że jest to ostateczna aktualizacja (strumień plików został zamknięty). Jeśli zostanie zgłoszone powiadomienie o zmianie "false" wskazujące, że plik uległ zmianie. Wartością domyślną jest false. Ten parametr zapytania jest ustawiony na wartość true przez sterownik ABFS usługi Hadoop, aby wskazać, że strumień plików został zamknięty.

if_modified_since
datetime

Wartość typu Data/godzina. Platforma Azure oczekuje, że wartość daty przekazana w formacie UTC. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na czas 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. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na czas 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ść elementu 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.

lease_action
Literal["acquire", "auto-renew", "release", "acquire-release"]

Służy do wykonywania operacji dzierżawy wraz z dołączaniem danych.

"pozyskiwanie" — uzyskiwanie dzierżawy. "Automatyczne odnawianie" — ponowne utworzenie istniejącej dzierżawy. "release" — zwalnia dzierżawę po zakończeniu operacji. "acquire-release" — uzyskiwanie dzierżawy i zwalnianie jej po zakończeniu operacji.

lease_duration
int

Prawidłowe, jeśli lease_action ma ustawioną wartość "acquire" lub "acquire-release".

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 odnowienia lub zmiany. Wartość domyślna to -1 (nieskończona dzierżawa).

lease
DataLakeLeaseClient lub str

Wymagane, jeśli plik ma aktywną dzierżawę lub jeśli lease_action ma wartość "acquire" lub "acquire-release". Jeśli plik ma istniejącą dzierżawę, będzie on używany do uzyskiwania dostępu do pliku. W przypadku uzyskania nowej dzierżawy będzie to używane jako nowy identyfikator dzierżawy. Wartość może być obiektem DataLakeLeaseClient lub identyfikatorem dzierżawy jako ciągiem.

cpk
CustomerProvidedEncryptionKey

Szyfruje dane po stronie usługi przy użyciu danego klucza. Korzystanie z kluczy dostarczonych przez klienta musi odbywać się za pośrednictwem protokołu HTTPS.

Zwraca

nagłówek odpowiedzi w dict

Przykłady

Zatwierdź poprzednie dołączone dane.


   with open(SOURCE_FILE, "rb") as data:
       file_client = file_system_client.get_file_client("myfile")
       file_client.create_file()
       file_client.append_data(data, 0)
       file_client.flush_data(data.tell())

from_connection_string

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

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

from_connection_string(conn_str: str, file_system_name: str, file_path: 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.

file_path
str
Wymagane

Cała ścieżka pliku, aby wchodzić w interakcję z określonym plikiem. np. "{directory}/{podkatalog}/{file}"

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 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 pliku azure.core.credentials, kluczem dostępu współużytkowanego konta lub wystąpieniem klasy TokenCredentials z pliku 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 obiektu AzureNamedKeyCredential, "name" powinien być nazwą konta magazynu, a "klucz" powinien być kluczem konta magazynu.

get_access_control

get_access_control(upn: bool | None = None, **kwargs) -> Dict[str, Any]

Parametry

upn
bool
Wymagane

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", wartości zostaną zwrócone jako identyfikatory obiektów usługi Azure Active Directory. Wartość domyślna to false. Należy pamiętać, że identyfikatory obiektów grup i aplikacji nie są tłumaczone, ponieważ nie mają unikatowych przyjaznych nazw.

lease
DataLakeLeaseClient lub str

Wymagane, jeśli plik/katalog 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. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na czas 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. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na czas 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ść elementu 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.

response dict

dykt odpowiedzi.

get_file_properties

Zwraca wszystkie metadane zdefiniowane przez użytkownika, standardowe właściwości HTTP i właściwości systemu dla pliku. Nie zwraca zawartości pliku.

get_file_properties(**kwargs: Any) -> FileProperties

Parametry

lease

Wymagane, jeśli katalog lub plik ma aktywną dzierżawę. Wartość może być obiektem DataLakeLeaseClient 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. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na czas 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. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na czas 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.

cpk
CustomerProvidedEncryptionKey

Odszyfrowuje dane po stronie usługi przy użyciu danego klucza. Korzystanie z kluczy dostarczonych przez klienta musi odbywać się za pośrednictwem protokołu HTTPS. Wymagane, jeśli plik został utworzony przy użyciu klucza dostarczonego przez klienta.

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

Wszystkie metadane zdefiniowane przez użytkownika, standardowe właściwości HTTP i właściwości systemu dla pliku.

Typ zwracany

Przykłady

Pobieranie właściwości pliku.


   properties = file_client.get_file_properties()

query_file

Umożliwia użytkownikom wybieranie/projekt na danych pliku datalake, zapewniając proste wyrażenia zapytań. Te operacje zwracają element DataLakeFileQueryReader, użytkownicy muszą używać funkcji readall() lub readinto(), aby pobrać dane zapytania.

query_file(query_expression: str, **kwargs: Any) -> DataLakeFileQueryReader

Parametry

query_expression
str
Wymagane

Wymagane. instrukcja zapytania. np. Wybierz pozycję * z obszaru DataLakeStorage

on_error
Callable[DataLakeFileQueryError]

Funkcja, która ma być wywoływana w przypadku błędów przetwarzania zwróconych przez usługę.

file_format
DelimitedTextDialect lub DelimitedJsonDialect lub QuickQueryDialect lub str

Opcjonalny. Definiuje serializacji danych przechowywanych obecnie w pliku. Wartością domyślną jest traktowanie danych pliku jako danych CSV sformatowanych w domyślnym dialektzie. Można to zastąpić za pomocą niestandardowego obiektu DelimitedTextDialect lub DelimitedJsonDialect lub "ParquetDialect" (przekazanego jako ciąg lub wyliczenie). Te dialekty mogą być przekazywane przez odpowiednie klasy, wyliczenie QuickQueryDialect lub jako ciąg.

output_format
DelimitedTextDialect lub DelimitedJsonDialect lub list[ArrowDialect] lub QuickQueryDialect lub str

Opcjonalny. Definiuje serializacji danych wyjściowych dla strumienia danych. Domyślnie dane zostaną zwrócone, ponieważ są reprezentowane w pliku. Po podaniu formatu wyjściowego dane pliku zostaną sformatowane zgodnie z tym profilem. Ta wartość może być delimitedTextDialect lub DelimitedJsonDialect lub ArrowDialect. Te dialekty mogą być przekazywane przez odpowiednie klasy, wyliczenie QuickQueryDialect lub jako ciąg.

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.

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.

cpk
CustomerProvidedEncryptionKey

Odszyfrowuje dane po stronie usługi przy użyciu danego klucza. Korzystanie z kluczy dostarczonych przez klienta musi odbywać się za pośrednictwem protokołu HTTPS. Wymagane, jeśli plik został utworzony za pomocą klucza Customer-Provided.

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 przesyłania strumieniowego (DataLakeFileQueryReader)

Typ zwracany

<xref:azure.storage.filedatalake.DataLakeFileQueryReader>

Przykłady

wybieranie/projekt danych w danych pliku datalake przez podanie prostych wyrażeń zapytań.


   errors = []
   def on_error(error):
       errors.append(error)

   # upload the csv file
   file_client = datalake_service_client.get_file_client(filesystem_name, "csvfile")
   file_client.upload_data(CSV_DATA, overwrite=True)

   # select the second column of the csv file
   query_expression = "SELECT _2 from DataLakeStorage"
   input_format = DelimitedTextDialect(delimiter=',', quotechar='"', lineterminator='\n', escapechar="", has_header=False)
   output_format = DelimitedJsonDialect(delimiter='\n')
   reader = file_client.query_file(query_expression, on_error=on_error, file_format=input_format, output_format=output_format)
   content = reader.readall()

remove_access_control_recursive

Usuwa Access Control na ścieżce i ścieżkach podrzędnych.

remove_access_control_recursive(acl: str, **kwargs: Any) -> AccessControlChangeResult

Parametry

acl
str
Wymagane

Usuwa 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 i identyfikatora użytkownika lub grupy w formacie "[scope:][type]::[id]".

progress_hook
<xref:func>(AccessControlChanges)

Wywołanie zwrotne, w którym obiekt wywołujący może śledzić postęp operacji, a także zbierać ścieżki, które nie mogły ulec zmianie Access Control.

continuation_token
str

Opcjonalny token kontynuacji, którego można użyć do wznowienia wcześniej zatrzymanych operacji.

batch_size
int

Opcjonalny. Jeśli rozmiar zestawu danych przekracza rozmiar partii, operacja zostanie podzielona na wiele żądań, aby można było śledzić postęp. Rozmiar partii powinien wynosić od 1 do 2000. Wartość domyślna, gdy nieokreślone jest 2000.

max_batches
int

Opcjonalny. Definiuje maksymalną liczbę partii, które można wykonać podczas jednej zmiany Access Control operacji. Jeśli wartość maksymalna zostanie osiągnięta przed przetworzeniem wszystkich ścieżek podrzędnych, token kontynuacji może służyć do wznowienia operacji. Pusta wartość wskazuje, że maksymalna liczba partii w niezwiązanych i operacja trwa do końca.

continue_on_failure
bool

Jeśli ustawiono wartość Fałsz, operacja zakończy się szybko po napotkaniu błędów użytkownika (4XX). Jeśli prawda, operacja będzie ignorować błędy użytkownika i kontynuować operację na innych podrzędnych jednostkach katalogu. Token kontynuacji zostanie zwrócony tylko wtedy, gdy continue_on_failure ma wartość True w przypadku błędów użytkownika. Jeśli nie zostanie ustawiona wartość domyślna to Fałsz.

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

Podsumowanie operacji cyklicznych, w tym liczbę sukcesów i niepowodzeń, a także token kontynuacji w przypadku przedwczesnego zakończenia operacji.

Typ zwracany

Wyjątki

Użytkownik może ponownie uruchomić operację przy użyciu pola continuation_token azureError, jeśli token jest dostępny.

rename_file

Zmień nazwę pliku źródłowego.

rename_file(new_name: str, **kwargs: Any) -> DataLakeFileClient

Parametry

new_name
str
Wymagane

nowa nazwa pliku, na którą użytkownik chce zmienić nazwę. Wartość musi mieć następujący format: "{filesystem}/{directory}/{podkatalog}/{file}".

content_settings
ContentSettings

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

source_lease
DataLakeLeaseClient lub str

Identyfikator dzierżawy ścieżki źródłowej. Jeśli zostanie określona, ścieżka źródłowa musi mieć aktywną dzierżawę, a identyfikator dzierżawy musi być zgodny.

lease

Wymagane, jeśli plik/katalog 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.

source_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.

source_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.

source_etag
str

Źródłowa 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 .

source_match_condition
MatchConditions

Warunek dopasowania źródła do użycia w tagu etag.

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

zmieniono nazwę klienta pliku

Typ zwracany

Przykłady

Zmień nazwę pliku źródłowego.


   new_client = file_client.rename_file(file_client.file_system_name + '/' + 'newname')

set_access_control

Ustaw właściciela, grupę, uprawnienia lub listę kontroli dostępu dla ścieżki.

set_access_control(owner: str | None = None, group: str | None = None, permissions: str | None = None, acl: str | None = None, **kwargs) -> Dict[str, str | datetime]

Parametry

owner
str
Wymagane

Opcjonalny. Właściciel pliku lub katalogu.

group
str
Wymagane

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

permissions
str
Wymagane

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). uprawnienia i listy acl wykluczają się wzajemnie.

acl
str
Wymagane

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]". uprawnienia i listy acl wykluczają się wzajemnie.

lease
DataLakeLeaseClient lub str

Wymagane, jeśli plik/katalog 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.

response dict

dict odpowiedzi (Etag i ostatnia modyfikacja).

set_access_control_recursive

Ustawia Access Control na ścieżce i ścieżkach podrzędnych.

set_access_control_recursive(acl: str, **kwargs: Any) -> AccessControlChangeResult

Parametry

acl
str
Wymagane

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]".

progress_hook
<xref:func>(AccessControlChanges)

Wywołanie zwrotne, w którym obiekt wywołujący może śledzić postęp operacji, a także zbierać ścieżki, które nie mogły ulec zmianie Access Control.

continuation_token
str

Opcjonalny token kontynuacji, którego można użyć do wznowienia wcześniej zatrzymanych operacji.

batch_size
int

Opcjonalny. Jeśli rozmiar zestawu danych przekracza rozmiar partii, operacja zostanie podzielona na wiele żądań, aby można było śledzić postęp. Rozmiar partii powinien wynosić od 1 do 2000. Wartość domyślna, gdy nieokreślone jest 2000.

max_batches
int

Opcjonalny. Definiuje maksymalną liczbę partii, które można wykonać podczas jednej zmiany Access Control operacji. Jeśli wartość maksymalna zostanie osiągnięta przed przetworzeniem wszystkich ścieżek podrzędnych, można użyć tokenu kontynuacji do wznowienia operacji. Pusta wartość wskazuje, że maksymalna liczba partii w niezwiązanych i operacja trwa do końca.

continue_on_failure
bool

Jeśli ustawiono wartość Fałsz, operacja zakończy się szybko po napotkaniu błędów użytkownika (4XX). Jeśli prawda, operacja będzie ignorować błędy użytkownika i kontynuować operację na innych podrzędnych jednostkach katalogu. Token kontynuacji zostanie zwrócony tylko wtedy, gdy continue_on_failure ma wartość True w przypadku błędów użytkownika. Jeśli nie zostanie ustawiona wartość domyślna to Fałsz.

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

Podsumowanie operacji cyklicznych, w tym liczbę sukcesów i niepowodzeń, a także token kontynuacji w przypadku przedwczesnego zakończenia operacji.

Typ zwracany

Wyjątki

Użytkownik może ponownie uruchomić operację przy użyciu pola continuation_token azureError, jeśli token jest dostępny.

set_file_expiry

Ustawia czas wygaśnięcia pliku i zostanie usunięty.

set_file_expiry(expiry_options: str, expires_on: datetime | int | None = None, **kwargs) -> None

Parametry

expiry_options
str
Wymagane

Wymagane. Wskazuje tryb czasu wygaśnięcia. Możliwe wartości to: "NeverExpire", "RelativeToCreation", "RelativeToNow", "Absolute"

expires_on
datetime lub int
Wymagane

Czas ustawiania pliku na wygaśnięcie. Gdy expiry_options jest Względny*, expires_on powinny być int w milisekundach. Jeśli typ expires_on to data/godzina, powinien to być czas UTC.

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

set_http_headers

Ustawia właściwości systemowe w pliku lub katalogu.

Jeśli dla content_settings ustawiono jedną właściwość, wszystkie właściwości zostaną zastąpione.

set_http_headers(content_settings: ContentSettings | None = None, **kwargs) -> Dict[str, Any]

Parametry

content_settings
ContentSettings
Wymagane

Obiekt ContentSettings używany do ustawiania właściwości pliku/katalogu.

lease
DataLakeLeaseClient lub str

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ść elementu 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

file/directory-updated property dict (Etag i ostatnia modyfikacja)

Typ zwracany

set_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_metadata(metadata: Dict[str, str], **kwargs) -> Dict[str, str | datetime]

Parametry

metadata
Dict[str, str]
Wymagane

Dykt zawierający pary nazwa-wartość do skojarzenia z systemem plików jako metadane. Przykład: {'category':'test'}

lease
DataLakeLeaseClient lub str

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. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na czas 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. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na czas 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ść elementu 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.

cpk
CustomerProvidedEncryptionKey

Szyfruje dane po stronie usługi przy użyciu danego klucza. Korzystanie z kluczy dostarczonych przez klienta musi odbywać się za pośrednictwem protokołu HTTPS.

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

system plików — zaktualizowany dykt właściwości (Etag i ostatnia modyfikacja).

update_access_control_recursive

Modyfikuje Access Control na ścieżce i ścieżkach podrzędnych.

update_access_control_recursive(acl: str, **kwargs: Any) -> AccessControlChangeResult

Parametry

acl
str
Wymagane

Modyfikuje prawa kontroli dostępu POSIX do plików i katalogów. 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 i uprawnień w formacie "[scope:][type]:[id]:[permissions]".

progress_hook
<xref:func>(AccessControlChanges)

Wywołanie zwrotne, w którym obiekt wywołujący może śledzić postęp operacji, a także zbierać ścieżki, których nie można zmienić Access Control.

continuation_token
str

Opcjonalny token kontynuacji, którego można użyć do wznowienia wcześniej zatrzymanych operacji.

batch_size
int

Opcjonalny. Jeśli rozmiar zestawu danych przekracza rozmiar partii, operacja zostanie podzielona na wiele żądań, aby można było śledzić postęp. Rozmiar partii powinien należeć do zakresu od 1 do 2000. Wartość domyślna, gdy nieokreślone jest 2000.

max_batches
int

Opcjonalny. Definiuje maksymalną liczbę partii, które mogą wykonywać pojedyncza zmiana Access Control operacji. Jeśli wartość maksymalna zostanie osiągnięta przed przetworzeniem wszystkich ścieżek podrzędnych, można użyć tokenu kontynuacji do wznowienia operacji. Pusta wartość wskazuje, że maksymalna liczba partii w niepowiązanych operacjach jest kontynuowana do końca.

continue_on_failure
bool

W przypadku ustawienia wartości Fałsz operacja zakończy się szybko po napotkaniu błędów użytkownika (4XX). Jeśli wartość True, operacja zignoruje błędy użytkownika i przejdzie do operacji na innych podrzędnych jednostkach katalogu. Token kontynuacji zostanie zwrócony tylko wtedy, gdy continue_on_failure ma wartość True w przypadku błędów użytkownika. Jeśli nie zostanie ustawiona wartość domyślna to Fałsz.

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

Podsumowanie operacji cyklicznych, w tym liczbę sukcesów i niepowodzeń, a także token kontynuacji na wypadek przedwczesnego zakończenia operacji.

Typ zwracany

Wyjątki

Użytkownik może ponownie uruchomić operację przy użyciu pola continuation_token AzureError, jeśli token jest dostępny.

upload_data

Przekazywanie danych do pliku.

upload_data(data: bytes | str | Iterable | IO, length: int | None = None, overwrite: bool | None = False, **kwargs) -> Dict[str, Any]

Parametry

data
Wymagane

Zawartość do przekazania do pliku

length
int
Wymagane

Rozmiar danych w bajtach.

overwrite
bool
Wymagane

aby zastąpić istniejący plik lub nie.

content_settings
ContentSettings

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

metadata
Optional[Dict[str, str]]

Pary nazwa-wartość skojarzone z obiektem blob jako metadane.

lease
DataLakeLeaseClient lub str

Wymagane, jeśli obiekt blob 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 i folder nadrzędny nie ma domyślnej listy ACL, maska umask ogranicza uprawnienia pliku lub katalogu do utworzenia. Wynikowe uprawnienie jest podane przez 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 4-cyfrowej notacji ósemkowej (np. 0766).

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ć uprawnienie do odczytu, zapisu lub wykonywania. Bit sticky jest również obsługiwany. Obsługiwane są notacje symboliczne (rwxrw-rw-) i 4-cyfrowe notacje ósemkowej (np. 0766).

if_modified_since
datetime

Wartość typu Data/godzina. Platforma Azure oczekuje, że wartość daty przekazana w formacie UTC. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na czas 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. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na czas 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.

validate_content
bool

Jeśli wartość true, oblicza skrót MD5 dla każdego fragmentu pliku. Usługa magazynu sprawdza skrót zawartości, która dotarła do wysłanego skrótu. Jest to przede wszystkim przydatne w przypadku wykrywania bitflipów w sieci, jeśli używasz protokołu HTTP zamiast https, ponieważ jest to protokół https (wartość domyślna), będzie już weryfikowane. Należy pamiętać, że ten skrót MD5 nie jest przechowywany w obiekcie blob. Należy również pamiętać, że w przypadku włączenia algorytmu przekazywania wydajnego w pamięci nie będzie używany, ponieważ obliczanie skrótu MD5 wymaga buforowania całych bloków i w ten sposób pozwala pokonać cel algorytmu wydajnego pod względem pamięci.

etag
str

Wartość elementu 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.

cpk
CustomerProvidedEncryptionKey

Szyfruje dane po stronie usługi przy użyciu danego klucza. Korzystanie z kluczy dostarczonych przez klienta musi odbywać się za pośrednictwem protokołu HTTPS.

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. Ta metoda może wykonywać wiele wywołań usługi, a limit czasu będzie stosowany do każdego wywołania indywidualnie.

chunk_size
int

Maksymalny rozmiar fragmentu do przekazywania pliku we fragmentach. Domyślnie100 1024 1024lub 100 MB.

encryption_context
str

Określa kontekst szyfrowania do ustawienia w pliku.

Zwraca

dict odpowiedzi (Etag i ostatnia modyfikacja).

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