Sdílet prostřednictvím


FileSystemClient Třída

Klient pro interakci s konkrétním systémem souborů, i když tento systém souborů ještě nemusí existovat.

Pro operace související s konkrétním adresářem nebo souborem v rámci tohoto systému souborů lze adresářového klienta nebo souborového klienta načíst pomocí get_directory_client funkcí nebo get_file_client .

Dědičnost
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
Vyžadováno

Identifikátor URI účtu úložiště

file_system_name
str
Vyžadováno

Systém souborů pro adresář nebo soubory.

credential
výchozí hodnota: None

Přihlašovací údaje, pomocí kterých se má ověřit. Tato možnost je volitelná, pokud adresa URL účtu už token SAS má. Hodnotou může být řetězec tokenu SAS, instance AzureSasCredential nebo AzureNamedKeyCredential z azure.core.credentials, sdílený přístupový klíč účtu nebo instance třídy TokenCredentials z azure.identity. Pokud identifikátor URI prostředku už obsahuje token SAS, bude se tento token ignorovat ve prospěch explicitních přihlašovacích údajů.

  • s výjimkou případu AzureSasCredential, kde konfliktní tokeny SAS způsobí chybu ValueError. Pokud používáte instanci AzureNamedKeyCredential, název by měl být název účtu úložiště a klíč by měl být klíč účtu úložiště.
api_version
str

Verze rozhraní API služby Storage, která se má použít pro požadavky. Výchozí hodnota je nejnovější verze služby, která je kompatibilní s aktuální sadou SDK. Nastavení na starší verzi může mít za následek snížení kompatibility funkcí.

Příklady

Získejte FileSystemClient z existujícího 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")

Proměnné

url
str

Úplná adresa URL koncového bodu systému souborů, včetně tokenu SAS, pokud je použit.

primary_endpoint
str

Úplná adresa URL primárního koncového bodu.

primary_hostname
str

Název hostitele primárního koncového bodu.

Metody

acquire_lease

Požádá o nové zapůjčení. Pokud systém souborů nemá aktivní zapůjčení, služba DataLake vytvoří zapůjčení systému souborů a vrátí nové ID zapůjčení.

close

Tato metoda slouží k zavření soketů otevřených klientem. Nemusí se používat při použití se správcem kontextu.

create_directory

Vytvoření adresáře

create_file

Vytvořit soubor

create_file_system

Vytvoří nový systém souborů pod zadaným účtem.

Pokud systém souborů se stejným názvem již existuje, bude vyvolána chyba ResourceExistsError. Tato metoda vrátí klienta, se kterým chcete pracovat s nově vytvořeným systémem souborů.

delete_directory

Označí zadanou cestu k odstranění.

delete_file

Označí zadaný soubor k odstranění.

delete_file_system

Označí zadaný systém souborů k odstranění.

Systém souborů a všechny soubory v něm obsažené jsou později odstraněny během uvolňování paměti. Pokud systém souborů není nalezen, bude vyvolána chyba ResourceNotFoundError.

exists

Vrátí hodnotu True, pokud existuje systém souborů, a v opačném případě vrátí hodnotu False.

from_connection_string

Vytvořte FileSystemClient z připojovacího řetězce.

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

get_directory_client

Získejte klienta pro interakci se zadaným adresářem.

Adresář ještě nemusí existovat.

get_file_client

Získejte klienta pro interakci se zadaným souborem.

Soubor ještě nemusí existovat.

get_file_system_access_policy

Získá oprávnění pro zadaný systém souborů. Oprávnění označují, jestli je možné veřejně přistupovat k datům systému souborů.

get_file_system_properties

Vrátí všechna uživatelem definovaná metadata a systémové vlastnosti pro zadaný systém souborů. Vrácená data neobsahují seznam cest systému souborů.

get_paths

Vrátí generátor pro zobrazení seznamu cest (můžou to být soubory nebo adresáře) v zadaném systému souborů. Generátor bude líně sledovat tokeny pokračování vrácené službou.

list_deleted_paths

Vrátí generátor pro výpis odstraněných cest (souborů nebo adresářů) v zadaném systému souborů. Generátor bude líně sledovat tokeny pokračování vrácené službou.

Novinka ve verzi 12.4.0: Tato operace byla zavedena ve verzi rozhraní API 2020-06-12.

set_file_system_access_policy

Nastaví oprávnění pro zadaný systém souborů nebo uložené zásady přístupu, které lze použít se sdílenými přístupovými podpisy. Oprávnění označují, jestli se k souborům v systému souborů může přistupovat veřejně.

