FileSystemClient Klasse
Ein Client, der mit einem bestimmten Dateisystem interagiert, auch wenn dieses Dateisystem möglicherweise noch nicht vorhanden ist.
Für Vorgänge, die sich auf ein bestimmtes Verzeichnis oder eine bestimmte Datei innerhalb dieses Dateisystems beziehen, kann ein Verzeichnisclient oder Dateiclient mithilfe der get_directory_client - oder get_file_client -Funktionen abgerufen werden.
ivar str url: Die vollständige Endpunkt-URL zum Dateisystem, einschließlich des SAS-Tokens, falls verwendet.
ivar str primary_endpoint: Die vollständige URL des primären Endpunkts.
ivar str primary_hostname: Der Hostname des primären Endpunkts.
param str account_url: Der URI für das Speicherkonto.
param file_system_name: Das Dateisystem für das Verzeichnis oder die Dateien.
typ file_system_name: str
param-Anmeldeinformationen: Die Anmeldeinformationen, mit denen die Authentifizierung erfolgt. Dies ist optional, wenn die Konto-URL bereits über ein SAS-Token verfügt. Der Wert kann eine SAS-Tokenzeichenfolge, eine instance eines AzureSasCredential- oder AzureNamedKeyCredential-Elements von azure.core.credentials, ein kontofreigaber Zugriffsschlüssel oder ein instance einer TokenCredentials-Klasse aus azure.identity sein. Wenn der Ressourcen-URI bereits ein SAS-Token enthält, wird dies zugunsten expliziter Anmeldeinformationen ignoriert – außer im Fall von AzureSasCredential, bei dem die in Konflikt stehenden SAS-Token einen ValueError auslösen. Wenn Sie eine instance von AzureNamedKeyCredential verwenden, sollte "name" der Name des Speicherkontos und "key" der Speicherkontoschlüssel sein.
Schlüsselwort (keyword) str api_version: Die Speicher-API-Version, die für Anforderungen verwendet werden soll. Der Standardwert ist die neueste Dienstversion, die mit dem aktuellen SDK kompatibel ist. Die Einstellung auf eine ältere Version kann zu einer verringerten Featurekompatibilität führen.
- Vererbung
-
azure.storage.filedatalake._shared.base_client_async.AsyncStorageAccountHostsMixinFileSystemClientazure.storage.filedatalake._file_system_client.FileSystemClientFileSystemClient
Konstruktor
FileSystemClient(account_url: str, file_system_name: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | AsyncTokenCredential | None = None, **kwargs: Any)
Parameter
- account_url
- file_system_name
- credential
Beispiele
Rufen Sie einen FileSystemClient aus einem vorhandenen DataLakeServiceClient ab.
# Instantiate a DataLakeServiceClient using a connection string
from azure.storage.filedatalake.aio import DataLakeServiceClient
datalake_service_client = DataLakeServiceClient.from_connection_string(self.connection_string)
async with datalake_service_client:
# Instantiate a FileSystemClient
file_system_client = datalake_service_client.get_file_system_client("mynewfilesystems")
Methoden
acquire_lease |
Fordert eine neue Lease an. Wenn das Dateisystem nicht über eine aktive Lease verfügt, erstellt der DataLake-Dienst eine Lease für das Dateisystem und gibt eine neue Lease-ID zurück. |
close |
Diese Methode besteht darin, die vom Client geöffneten Sockets zu schließen. Es muss nicht verwendet werden, wenn sie mit einem Kontext-Manager verwendet wird. |
create_directory |
Erstellen eines Verzeichnisses |
create_file |
Datei erstellen |
create_file_system |
Erstellt ein neues Dateisystem unter dem angegebenen Konto. Wenn das Dateisystem mit demselben Namen bereits vorhanden ist, wird ein ResourceExistsError ausgelöst. Diese Methode gibt einen Client zurück, mit dem mit dem neu erstellten Dateisystem interagieren soll. |
delete_directory |
Markiert den angegebenen Pfad zum Löschen. |
delete_file |
Markiert die angegebene Datei zum Löschen. Löschen Sie die Datei im Dateisystem.
|
delete_file_system |
Kennzeichnet das angegebene Dateisystem zum Löschen. Das Dateisystem und alle darin enthaltenen Dateien werden später während der Garbage Collection gelöscht. Wenn das Dateisystem nicht gefunden wird, wird ein ResourceNotFoundError ausgelöst. |
exists |
Gibt True zurück, wenn ein Dateisystem vorhanden ist, und gibt andernfalls False zurück. |
from_connection_string |
Erstellen Sie FileSystemClient aus einer Verbindungszeichenfolge. :return a FileSystemClient :rtype ~azure.storage.filedatalake.FileSystemClient |
get_directory_client |
Rufen Sie einen Client für die Interaktion mit dem angegebenen Verzeichnis ab. Das Verzeichnis muss noch nicht vorhanden sein. |
get_file_client |
Rufen Sie einen Client für die Interaktion mit der angegebenen Datei ab. Die Datei muss noch nicht vorhanden sein. |
get_file_system_access_policy |
Ruft die Berechtigungen für das angegebene Dateisystem ab. Die Berechtigungen geben an, ob auf Dateisystemdaten öffentlich zugegriffen werden darf. |
get_file_system_properties |
Gibt alle benutzerdefinierten Metadaten und Systemeigenschaften für das angegebene Dateisystem zurück. Die zurückgegebenen Daten enthalten nicht die Liste der Pfade des Dateisystems. |
get_paths |
Gibt einen Generator zurück, der die Pfade (z. B. Dateien oder Verzeichnisse) unter dem angegebenen Dateisystem auflistet. Der Generator folgt den vom Dienst zurückgegebenen Fortsetzungstoken verzögert. |
list_deleted_paths |
Gibt einen Generator zurück, der die gelöschten Pfade (Datei oder Verzeichnis) unter dem angegebenen Dateisystem auflistet. Der Generator folgt den vom Dienst zurückgegebenen Fortsetzungstoken verzögert. Neu in Version 12.4.0: Dieser Vorgang wurde in der API-Version "2020-06-12" eingeführt. |
set_file_system_access_policy |
Legt die Berechtigungen für das angegebene Dateisystem oder die gespeicherten Zugriffsrichtlinien fest, die mit Shared Access Signatures verwendet werden können. Die Berechtigungen geben an, ob auf Dateien in einem Dateisystem öffentlich zugegriffen werden kann. |
set_file_system_metadata |
Legt mindestens ein benutzerdefiniertes Name-Wert-Paar für das angegebene Dateisystem fest. Jeder Aufruf dieses Vorgangs ersetzt alle vorhandenen Metadaten, die an das Dateisystem angefügt sind. Um alle Metadaten aus dem Dateisystem zu entfernen, rufen Sie diesen Vorgang ohne Metadaten-Diktat auf. |
acquire_lease
Fordert eine neue Lease an. Wenn das Dateisystem nicht über eine aktive Lease verfügt, erstellt der DataLake-Dienst eine Lease für das Dateisystem und gibt eine neue Lease-ID zurück.
async acquire_lease(lease_duration: int = -1, lease_id: str | None = None, **kwargs) -> DataLakeLeaseClient
Parameter
- lease_duration
- int
Gibt die Dauer der Lease in Sekunden oder als minus eins (-1) für eine nie ablaufende Lease an. Die Dauer einer nicht unendlichen Lease kann zwischen 15 und 60 Sekunden liegen. Eine Leasedauer kann nicht mithilfe von Verlängerung oder Änderung geändert werden. Der Standardwert ist -1 (unbegrenzte Lease).
- lease_id
- str
Vorgeschlagene Lease-ID in einem GUID-Zeichenfolgenformat. Der DataLake-Dienst gibt 400 (Ungültige Anforderung) zurück, wenn die vorgeschlagene Lease-ID nicht das richtige Format aufweist.
- if_modified_since
- datetime
Ein DateTime-Wert Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn die Zeitzone enthalten ist, werden alle datumstimen, die nicht utc sind, in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit der angegebenen Zeit geändert wurde.
- if_unmodified_since
- datetime
Ein DateTime-Wert Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn die Zeitzone enthalten ist, werden alle datumstimen, die nicht utc sind, in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit dem angegebenen Datum/der angegebenen Uhrzeit nicht geändert wurde.
- etag
- str
Ein ETag-Wert oder das Platzhalterzeichen (*). Wird verwendet, um zu überprüfen, ob sich die Ressource geändert hat, und handelt gemäß der Bedingung, die vom parameter match_condition angegeben wird.
- match_condition
- MatchConditions
Die Übereinstimmungsbedingung, die für das etag verwendet werden soll.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird auf dem Client nicht nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
Ein DataLakeLeaseClient-Objekt, das in einem Kontext-Manager ausgeführt werden kann.
Rückgabetyp
Beispiele
Erwerben einer Lease auf dem file_system.
# Acquire a lease on the file system
lease = await file_system_client.acquire_lease()
# Delete file system by passing in the lease
await file_system_client.delete_file_system(lease=lease)
close
Diese Methode besteht darin, die vom Client geöffneten Sockets zu schließen. Es muss nicht verwendet werden, wenn sie mit einem Kontext-Manager verwendet wird.
async close() -> None
create_directory
Erstellen eines Verzeichnisses
async create_directory(directory: DirectoryProperties | str, metadata: Dict[str, str] | None = None, **kwargs) -> DataLakeDirectoryClient
Parameter
- directory
- str oder DirectoryProperties
Das Verzeichnis, mit dem interagiert werden soll. Dies kann entweder der Name des Verzeichnisses oder eine instance von DirectoryProperties sein.
- content_settings
- ContentSettings
ContentSettings-Objekt, das zum Festlegen von Pfadeigenschaften verwendet wird.
- lease
- DataLakeLeaseClient oder str
Erforderlich, wenn die Datei über eine aktive Lease verfügt. Der Wert kann ein DataLakeLeaseClient-Objekt oder die Lease-ID als Zeichenfolge sein.
- umask
- str
Optional und nur gültig, wenn der hierarchische Namespace für das Konto aktiviert ist. Wenn Sie eine Datei oder ein Verzeichnis erstellen und der übergeordnete Ordner keine Standard-ACL aufweist, schränkt umask die Berechtigungen der zu erstellenden Datei oder des Verzeichnisses ein. Die resultierende Berechtigung wird von p & ^u erteilt, wobei p die Berechtigung und Sie der Umask sind. Wenn p beispielsweise 0777 und 0057 ist, lautet die resultierende Berechtigung 0720. Die Standardberechtigung ist 0777 für ein Verzeichnis und 0666 für eine Datei. Der Standardwert ist 0027. Der Umask muss in 4-stelliger oktaler Notation (z.B. 0766) angegeben werden.
- owner
- str
Der Besitzer der Datei oder des Verzeichnisses.
- group
- str
Die besitzende Gruppe der Datei oder des Verzeichnisses.
- acl
- str
Legt POSIX-Zugriffssteuerungsrechte für Dateien und Verzeichnisse fest. Der Wert ist eine durch Trennzeichen getrennte Liste von Zugriffssteuerungseinträgen. Jeder Zugriffssteuerungseintrag (Access Control Entry, ACE) besteht aus einem Bereich, einem Typ, einem Benutzer- oder Gruppenbezeichner und Berechtigungen im Format "[scope:][type]:[id]:[permissions]".
- lease_id
- str
Vorgeschlagene Lease-ID in einem GUID-Zeichenfolgenformat. Der DataLake-Dienst gibt 400 (Ungültige Anforderung) zurück, wenn die vorgeschlagene Lease-ID nicht das richtige Format aufweist.
- lease_duration
- int
Gibt die Dauer der Lease in Sekunden oder als minus eins (-1) für eine nie ablaufende Lease an. Die Dauer einer nicht unendlichen Lease kann zwischen 15 und 60 Sekunden liegen. Eine Leasedauer kann nicht mit Verlängerung oder Änderung geändert werden.
- permissions
- str
Optional und nur gültig, wenn hierarchischer Namespace für das Konto aktiviert ist. Legt POSIX-Zugriffsberechtigungen für den Dateibesitzer, die Dateibesitzergruppe und andere fest. Jeder Klasse kann lese-, schreib- oder ausführungsberechtigungen erteilt werden. Das klebrige Bit wird ebenfalls unterstützt. Sowohl symbolische (rwxrw-rw-) als auch 4-stellige oktale Notation (z. B. 0766) werden unterstützt.
- if_modified_since
- datetime
Ein DateTime-Wert Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn Zeitzone enthalten ist, werden alle Datumstimes ohne UTC in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit der angegebenen Zeit geändert wurde.
- if_unmodified_since
- datetime
Ein DateTime-Wert Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn Zeitzone enthalten ist, werden alle Datumstimes ohne UTC in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit dem angegebenen Datum/der angegebenen Uhrzeit nicht geändert wurde.
- etag
- str
Ein ETag-Wert oder das Platzhalterzeichen (*). Wird verwendet, um zu überprüfen, ob sich die Ressource geändert hat, und handelt gemäß der Bedingung, die vom parameter match_condition angegeben wird.
- match_condition
- MatchConditions
Die Übereinstimmungsbedingung, die für das etag verwendet werden soll.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird nicht auf dem Client nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
DataLakeDirectoryClient
Beispiele
Erstellen Sie das Verzeichnis im Dateisystem.
directory_client = await file_system_client.create_directory("mydirectory")
create_file
Datei erstellen
async create_file(file: FileProperties | str, **kwargs) -> DataLakeFileClient
Parameter
- file
- str oder FileProperties
Die Datei, mit der interagiert werden soll. Dies kann entweder der Name der Datei oder ein instance von FileProperties sein.
- content_settings
- ContentSettings
ContentSettings-Objekt, das zum Festlegen von Pfadeigenschaften verwendet wird.
- lease
- DataLakeLeaseClient oder str
Erforderlich, wenn die Datei über eine aktive Lease verfügt. Value kann ein DataLakeLeaseClient-Objekt oder die Lease-ID als Zeichenfolge sein.
- umask
- str
Optional und nur gültig, wenn hierarchischer Namespace für das Konto aktiviert ist. Wenn Sie eine Datei oder ein Verzeichnis erstellen und der übergeordnete Ordner keine Standard-ACL aufweist, schränkt der Umask die Berechtigungen der zu erstellenden Datei oder des Verzeichnisses ein. Die resultierende Berechtigung wird von p & ^u erteilt, wobei p die Berechtigung und Sie der Umask sind. Wenn p beispielsweise 0777 ist und Sie 0057 sind, ist die resultierende Berechtigung 0720. Die Standardberechtigung ist 0777 für ein Verzeichnis und 0666 für eine Datei. Der Standardumask ist 0027. Der Umask muss in 4-stelliger oktaler Notation angegeben werden (z. B. 0766).
- owner
- str
Der Besitzer der Datei oder des Verzeichnisses.
- group
- str
Die Besitzergruppe der Datei oder des Verzeichnisses.
- acl
- str
Legt POSIX-Zugriffssteuerungsrechte für Dateien und Verzeichnisse fest. Der Wert ist eine durch Trennzeichen getrennte Liste von Zugriffssteuerungseinträgen. Jeder Zugriffssteuerungseintrag (Access Control Entry, ACE) besteht aus einem Bereich, einem Typ, einem Benutzer- oder Gruppenbezeichner und Berechtigungen im Format "[scope:][type]:[id]:[permissions]".
- lease_id
- str
Vorgeschlagene Lease-ID in einem GUID-Zeichenfolgenformat. Der DataLake-Dienst gibt 400 (Ungültige Anforderung) zurück, wenn die vorgeschlagene Lease-ID nicht das richtige Format aufweist.
- lease_duration
- int
Gibt die Dauer der Lease in Sekunden oder als minus eins (-1) für eine nie ablaufende Lease an. Die Dauer einer nicht unendlichen Lease kann zwischen 15 und 60 Sekunden liegen. Eine Leasedauer kann nicht mit Verlängerung oder Änderung geändert werden.
Die Zeit, zu der die Datei auf Ablauf festgelegt werden soll. Wenn der Typ von expires_on ein int ist, wird die Ablaufzeit als die Anzahl der Millisekunden festgelegt, die seit der Erstellungszeit verstrichen sind. Wenn der Typ von expires_on datetime ist, wird die Ablaufzeit absolut auf die angegebene Zeit festgelegt. Wenn keine Zeitzoneninformationen bereitgestellt werden, wird dies als UTC interpretiert.
- permissions
- str
Optional und nur gültig, wenn hierarchischer Namespace für das Konto aktiviert ist. Legt POSIX-Zugriffsberechtigungen für den Dateibesitzer, die Dateibesitzergruppe und andere fest. Jeder Klasse kann lese-, schreib- oder ausführungsberechtigungen erteilt werden. Das klebrige Bit wird ebenfalls unterstützt. Sowohl symbolische (rwxrw-rw-) als auch 4-stellige oktale Notation (z. B. 0766) werden unterstützt.
- if_modified_since
- datetime
Ein DateTime-Wert Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn Zeitzone enthalten ist, werden alle Datumstimes ohne UTC in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit der angegebenen Zeit geändert wurde.
- if_unmodified_since
- datetime
Ein DateTime-Wert Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn Zeitzone enthalten ist, werden alle Datumstimes ohne UTC in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit dem angegebenen Datum/der angegebenen Uhrzeit nicht geändert wurde.
- etag
- str
Ein ETag-Wert oder das Platzhalterzeichen (*). Wird verwendet, um zu überprüfen, ob sich die Ressource geändert hat, und handelt gemäß der Bedingung, die vom parameter match_condition angegeben wird.
- match_condition
- MatchConditions
Die Übereinstimmungsbedingung, die für das etag verwendet werden soll.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird nicht auf dem Client nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
DataLakeFileClient
Beispiele
Erstellen Sie eine Datei im Dateisystem.
file_client = await file_system_client.create_file("myfile")
create_file_system
Erstellt ein neues Dateisystem unter dem angegebenen Konto.
Wenn das Dateisystem mit demselben Namen bereits vorhanden ist, wird ein ResourceExistsError ausgelöst. Diese Methode gibt einen Client zurück, mit dem mit dem neu erstellten Dateisystem interagieren soll.
async create_file_system(metadata: Dict[str, str] | None = None, public_access: PublicAccess | None = None, **kwargs) -> Dict[str, str | datetime]
Parameter
Ein Diktat mit Namen-Wert-Paaren, die dem Dateisystem als Metadaten zugeordnet werden sollen. Beispiel: {'Category':'test'}
- public_access
- PublicAccess
So geben Sie an, ob auf Daten im Dateisystem öffentlich zugegriffen werden darf und welche Zugriffsebene sie haben.
- encryption_scope_options
- dict oder EncryptionScopeOptions
Gibt den Standardverschlüsselungsbereich an, der im Dateisystem festgelegt und für alle zukünftigen Schreibvorgänge verwendet werden soll.
Neu in Version 12.9.0.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird nicht auf dem Client nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
Ein Wörterbuch mit Antwortheadern.
Rückgabetyp
Beispiele
Erstellen eines Dateisystems im datalake-Dienst.
await file_system_client.create_file_system()
delete_directory
Markiert den angegebenen Pfad zum Löschen.
async delete_directory(directory: DirectoryProperties | str, **kwargs) -> DataLakeDirectoryClient
Parameter
- directory
- str oder DirectoryProperties
Das Verzeichnis, mit dem interagiert werden soll. Dies kann entweder der Name des Verzeichnisses oder ein instance von DirectoryProperties sein.
- lease
- DataLakeLeaseClient oder str
Erforderlich, wenn die Datei über eine aktive Lease verfügt. Value kann ein LeaseClient-Objekt oder die Lease-ID als Zeichenfolge sein.
- if_modified_since
- datetime
Ein DateTime-Wert Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn Zeitzone enthalten ist, werden alle Datumstimes ohne UTC in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit der angegebenen Zeit geändert wurde.
- if_unmodified_since
- datetime
Ein DateTime-Wert Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn Zeitzone enthalten ist, werden alle Datumstimes ohne UTC in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit dem angegebenen Datum/der angegebenen Uhrzeit nicht geändert wurde.
- etag
- str
Ein ETag-Wert oder das Platzhalterzeichen (*). Wird verwendet, um zu überprüfen, ob sich die Ressource geändert hat, und handelt gemäß der Bedingung, die vom parameter match_condition angegeben wird.
- match_condition
- MatchConditions
Die Übereinstimmungsbedingung, die für das etag verwendet werden soll.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird nicht auf dem Client nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
DataLakeDirectoryClient
Beispiele
Löschen Sie das Verzeichnis im Dateisystem.
await file_system_client.delete_directory("mydirectory")
delete_file
Markiert die angegebene Datei zum Löschen.
Löschen Sie die Datei im Dateisystem.
await file_system_client.delete_file("myfile")
async delete_file(file: FileProperties | str, **kwargs) -> DataLakeFileClient
Parameter
- file
- str oder FileProperties
Die Datei, mit der interagiert werden soll. Dies kann entweder der Name der Datei oder ein instance von FileProperties sein.
- lease
- DataLakeLeaseClient oder str
Erforderlich, wenn die Datei über eine aktive Lease verfügt. Value kann ein LeaseClient-Objekt oder die Lease-ID als Zeichenfolge sein.
- if_modified_since
- datetime
Ein DateTime-Wert Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn Zeitzone enthalten ist, werden alle Datumstimes ohne UTC in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit der angegebenen Zeit geändert wurde.
- if_unmodified_since
- datetime
Ein DateTime-Wert Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn Zeitzone enthalten ist, werden alle Datumstimes ohne UTC in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit dem angegebenen Datum/der angegebenen Uhrzeit nicht geändert wurde.
- etag
- str
Ein ETag-Wert oder das Platzhalterzeichen (*). Wird verwendet, um zu überprüfen, ob sich die Ressource geändert hat, und handelt gemäß der Bedingung, die vom parameter match_condition angegeben wird.
- match_condition
- MatchConditions
Die Übereinstimmungsbedingung, die für das etag verwendet werden soll.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird nicht auf dem Client nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
DataLakeFileClient
delete_file_system
Kennzeichnet das angegebene Dateisystem zum Löschen.
Das Dateisystem und alle darin enthaltenen Dateien werden später während der Garbage Collection gelöscht. Wenn das Dateisystem nicht gefunden wird, wird ein ResourceNotFoundError ausgelöst.
async delete_file_system(**kwargs: Any) -> None
Parameter
- lease
- DataLakeLeaseClient oder str
Wenn angegeben, ist delete_file_system nur erfolgreich, wenn die Lease des Dateisystems aktiv ist und dieser ID entspricht. Erforderlich, wenn das Dateisystem über eine aktive Lease verfügt.
- if_modified_since
- datetime
Ein DateTime-Wert Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn Zeitzone enthalten ist, werden alle Datumstimes ohne UTC in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit der angegebenen Zeit geändert wurde.
- if_unmodified_since
- datetime
Ein DateTime-Wert Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn Zeitzone enthalten ist, werden alle Datumstimes ohne UTC in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit dem angegebenen Datum/der angegebenen Uhrzeit nicht geändert wurde.
- etag
- str
Ein ETag-Wert oder das Platzhalterzeichen (*). Wird verwendet, um zu überprüfen, ob sich die Ressource geändert hat, und handelt gemäß der Bedingung, die vom parameter match_condition angegeben wird.
- match_condition
- MatchConditions
Die Übereinstimmungsbedingung, die für das etag verwendet werden soll.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird nicht auf dem Client nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Rückgabetyp
Beispiele
Löschen eines Dateisystems im datalake-Dienst.
await file_system_client.delete_file_system()
exists
Gibt True zurück, wenn ein Dateisystem vorhanden ist, und gibt andernfalls False zurück.
async exists(**kwargs: Any) -> bool
Parameter
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird nicht auf dem Client nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
True, wenn ein Dateisystem vorhanden ist, andernfalls False.
Rückgabetyp
from_connection_string
Erstellen Sie FileSystemClient aus einer Verbindungszeichenfolge.
: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
Parameter
- credential
Die Anmeldeinformationen, mit denen die Authentifizierung erfolgt. Dies ist optional, wenn die Konto-URL bereits über ein SAS-Token verfügt oder die Verbindungszeichenfolge bereits freigegebene Zugriffsschlüsselwerte aufweist. Der Wert kann eine SAS-Tokenzeichenfolge, ein instance einer AzureSasCredential- oder AzureNamedKeyCredential-Instanz von azure.core.credentials, ein freigegebener Zugriffsschlüssel für ein Konto oder ein instance einer TokenCredentials-Klasse aus azure.identity sein. Die hier angegebenen Anmeldeinformationen haben Vorrang vor denen in der Verbindungszeichenfolge. Wenn Sie eine instance von AzureNamedKeyCredential verwenden, sollte "name" der Name des Speicherkontos und "key" der Speicherkontoschlüssel sein.
Beispiele
Erstellen von FileSystemClient aus Verbindungszeichenfolge
from azure.storage.filedatalake import FileSystemClient
file_system_client = FileSystemClient.from_connection_string(self.connection_string, "filesystem")
get_directory_client
Rufen Sie einen Client für die Interaktion mit dem angegebenen Verzeichnis ab.
Das Verzeichnis muss noch nicht vorhanden sein.
get_directory_client(directory: DirectoryProperties | str) -> DataLakeDirectoryClient
Parameter
- directory
- str oder DirectoryProperties
Das Verzeichnis, mit dem interagiert werden soll. Dies kann entweder der Name des Verzeichnisses oder ein instance von DirectoryProperties sein.
Gibt zurück
Ein DataLakeDirectoryClient.
Rückgabetyp
Beispiele
Abrufen des Verzeichnisclients für die Interaktion mit einem bestimmten Verzeichnis.
# Get the DataLakeDirectoryClient from the FileSystemClient to interact with a specific file
directory_client = file_system_client.get_directory_client("mynewdirectory")
get_file_client
Rufen Sie einen Client für die Interaktion mit der angegebenen Datei ab.
Die Datei muss noch nicht vorhanden sein.
get_file_client(file_path: FileProperties | str) -> DataLakeFileClient
Parameter
- file_path
- str oder FileProperties
Die Datei, mit der interagiert werden soll. Dies kann entweder der Pfad der Datei (aus dem Stammverzeichnis) oder ein instance von FileProperties sein. z. B. verzeichnis/Unterverzeichnis/Datei
Gibt zurück
Ein DataLakeFileClient.
Rückgabetyp
Beispiele
Abrufen der Interaktion des Dateiclients mit einer bestimmten Datei.
# 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
Ruft die Berechtigungen für das angegebene Dateisystem ab. Die Berechtigungen geben an, ob auf Dateisystemdaten öffentlich zugegriffen werden darf.
async get_file_system_access_policy(**kwargs: Any) -> Dict[str, Any]
Parameter
- lease
- DataLakeLeaseClient oder str
Wenn angegeben, get_file_system_access_policy nur erfolgreich, wenn die Lease des Dateisystems aktiv ist und dieser ID entspricht.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird nicht auf dem Client nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
Greifen Sie auf Richtlinieninformationen in einem Dict zu.
Rückgabetyp
get_file_system_properties
Gibt alle benutzerdefinierten Metadaten und Systemeigenschaften für das angegebene Dateisystem zurück. Die zurückgegebenen Daten enthalten nicht die Liste der Pfade des Dateisystems.
async get_file_system_properties(**kwargs: Any) -> FileSystemProperties
Parameter
- lease
- DataLakeLeaseClient oder str
Wenn angegeben, get_file_system_properties nur erfolgreich, wenn die Lease des Dateisystems aktiv ist und dieser ID entspricht.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird auf dem Client nicht nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
Eigenschaften für das angegebene Dateisystem in einem Dateisystemobjekt.
Rückgabetyp
Beispiele
Abrufen von Eigenschaften für das Dateisystem.
properties = await file_system_client.get_file_system_properties()
get_paths
Gibt einen Generator zurück, der die Pfade (z. B. Dateien oder Verzeichnisse) unter dem angegebenen Dateisystem auflistet. Der Generator folgt den vom Dienst zurückgegebenen Fortsetzungstoken verzögert.
get_paths(path: str | None = None, recursive: bool | None = True, max_results: int | None = None, **kwargs) -> AsyncItemPaged[PathProperties]
Parameter
- path
- str
Filtert die Ergebnisse, um nur Pfade unter dem angegebenen Pfad zurückzugeben.
Optional. Legen Sie true für rekursiv und false für iterativ fest.
- max_results
- int
Ein optionaler Wert, der die maximale Anzahl von Elementen angibt, die pro Seite zurückgegeben werden sollen. Wenn nicht angegeben oder größer als 5.000, enthält die Antwort bis zu 5.000 Elemente pro Seite.
- upn
Optional. Nur gültig, wenn der hierarchische Namespace für das Konto aktiviert ist. Bei "true" werden die in den Antwortheadern x-ms-owner, x-ms-group und x-ms-acl zurückgegebenen Benutzeridentitätswerte von Azure Active Directory-Objekt-IDs in Benutzerprinzipalnamen transformiert. Bei "false" werden die Werte als Azure Active Directory-Objekt-IDs zurückgegeben. Der Standardwert ist „FALSE“. Beachten Sie, dass Gruppen- und Anwendungsobjekt-IDs nicht übersetzt werden, da sie keine eindeutigen Anzeigenamen haben.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird auf dem Client nicht nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
Eine iterierbare Antwort (automatisches Paging) von PathProperties.
Rückgabetyp
Beispiele
Listet die Blobs im Dateisystem auf.
path_list = file_system_client.get_paths()
async for path in path_list:
print(path.name + '\n')
list_deleted_paths
Gibt einen Generator zurück, der die gelöschten Pfade (Datei oder Verzeichnis) unter dem angegebenen Dateisystem auflistet. Der Generator folgt den vom Dienst zurückgegebenen Fortsetzungstoken verzögert.
Neu in Version 12.4.0: Dieser Vorgang wurde in der API-Version "2020-06-12" eingeführt.
list_deleted_paths(**kwargs: Any) -> AsyncItemPaged[DeletedPathProperties]
Parameter
- path_prefix
- str
Filtert die Ergebnisse, um nur Pfade unter dem angegebenen Pfad zurückzugeben.
- results_per_page
- int
Ein optionaler Wert, der die maximale Anzahl von Elementen angibt, die pro Seite zurückgegeben werden sollen. Wenn nicht angegeben oder größer als 5.000, enthält die Antwort bis zu 5.000 Elemente pro Seite.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird auf dem Client nicht nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
Eine iterierbare Antwort (auto-paging) von DeletedPathProperties.
Rückgabetyp
set_file_system_access_policy
Legt die Berechtigungen für das angegebene Dateisystem oder die gespeicherten Zugriffsrichtlinien fest, die mit Shared Access Signatures verwendet werden können. Die Berechtigungen geben an, ob auf Dateien in einem Dateisystem öffentlich zugegriffen werden kann.
async set_file_system_access_policy(signed_identifiers: Dict[str, AccessPolicy], public_access: str | PublicAccess | None = None, **kwargs) -> Dict[str, str | datetime]
Parameter
- signed_identifiers
- dict[str, AccessPolicy]
Ein Wörterbuch mit Zugriffsrichtlinien, die dem Dateisystem zugeordnet werden sollen. Das Wörterbuch kann bis zu 5 Elemente enthalten. Ein leeres Wörterbuch löscht die zugriffsrichtlinien, die für den Dienst festgelegt sind.
- public_access
- PublicAccess
Geben Sie an, ob öffentlich auf Daten im Dateisystem zugegriffen werden darf, und die Zugriffsebene.
- lease
- DataLakeLeaseClient oder str
Erforderlich, wenn das Dateisystem über eine aktive Lease verfügt. Der Wert kann ein DataLakeLeaseClient-Objekt oder die Lease-ID als Zeichenfolge sein.
- if_modified_since
- datetime
Ein datetime-Wert. Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn die Zeitzone enthalten ist, werden alle datumstimen, die nicht utc sind, in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Geben Sie diesen Header an, um den Vorgang nur auszuführen, wenn die Ressource seit dem angegebenen Datum/der angegebenen Uhrzeit geändert wurde.
- if_unmodified_since
- datetime
Ein datetime-Wert. Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn die Zeitzone enthalten ist, werden alle datumstimen, die nicht utc sind, in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit dem angegebenen Datum/der angegebenen Uhrzeit nicht geändert wurde.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird auf dem Client nicht nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
Dateisystem-Eigenschaftsdict aktualisiert (Etag und letzte Änderung).
Rückgabetyp
set_file_system_metadata
Legt mindestens ein benutzerdefiniertes Name-Wert-Paar für das angegebene Dateisystem fest. Jeder Aufruf dieses Vorgangs ersetzt alle vorhandenen Metadaten, die an das Dateisystem angefügt sind. Um alle Metadaten aus dem Dateisystem zu entfernen, rufen Sie diesen Vorgang ohne Metadaten-Diktat auf.
async set_file_system_metadata(metadata: Dict[str, str], **kwargs) -> Dict[str, str | datetime]
Parameter
Ein Diktat, das Name-Wert-Paare enthält, die dem Dateisystem als Metadaten zugeordnet werden sollen. Beispiel: {'category':'test'}
- lease
- DataLakeLeaseClient oder str
Wenn angegeben, set_file_system_metadata nur erfolgreich, wenn die Lease des Dateisystems aktiv ist und dieser ID entspricht.
- if_modified_since
- datetime
Ein DateTime-Wert Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn die Zeitzone enthalten ist, werden alle datumstimen, die nicht utc sind, in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit der angegebenen Zeit geändert wurde.
- if_unmodified_since
- datetime
Ein DateTime-Wert Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn die Zeitzone enthalten ist, werden alle datumstimen, die nicht utc sind, in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit dem angegebenen Datum/der angegebenen Uhrzeit nicht geändert wurde.
- etag
- str
Ein ETag-Wert oder das Platzhalterzeichen (*). Wird verwendet, um zu überprüfen, ob sich die Ressource geändert hat, und handelt gemäß der Bedingung, die vom parameter match_condition angegeben wird.
- match_condition
- MatchConditions
Die Übereinstimmungsbedingung, die für das etag verwendet werden soll.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird auf dem Client nicht nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
Dateisystem-Eigenschaftsdict aktualisiert (Etag und letzte Änderung).
Beispiele
Festlegen von Metadaten für den Container.
# Create key, value pairs for metadata
metadata = {'type': 'test'}
# Set metadata on the file system
await file_system_client.set_file_system_metadata(metadata=metadata)
Attribute
api_version
Die Version der Speicher-API, die für Anforderungen verwendet wird.
location_mode
Der Standortmodus, den der Client derzeit verwendet.
Standardmäßig ist dies "primär". Zu den Optionen gehören "primär" und "sekundär".
primary_endpoint
Die vollständige URL des primären Endpunkts.
primary_hostname
Der Hostname des primären Endpunkts.
secondary_endpoint
Die vollständige url des sekundären Endpunkts, falls konfiguriert.
Wenn nicht verfügbar, wird ein ValueError ausgelöst. Wenn Sie einen sekundären Hostnamen explizit angeben möchten, verwenden Sie das optionale secondary_hostname Schlüsselwort (keyword) Argument für die Instanziierung.
Ausnahmen
secondary_hostname
Der Hostname des sekundären Endpunkts.
Wenn nicht verfügbar, lautet dies Keine. Wenn Sie einen sekundären Hostnamen explizit angeben möchten, verwenden Sie das optionale secondary_hostname Schlüsselwort (keyword) Argument für die Instanziierung.
url
Die vollständige Endpunkt-URL für diese Entität, einschließlich des SAS-Tokens, falls verwendet.
Dies kann abhängig vom aktuellen location_modeentweder der primäre Endpunkt oder der sekundäre Endpunkt sein. :returns: Die vollständige Endpunkt-URL für diese Entität, einschließlich des SAS-Tokens, falls verwendet. :rtype: str
Azure SDK for Python
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für