set_file_system_metadata

Nastaví jednu nebo více uživatelsky definovaných dvojic název-hodnota pro zadaný systém souborů. Každé volání této operace nahradí všechna existující metadata připojená k systému souborů. Pokud chcete odebrat všechna metadata ze systému souborů, zavolejte tuto operaci bez diktování metadat.

acquire_lease

Požádá o nové zapůjčení. Pokud systém souborů nemá aktivní zapůjčení, služba DataLake vytvoří zapůjčení systému souborů a vrátí nové ID zapůjčení.

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

Parametry

lease_duration
int
Vyžadováno

Určuje dobu zapůjčení v sekundách nebo zápornou (-1) pro zapůjčení, jehož platnost nikdy nevyprší. Nenekonečná zapůjčení může být 15 až 60 sekund. Dobu zapůjčení nelze změnit pomocí obnovení nebo změny. Výchozí hodnota je -1 (nekonečné zapůjčení).

lease_id
str
Vyžadováno

Navrhované ID zapůjčení ve formátu řetězce GUID Pokud navrhované ID zapůjčení není ve správném formátu, vrátí služba DataLake hodnotu 400 (Neplatný požadavek).

if_modified_since
datetime

Hodnota DateTime. Azure očekává, že hodnota předaného data bude UTC. Pokud je zahrnuté časové pásmo, všechny hodnoty datetime mimo UTC se převedou na UTC. Pokud je datum předáno bez informací o časovém pásmu, předpokládá se, že je to UTC. Tuto hlavičku zadejte, aby se operace prováděla pouze v případě, že byl prostředek od zadaného času změněn.

if_unmodified_since
datetime

Hodnota DateTime. Azure očekává, že hodnota předaného data bude UTC. Pokud je zahrnuté časové pásmo, všechny hodnoty datetime mimo UTC se převedou na UTC. Pokud je datum předáno bez informací o časovém pásmu, předpokládá se, že je to UTC. Tuto hlavičku zadejte pro provedení operace pouze v případě, že prostředek nebyl od zadaného data a času změněn.

etag
str

Hodnota značky ETag nebo zástupný znak (*). Slouží ke kontrole, jestli se prostředek změnil, a k chování podle podmínky zadané parametrem match_condition .

match_condition
MatchConditions

Podmínka shody, která se má použít u značky etag.

timeout
int

Nastaví časový limit operace na straně serveru v sekundách. Další podrobnosti najdete tady: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Tato hodnota není v klientovi sledována ani ověřena. Informace o konfiguraci časových limitů sítě na straně klienta najdete tady.

Návraty

Objekt DataLakeLeaseClient, který lze spustit ve správci kontextu.

Návratový typ

Příklady

Získání zapůjčení systému souborů


   # 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

Tato metoda slouží k zavření soketů otevřených klientem. Nemusí se používat při použití se správcem kontextu.

close() -> None

create_directory

Vytvoření adresáře

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

Parametry

directory
str nebo DirectoryProperties
Vyžadováno

Adresář, se kterým chcete pracovat. Může to být buď název adresáře, nebo instance DirectoryProperties.

metadata
dict(str, str)
Vyžadováno

Páry název-hodnota přidružené k souboru jako metadata.

content_settings
ContentSettings

Objekt ContentSettings použitý k nastavení vlastností cesty.

lease
DataLakeLeaseClient nebo str

Vyžaduje se, pokud má soubor aktivní zapůjčení. Hodnota může být objekt DataLakeLeaseClient nebo ID zapůjčení jako řetězec.

umask
str

Volitelné a platné pouze v případě, že je pro účet povolený hierarchický obor názvů. Při vytváření souboru nebo adresáře a nadřazená složka nemá výchozí seznam ACL, umask omezí oprávnění k vytvoření souboru nebo adresáře. Výsledné oprávnění je dáno p & ^u, kde p je oprávnění a vy je umask. Pokud je například p 0777 a vy je 0057, výsledné oprávnění je 0720. Výchozí oprávnění je 0777 pro adresář a 0666 pro soubor. Výchozí umask je 0027. Umask musí být zadán v osmičkovém zápisu se 4 číslicemi (např. 0766).

owner
str

Vlastník souboru nebo adresáře.

group
str

Vlastnící skupina souboru nebo adresáře.

acl
str

Nastaví práva řízení přístupu k souborům a adresářům posix. Hodnota je čárkami oddělený seznam položek řízení přístupu. Každá položka řízení přístupu (ACE) se skládá z oboru, typu, identifikátoru uživatele nebo skupiny a oprávnění ve formátu [obor:][typ]:[id]:[oprávnění].

lease_id
str

Navrhované ID zapůjčení ve formátu řetězce GUID Pokud navrhované ID zapůjčení není ve správném formátu, vrátí služba DataLake hodnotu 400 (Neplatný požadavek).

lease_duration
int

Určuje dobu zapůjčení v sekundách nebo zápornou (-1) pro zapůjčení, jehož platnost nikdy nevyprší. Nenekonečná zapůjčení může být 15 až 60 sekund. Dobu zapůjčení nelze změnit pomocí obnovení nebo změny.

permissions
str

Volitelné a platné pouze v případě, že je pro účet povolený hierarchický obor názvů. Nastaví přístupová oprávnění POSIX pro vlastníka souboru, skupinu vlastníka souboru a další. Každé třídě může být uděleno oprávnění ke čtení, zápisu nebo spuštění. Podporuje se také bit sticky. Podporuje se symbolický (rwxrw-rw-) i 4místný osmičkový zápis (např. 0766).

if_modified_since
datetime

Hodnota DateTime. Azure očekává, že hodnota předaného data bude UTC. Pokud je zahrnuté časové pásmo, všechny hodnoty datetime mimo UTC se převedou na UTC. Pokud je datum předáno bez informací o časovém pásmu, předpokládá se, že je to UTC. Tuto hlavičku zadejte, aby se operace prováděla pouze v případě, že byl prostředek od zadaného času změněn.

if_unmodified_since
datetime

Hodnota DateTime. Azure očekává, že hodnota předaného data bude UTC. Pokud je zahrnuté časové pásmo, všechny hodnoty datetime mimo UTC se převedou na UTC. Pokud je datum předáno bez informací o časovém pásmu, předpokládá se, že je to UTC. Tuto hlavičku zadejte pro provedení operace pouze v případě, že prostředek nebyl od zadaného data a času změněn.

etag
str

Hodnota ETag nebo zástupný znak (*). Slouží ke kontrole, jestli se prostředek změnil, a k akci podle podmínky určené parametrem match_condition .

match_condition
MatchConditions

Podmínka shody, která se použije u značky etag.

timeout
int

Nastaví časový limit operace na straně serveru v sekundách. Další podrobnosti najdete tady: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Tato hodnota se v klientovi nesleduje ani neověřuje. Informace o konfiguraci časových limitů sítě na straně klienta najdete tady.

Návraty

DataLakeDirectoryClient

Příklady

Vytvořte adresář v systému souborů.


   directory_client = file_system_client.create_directory("mydirectory")

create_file

Vytvořit soubor

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

Parametry

file
str nebo FileProperties
Vyžadováno

Soubor, se kterým chcete pracovat. Může to být buď název souboru, nebo instance FileProperties.

content_settings
ContentSettings
Vyžadováno

ContentSettings Objekt použitý k nastavení vlastností cesty.

metadata
dict(str, str)
Vyžadováno

Dvojice název-hodnota přidružené k souboru jako metadata.

lease
DataLakeLeaseClient nebo str

Vyžaduje se, pokud má soubor aktivní zapůjčení. Hodnotou může být objekt DataLakeLeaseClient nebo ID zapůjčení jako řetězec.

umask
str

Volitelné a platné pouze v případě, že je pro účet povolený hierarchický obor názvů. Při vytváření souboru nebo adresáře a nadřazená složka nemá výchozí seznam ACL, omezuje umask oprávnění k souboru nebo adresáři, který se má vytvořit. Výsledné oprávnění je dáno p & ^u, kde p je oprávnění a vy je umask. Pokud je například p 0777 a vy je 0057, výsledné oprávnění je 0720. Výchozí oprávnění je 0777 pro adresář a 0666 pro soubor. Výchozí hodnota umask je 0027. Umask musí být zadán v osmimístném zápisu se 4 číslicemi (např. 0766).

owner
str

Vlastník souboru nebo adresáře.

group
str

Vlastnící skupina souboru nebo adresáře.

acl
str

Nastaví přístupová práva POSIX k souborům a adresářům. Hodnota je čárkami oddělený seznam položek řízení přístupu. Každá položka řízení přístupu (ACE) se skládá z oboru, typu, identifikátoru uživatele nebo skupiny a oprávnění ve formátu "[obor:][typ]:[id]:[oprávnění]".

lease_id
str

Navrhované ID zapůjčení ve formátu řetězce GUID Pokud navrhované ID zapůjčení není ve správném formátu, vrátí služba DataLake hodnotu 400 (neplatný požadavek).

lease_duration
int

Určuje dobu zapůjčení v sekundách nebo zápornou dobu (-1) pro zapůjčení, jehož platnost nikdy nevyprší. Nenekonečná zapůjčení může být mezi 15 a 60 sekund. Dobu trvání zapůjčení není možné změnit obnovením nebo změnou.

expires_on
datetime nebo int

Doba potřebná k nastavení vypršení platnosti souboru. Pokud je typem expires_on int, doba vypršení platnosti se nastaví jako počet milisekund, které uplynuly od doby vytvoření. Pokud je typ expires_on datetime, nastaví se doba vypršení platnosti absolutní na zadaný čas. Pokud nejsou k dispozici žádné informace o časovém pásmu, bude se interpretovat jako UTC.

permissions
str

Volitelné a platné pouze v případě, že je pro účet povolený hierarchický obor názvů. Nastaví přístupová oprávnění POSIX pro vlastníka souboru, skupinu, která soubor vlastní, a další. Každá třída může mít udělené oprávnění ke čtení, zápisu nebo spuštění. Podporuje se také bit sticky. Podporují se symbolické (rwxrw-rw-) i 4místné osmičkové notace (např. 0766).

if_modified_since
datetime

Hodnota DateTime. Azure očekává, že předaná hodnota data bude UTC. Pokud je zahrnuté časové pásmo, všechny hodnoty datetime mimo UTC se převedou na UTC. Pokud je datum předáno bez informací o časovém pásmu, předpokládá se, že je to UTC. Tuto hlavičku zadejte, pokud chcete operaci provést pouze v případě, že se prostředek od zadaného času změnil.

if_unmodified_since
datetime

Hodnota DateTime. Azure očekává, že předaná hodnota data bude UTC. Pokud je zahrnuté časové pásmo, všechny hodnoty datetime mimo UTC se převedou na UTC. Pokud je datum předáno bez informací o časovém pásmu, předpokládá se, že je to UTC. Tuto hlavičku zadejte, pokud chcete operaci provést pouze v případě, že prostředek nebyl od zadaného data a času změněn.

etag
str

Hodnota ETag nebo zástupný znak (*). Slouží ke kontrole, jestli se prostředek změnil, a k akci podle podmínky určené parametrem match_condition .

match_condition
MatchConditions

Podmínka shody, která se použije u značky etag.

timeout
int

Nastaví časový limit operace na straně serveru v sekundách. Další podrobnosti najdete tady: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Tato hodnota se v klientovi nesleduje ani neověřuje. Informace o konfiguraci časových limitů sítě na straně klienta najdete tady.

Návraty

DataLakeFileClient

Příklady

Vytvořte soubor v systému souborů.


   file_client = file_system_client.create_file("myfile")

create_file_system

Vytvoří nový systém souborů pod zadaným účtem.

Pokud systém souborů se stejným názvem již existuje, bude vyvolána chyba ResourceExistsError. Tato metoda vrátí klienta, se kterým chcete pracovat s nově vytvořeným systémem souborů.

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

Parametry

metadata
dict(str, str)
Vyžadováno

Dict s páry název-hodnota, které se přidruží k systému souborů jako metadata. Příklad: {'Category':'test'}

public_access
PublicAccess
Vyžadováno

Chcete-li určit, zda lze k datům v systému souborů přistupovat veřejně, a úroveň přístupu.

encryption_scope_options
dict nebo EncryptionScopeOptions

Určuje výchozí obor šifrování, který se nastaví v systému souborů a použije se pro všechny budoucí zápisy.

Novinka ve verzi 12.9.0.

timeout
int

Nastaví časový limit operace na straně serveru v sekundách. Další podrobnosti najdete tady: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Tato hodnota se v klientovi nesleduje ani neověřuje. Informace o konfiguraci časových limitů sítě na straně klienta najdete tady.

Návraty

Slovník hlaviček odpovědi.

Návratový typ

Příklady

Vytvoření systému souborů ve službě datalake


   file_system_client.create_file_system()

delete_directory

Označí zadanou cestu k odstranění.

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

Parametry

directory
str nebo DirectoryProperties
Vyžadováno

Adresář, se kterým chcete pracovat. Může to být buď název adresáře, nebo instance DirectoryVlastnosti.

lease
DataLakeLeaseClient nebo str

Vyžaduje se, pokud má soubor aktivní zapůjčení. Hodnota může být objekt LeaseClient nebo ID zapůjčení jako řetězec.

if_modified_since
datetime

Hodnota DateTime. Azure očekává, že předaná hodnota data bude UTC. Pokud je zahrnuté časové pásmo, všechny hodnoty datetime mimo UTC se převedou na UTC. Pokud je datum předáno bez informací o časovém pásmu, předpokládá se, že je to UTC. Tuto hlavičku zadejte, pokud chcete operaci provést pouze v případě, že se prostředek od zadaného času změnil.

if_unmodified_since
datetime

Hodnota DateTime. Azure očekává, že předaná hodnota data bude UTC. Pokud je zahrnuté časové pásmo, všechny hodnoty datetime mimo UTC se převedou na UTC. Pokud je datum předáno bez informací o časovém pásmu, předpokládá se, že je to UTC. Tuto hlavičku zadejte, pokud chcete operaci provést pouze v případě, že prostředek nebyl od zadaného data a času změněn.

etag
str

Hodnota ETag nebo zástupný znak (*). Slouží ke kontrole, jestli se prostředek změnil, a k akci podle podmínky určené parametrem match_condition .

match_condition
MatchConditions

Podmínka shody, která se použije u značky etag.

timeout
int

Nastaví časový limit operace na straně serveru v sekundách. Další podrobnosti najdete tady: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Tato hodnota se v klientovi nesleduje ani neověřuje. Informace o konfiguraci časových limitů sítě na straně klienta najdete tady.

Návraty

DataLakeDirectoryClient

Příklady

Odstraňte adresář v systému souborů.


   file_system_client.delete_directory("mydirectory")

delete_file

Označí zadaný soubor k odstranění.

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

Parametry

file
str nebo FileProperties
Vyžadováno

Soubor, se kterým chcete pracovat. Může to být buď název souboru, nebo instance FileVlastnosti.

lease
DataLakeLeaseClient nebo str

Vyžaduje se, pokud má soubor aktivní zapůjčení. Hodnota může být objekt LeaseClient nebo ID zapůjčení jako řetězec.

if_modified_since
datetime

Hodnota DateTime. Azure očekává, že hodnota předaného data bude UTC. Pokud je zahrnuté časové pásmo, všechny hodnoty datetime mimo UTC se převedou na UTC. Pokud je datum předáno bez informací o časovém pásmu, předpokládá se, že je to UTC. Tuto hlavičku zadejte, aby se operace prováděla pouze v případě, že byl prostředek od zadaného času změněn.

if_unmodified_since
datetime

Hodnota DateTime. Azure očekává, že hodnota předaného data bude UTC. Pokud je zahrnuté časové pásmo, všechny hodnoty datetime mimo UTC se převedou na UTC. Pokud je datum předáno bez informací o časovém pásmu, předpokládá se, že je to UTC. Tuto hlavičku zadejte pro provedení operace pouze v případě, že prostředek nebyl od zadaného data a času změněn.

etag
str

Hodnota značky ETag nebo zástupný znak (*). Slouží ke kontrole, jestli se prostředek změnil, a k chování podle podmínky zadané parametrem match_condition .

match_condition
MatchConditions

Podmínka shody, která se má použít u značky etag.

timeout
int

Nastaví časový limit operace na straně serveru v sekundách. Další podrobnosti najdete tady: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Tato hodnota není v klientovi sledována ani ověřena. Informace o konfiguraci časových limitů sítě na straně klienta najdete tady.

Návraty

DataLakeFileClient

Příklady

Odstraňte soubor v systému souborů.


   file_system_client.delete_file("myfile")

delete_file_system

Označí zadaný systém souborů k odstranění.

Systém souborů a všechny soubory v něm obsažené jsou později odstraněny během uvolňování paměti. Pokud systém souborů není nalezen, bude vyvolána chyba ResourceNotFoundError.

delete_file_system(**kwargs: Any) -> None

Parametry

lease
str nebo DataLakeLeaseClient

Pokud je zadáno, delete_file_system bude úspěšná jenom v případě, že je zapůjčení systému souborů aktivní a odpovídá tomuto ID. Vyžaduje se, pokud má systém souborů aktivní zapůjčení.

if_modified_since
datetime

Hodnota DateTime. Azure očekává, že hodnota předaného data bude UTC. Pokud je zahrnuté časové pásmo, všechny hodnoty datetime mimo UTC se převedou na UTC. Pokud je datum předáno bez informací o časovém pásmu, předpokládá se, že je to UTC. Tuto hlavičku zadejte, aby se operace prováděla pouze v případě, že byl prostředek od zadaného času změněn.

if_unmodified_since
datetime

Hodnota DateTime. Azure očekává, že hodnota předaného data bude UTC. Pokud je zahrnuté časové pásmo, všechny hodnoty datetime mimo UTC se převedou na UTC. Pokud je datum předáno bez informací o časovém pásmu, předpokládá se, že je to UTC. Tuto hlavičku zadejte pro provedení operace pouze v případě, že prostředek nebyl od zadaného data a času změněn.

etag
str

Hodnota značky ETag nebo zástupný znak (*). Slouží ke kontrole, jestli se prostředek změnil, a k chování podle podmínky zadané parametrem match_condition .

match_condition
MatchConditions

Podmínka shody, která se má použít u značky etag.

timeout
int

Nastaví časový limit operace na straně serveru v sekundách. Další podrobnosti najdete tady: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Tato hodnota není v klientovi sledována ani ověřena. Informace o konfiguraci časových limitů sítě na straně klienta najdete tady.

Návratový typ

Příklady

Odstranění systému souborů ve službě datalake


   file_system_client.delete_file_system()

exists

Vrátí hodnotu True, pokud existuje systém souborů, a v opačném případě vrátí hodnotu False.

exists(**kwargs: Any) -> bool

Parametry

timeout
int

Nastaví časový limit operace na straně serveru v sekundách. Další podrobnosti najdete tady: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Tato hodnota není v klientovi sledována ani ověřena. Informace o konfiguraci časových limitů sítě na straně klienta najdete tady.

Návraty

True, pokud existuje systém souborů, v opačném případě false.

Návratový typ

from_connection_string

Vytvořte FileSystemClient z připojovacího řetězce.

: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
Vyžadováno

Připojovací řetězec k účtu služby Azure Storage.

file_system_name
str
Vyžadováno

Název systému souborů, se kterým chcete pracovat.

credential
výchozí hodnota: None

Přihlašovací údaje, pomocí kterých se má ověřit. Tato možnost je volitelná, pokud adresa URL účtu už má token SAS nebo připojovací řetězec už obsahuje hodnoty sdíleného přístupového klíče. Hodnotou může být řetězec tokenu SAS, instance AzureSasCredential nebo AzureNamedKeyCredential z azure.core.credentials, sdílený přístupový klíč účtu nebo instance třídy TokenCredentials z azure.identity. Zde zadané přihlašovací údaje budou mít přednost před přihlašovacími údaji v připojovacím řetězci. Pokud používáte instanci AzureNamedKeyCredential, název by měl být název účtu úložiště a klíč by měl být klíč účtu úložiště.

Příklady

Vytvoření FileSystemClient z připojovacího řetězce


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

get_directory_client

Získejte klienta pro interakci se zadaným adresářem.

Adresář ještě nemusí existovat.

get_directory_client(directory: DirectoryProperties | str) -> DataLakeDirectoryClient

Parametry

directory
str nebo DirectoryProperties
Vyžadováno

Adresář, se kterým chcete pracovat. Může to být buď název adresáře, nebo instance DirectoryProperties.

Návraty

A DataLakeDirectoryClient.

Návratový typ

Příklady

Získání klienta adresáře pro interakci s konkrétním adresářem


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

get_file_client

Získejte klienta pro interakci se zadaným souborem.

Soubor ještě nemusí existovat.

get_file_client(file_path: FileProperties | str) -> DataLakeFileClient

Parametry

file_path
str nebo FileProperties
Vyžadováno

Soubor, se kterým chcete pracovat. Může to být buď cesta k souboru (z kořenového adresáře), nebo instance FileVlastnosti. Např. adresář/podadresář/soubor

Návraty

A DataLakeFileClient.

Návratový typ

Příklady

Získání klienta souboru pro interakci s konkrétním souborem


   # 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

Získá oprávnění pro zadaný systém souborů. Oprávnění označují, jestli je možné veřejně přistupovat k datům systému souborů.

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

Parametry

lease
DataLakeLeaseClient nebo str

Pokud je tato hodnota zadána, operace bude úspěšná pouze v případě, že je zapůjčení systému souborů aktivní a odpovídá tomuto ID.

timeout
int

Nastaví časový limit operace na straně serveru v sekundách. Další podrobnosti najdete tady: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Tato hodnota není v klientovi sledována ani ověřena. Informace o konfiguraci časových limitů sítě na straně klienta najdete tady.

Návraty

Přístup k informacím o zásadách v diktu

Návratový typ

get_file_system_properties

Vrátí všechna uživatelem definovaná metadata a systémové vlastnosti pro zadaný systém souborů. Vrácená data neobsahují seznam cest systému souborů.

get_file_system_properties(**kwargs: Any) -> FileSystemProperties

Parametry

lease
str nebo DataLakeLeaseClient

Pokud je zadáno, get_file_system_properties bude úspěšná jenom v případě, že je zapůjčení systému souborů aktivní a odpovídá tomuto ID.

timeout
int

Nastaví časový limit operace na straně serveru v sekundách. Další podrobnosti najdete tady: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Tato hodnota není v klientovi sledována ani ověřena. Informace o konfiguraci časových limitů sítě na straně klienta najdete tady.

Návraty

Vlastnosti zadaného systému souborů v rámci objektu systému souborů.

Návratový typ

Příklady

Získání vlastností v systému souborů


   properties = file_system_client.get_file_system_properties()

get_paths

Vrátí generátor pro zobrazení seznamu cest (můžou to být soubory nebo adresáře) v zadaném systému souborů. Generátor bude líně sledovat tokeny pokračování vrácené službou.

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

Parametry

path
str
Vyžadováno

Filtruje výsledky tak, aby vracely pouze cesty pod zadanou cestou.

recursive
Optional[bool]
Vyžadováno

Nepovinný parametr. Nastavte hodnotu True pro rekurzivní a hodnotu False pro iterativní.

max_results
int
Vyžadováno

Volitelná hodnota, která určuje maximální počet položek, které se mají vrátit na stránku. Pokud je vynecháno nebo větší než 5 000, bude odpověď obsahovat až 5 000 položek na stránku.

upn

Nepovinný parametr. Platí jenom v případě, že je pro účet povolený hierarchický obor názvů. Pokud je hodnota true, hodnoty identity uživatele vrácené v hlavičce odpovědí x-ms-owner, x-ms-group a x-ms-ACL se transformují z ID objektů Azure Active Directory na hlavní názvy uživatelů. Pokud je hodnota false, vrátí se hodnoty jako ID objektů Azure Active Directory. Výchozí hodnota je False. Id objektů skupin a aplikací se nepřekládají, protože nemají jedinečné popisné názvy.

timeout
int

Nastaví časový limit operace na straně serveru v sekundách. Další podrobnosti najdete tady: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Tato hodnota se v klientovi nesleduje ani neověřuje. Informace o konfiguraci časových limitů sítě na straně klienta najdete tady.

Návraty

Iterovatelná (automaticky stránkovací) odpověď PathProperties.

Návratový typ

Příklady

Vypište cesty v systému souborů.


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

list_deleted_paths

Vrátí generátor pro výpis odstraněných cest (souborů nebo adresářů) v zadaném systému souborů. Generátor bude líně sledovat tokeny pokračování vrácené službou.

Novinka ve verzi 12.4.0: Tato operace byla zavedena ve verzi rozhraní API 2020-06-12.

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

Parametry

path_prefix
str

Filtruje výsledky tak, aby vracely pouze cesty pod zadanou cestou.

results_per_page
int

Volitelná hodnota, která určuje maximální počet položek, které se mají vrátit na stránku. Pokud ho vynecháte nebo je větší než 5 000, odpověď bude obsahovat až 5 000 položek na stránku.

timeout
int

Nastaví časový limit operace na straně serveru v sekundách. Další podrobnosti najdete tady: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Tato hodnota se v klientovi nesleduje ani neověřuje. Informace o konfiguraci časových limitů sítě na straně klienta najdete tady.

Návraty

Iterovatelná (automatická stránkovací) odpověď DeletedPathProperties.

Návratový typ

set_file_system_access_policy

Nastaví oprávnění pro zadaný systém souborů nebo uložené zásady přístupu, které lze použít se sdílenými přístupovými podpisy. Oprávnění označují, jestli se k souborům v systému souborů může přistupovat veřejně.

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]
Vyžadováno

Slovník zásad přístupu, který chcete přidružit k systému souborů. Slovník může obsahovat až 5 prvků. Prázdný slovník vymaže zásady přístupu nastavené pro službu.

public_access
PublicAccess
Vyžadováno

Chcete-li určit, zda lze k datům v systému souborů přistupovat veřejně, a úroveň přístupu.

lease
DataLakeLeaseClient nebo str

Vyžaduje se, pokud má systém souborů aktivní zapůjčení. Hodnotou může být objekt DataLakeLeaseClient nebo ID zapůjčení jako řetězec.

if_modified_since
datetime

Hodnota data a času. Azure očekává, že předaná hodnota data bude UTC. Pokud je zahrnuté časové pásmo, všechny hodnoty datetime mimo UTC se převedou na UTC. Pokud je datum předáno bez informací o časovém pásmu, předpokládá se, že je to UTC. Tuto hlavičku zadejte, pokud chcete operaci provést pouze v případě, že se prostředek od zadaného data a času změnil.

if_unmodified_since
datetime

Hodnota data a času. Azure očekává, že předaná hodnota data bude UTC. Pokud je zahrnuté časové pásmo, všechny hodnoty datetime mimo UTC se převedou na UTC. Pokud je datum předáno bez informací o časovém pásmu, předpokládá se, že je to UTC. Tuto hlavičku zadejte, pokud chcete operaci provést pouze v případě, že prostředek nebyl od zadaného data a času změněn.

timeout
int

Nastaví časový limit operace na straně serveru v sekundách. Další podrobnosti najdete tady: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Tato hodnota se v klientovi nesleduje ani neověřuje. Informace o konfiguraci časových limitů sítě na straně klienta najdete tady.

Návraty

Dict vlastnosti aktualizovaného systému souborů (značka Etag a naposledy změněno)

Návratový typ

set_file_system_metadata

Nastaví jednu nebo více uživatelsky definovaných dvojic název-hodnota pro zadaný systém souborů. Každé volání této operace nahradí všechna existující metadata připojená k systému souborů. Pokud chcete odebrat všechna metadata ze systému souborů, zavolejte tuto operaci bez diktování metadat.

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

Parametry

metadata
dict[str, str]
Vyžadováno

Dict obsahující páry název-hodnota, které se přidruží k systému souborů jako metadata. Příklad: {'category':'test'}

lease
str nebo DataLakeLeaseClient

Pokud zadáte hodnotu, set_file_system_metadata bude úspěšná jenom v případě, že je aktivní zapůjčení systému souborů a odpovídá tomuto ID.

if_modified_since
datetime

Hodnota DateTime. Azure očekává, že předaná hodnota data bude UTC. Pokud je zahrnuté časové pásmo, všechny hodnoty datetime mimo UTC se převedou na UTC. Pokud je datum předáno bez informací o časovém pásmu, předpokládá se, že je to UTC. Tuto hlavičku zadejte, pokud chcete operaci provést pouze v případě, že se prostředek od zadaného času změnil.

if_unmodified_since
datetime

Hodnota DateTime. Azure očekává, že předaná hodnota data bude UTC. Pokud je zahrnuté časové pásmo, všechny hodnoty datetime mimo UTC se převedou na UTC. Pokud je datum předáno bez informací o časovém pásmu, předpokládá se, že je to UTC. Tuto hlavičku zadejte, pokud chcete operaci provést pouze v případě, že prostředek nebyl od zadaného data a času změněn.

etag
str

Hodnota ETag nebo zástupný znak (*). Slouží ke kontrole, jestli se prostředek změnil, a k akci podle podmínky určené parametrem match_condition .

match_condition
MatchConditions

Podmínka shody, která se použije u značky etag.

timeout
int

Nastaví časový limit operace na straně serveru v sekundách. Další podrobnosti najdete tady: https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Tato hodnota se v klientovi nesleduje ani neověřuje. Informace o konfiguraci časových limitů sítě na straně klienta najdete tady.

Návraty

filesystem-updated property dict (Etag a last modified).

Návratový typ

Příklady

Nastavení metadat v systému souborů.


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

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

Atributy

api_version

Verze rozhraní API služby Storage, která se používá pro požadavky.

location_mode

Režim umístění, který klient aktuálně používá.

Ve výchozím nastavení to bude "primární". Mezi možnosti patří "primární" a "sekundární".

primary_endpoint

Úplná adresa URL primárního koncového bodu.

primary_hostname

Název hostitele primárního koncového bodu.

secondary_endpoint

Úplná adresa URL sekundárního koncového bodu, pokud je nakonfigurovaná.

Pokud není k dispozici, bude vyvolána chyba ValueError. Pokud chcete explicitně zadat název sekundárního hostitele, použijte volitelný argument secondary_hostname klíčového slova pro vytvoření instance.

Výjimky

secondary_hostname

Název hostitele sekundárního koncového bodu.

Pokud není k dispozici, bude to Žádný. Pokud chcete explicitně zadat název sekundárního hostitele, použijte volitelný argument secondary_hostname klíčového slova pro vytvoření instance.

url

Úplná adresa URL koncového bodu pro tuto entitu, včetně tokenu SAS, pokud je použit.

To může být primární koncový bod nebo sekundární koncový bod v závislosti na aktuálním location_mode. :returns: Úplná adresa URL koncového bodu pro tuto entitu, včetně tokenu SAS, pokud je použit. :rtype: str