DataLakeFileClient Klasse
Ein Client, der mit der DataLake-Datei interagiert, auch wenn die Datei möglicherweise noch nicht vorhanden ist.
- Vererbung
-
azure.storage.filedatalake._path_client.PathClientDataLakeFileClient
Konstruktor
DataLakeFileClient(account_url: str, file_system_name: str, file_path: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any)
Parameter
- file_path
- str
Der gesamte Dateipfad, um mit einer bestimmten Datei zu interagieren. Beispiel: "{directory}/{unterverzeichnis}/{file}"
- credential
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, 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. 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.
- api_version
- str
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 geringeren Featurekompatibilität führen.
Beispiele
Erstellen des DataLakeServiceClient aus der Verbindungszeichenfolge.
from azure.storage.filedatalake import DataLakeFileClient
DataLakeFileClient.from_connection_string(connection_string, "myfilesystem", "mydirectory", "myfile")
Variablen
- url
- str
Die vollständige Endpunkt-URL zum Dateisystem, einschließlich des SAS-Tokens, falls verwendet.
- primary_endpoint
- str
Die vollständige URL des primären Endpunkts.
- primary_hostname
- str
Der Hostname des primären Endpunkts.
Methoden
acquire_lease |
Fordert eine neue Lease an. Wenn die Datei oder das Verzeichnis keine aktive Lease aufweist, erstellt der DataLake-Dienst eine Lease für die Datei/das Verzeichnis und gibt eine neue Lease-ID zurück. |
append_data |
Fügen Sie daten an die Datei an. |
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_file |
Erstellen Sie eine neue Datei. |
delete_file |
Markiert die angegebene Datei zum Löschen. |
download_file |
Lädt eine Datei in den StorageStreamDownloader herunter. Die readall()-Methode muss verwendet werden, um den gesamten Inhalt zu lesen, oder readinto() muss verwendet werden, um die Datei in einen Stream herunterzuladen. Die Verwendung von chunks() gibt einen Iterator zurück, der es dem Benutzer ermöglicht, den Inhalt in Blöcken zu durchlaufen. |
exists |
Gibt True zurück, wenn eine Datei vorhanden ist, und gibt andernfalls False zurück. |
flush_data |
Committen Sie die vorherigen angefügten Daten. |
from_connection_string |
Erstellen Sie DataLakeFileClient aus einer Verbindungszeichenfolge. :return a DataLakeFileClient :rtype ~azure.storage.filedatalake.DataLakeFileClient |
get_access_control | |
get_file_properties |
Gibt alle benutzerdefinierten Metadaten, HTTP-Standardeigenschaften und Systemeigenschaften für die Datei zurück. Der Inhalt der Datei wird nicht zurückgegeben. |
query_file |
Ermöglicht Benutzern das Auswählen/Projektieren von DataLake-Dateidaten, indem einfache Abfrageausdrücke bereitgestellt werden. Diese Vorgänge geben einen DataLakeFileQueryReader zurück. Benutzer müssen readall() oder readinto() verwenden, um Abfragedaten abzurufen. |
remove_access_control_recursive |
Entfernt die Access Control für einen Pfad und untere Pfade. |
rename_file |
Benennen Sie die Quelldatei um. |
set_access_control |
Legen Sie die Besitzer-, Gruppen-, Berechtigungs- oder Zugriffssteuerungsliste für einen Pfad fest. |
set_access_control_recursive |
Legt die Access Control für einen Pfad und untere Pfade fest. |
set_file_expiry |
Legt den Zeitpunkt fest, zu dem eine Datei abläuft und gelöscht wird. |
set_http_headers |
Legt Systemeigenschaften für die Datei oder das Verzeichnis fest. Wenn eine Eigenschaft für die content_settings festgelegt ist, werden alle Eigenschaften überschrieben. |
set_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. |
update_access_control_recursive |
Ändert die Access Control für einen Pfad und untere Pfade. |
upload_data |
Laden Sie Daten in eine Datei hoch. |
acquire_lease
Fordert eine neue Lease an. Wenn die Datei oder das Verzeichnis keine aktive Lease aufweist, erstellt der DataLake-Dienst eine Lease für die Datei/das Verzeichnis und gibt eine neue Lease-ID zurück.
acquire_lease(lease_duration: int | None = -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 mit Verlängerung oder Änderung geändert werden. Der Standardwert ist -1 (unendliche 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 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
Ein DataLakeLeaseClient-Objekt, das in einem Kontext-Manager ausgeführt werden kann.
Rückgabetyp
append_data
Fügen Sie daten an die Datei an.
append_data(data: bytes | str | Iterable[AnyStr] | IO[AnyStr], offset: int, length: int | None = None, **kwargs) -> Dict[str, str | datetime | int]
Parameter
- data
Inhalt, der an die Datei angefügt werden soll
- offset
Startposition der Daten, an die angefügt werden soll.
- length
Größe der Daten in Bytes.
- flush
- bool
Wenn true, wird der Commit für die Daten ausgeführt, nachdem sie angefügt wurden.
- validate_content
- bool
Wenn true, berechnet einen MD5-Hash des Blockinhalts. Der Speicherdienst überprüft den Hash des Inhalts, der mit dem gesendeten Hash eingetroffen ist. Dies ist in erster Linie nützlich für die Erkennung von Bitflips im Kabel, wenn die Verwendung von http anstelle von https als https (standard) bereits überprüft wird. Beachten Sie, dass dieser MD5-Hash nicht mit der Datei gespeichert wird.
- lease_action
- Literal["acquire", "auto-renew", "release", "acquire-release"]
Wird zum Ausführen von Leasevorgängen zusammen mit dem Anfügen von Daten verwendet.
"acquire": Erwerben sie eine Lease. "Automatische Verlängerung": Erneutes Neuneuen eines vorhandenen Leasingverhältnisses. "release": Geben Sie die Lease frei, sobald der Vorgang abgeschlossen ist. Erfordert flush=True. "acquire-release": Erwerben Sie eine Lease, und geben Sie sie frei, sobald die Vorgänge abgeschlossen sind. Erfordert flush=True.
- lease_duration
- int
Gültig, wenn lease_action auf "acquire" oder "acquire-release" festgelegt ist.
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. Der Standardwert ist -1 (unendliche Lease).
- lease
- DataLakeLeaseClient oder str
Erforderlich, wenn die Datei über eine aktive Lease verfügt oder wenn lease_action auf "acquire" oder "acquire-release" festgelegt ist. Wenn die Datei über eine vorhandene Lease verfügt, wird diese für den Zugriff auf die Datei verwendet. Wenn Sie eine neue Lease erwerben, wird diese als neue Lease-ID verwendet. Value kann ein DataLakeLeaseClient-Objekt oder die Lease-ID als Zeichenfolge sein.
Verschlüsselt die Daten auf der Dienstseite mit dem angegebenen Schlüssel. Die Verwendung der vom Kunden bereitgestellten Schlüssel muss über HTTPS erfolgen.
Gibt zurück
dict des Antwortheaders
Beispiele
Fügen Sie daten an die Datei an.
file_client.append_data(data=file_content[2048:3072], offset=2048, length=1024)
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.
close() -> None
create_file
Erstellen Sie eine neue Datei.
create_file(content_settings: ContentSettings | None = None, metadata: Dict[str, str] | None = None, **kwargs) -> Dict[str, str | datetime]
Parameter
- content_settings
- ContentSettings
ContentSettings-Objekt, das zum Festlegen von Pfadeigenschaften verwendet wird.
Name-Wert-Paare, die der Datei als Metadaten zugeordnet sind.
- 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 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 mithilfe von Verlängerung oder Änderung geändert werden.
Die Zeit, zu der die Datei abläuft. Wenn der Typ der expires_on ein int ist, wird die Ablaufzeit auf die Anzahl der Millisekunden festgelegt, die seit der Erstellungszeit verstrichen sind. Wenn der Typ der 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 der hierarchische 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 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.
Verschlüsselt die Daten auf der Dienstseite mit dem angegebenen Schlüssel. Die Verwendung von kundenseitig bereitgestellten Schlüsseln muss über HTTPS erfolgen.
- 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.
- encryption_context
- str
Gibt den Verschlüsselungskontext an, der für die Datei festgelegt werden soll.
Gibt zurück
response dict (Etag und letzte Änderung).
Beispiele
Erstellen Sie eine Datei.
file_client = filesystem_client.get_file_client(file_name)
file_client.create_file()
delete_file
Markiert die angegebene Datei zum Löschen.
delete_file(**kwargs) -> None
Parameter
- lease
- DataLakeLeaseClient oder str
Erforderlich, wenn die Datei über eine aktive Lease verfügt. Der Wert 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 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
Keine
Beispiele
Datei löschen.
new_client.delete_file()
download_file
Lädt eine Datei in den StorageStreamDownloader herunter. Die readall()-Methode muss verwendet werden, um den gesamten Inhalt zu lesen, oder readinto() muss verwendet werden, um die Datei in einen Stream herunterzuladen. Die Verwendung von chunks() gibt einen Iterator zurück, der es dem Benutzer ermöglicht, den Inhalt in Blöcken zu durchlaufen.
download_file(offset: int | None = None, length: int | None = None, **kwargs: Any) -> StorageStreamDownloader
Parameter
- offset
- int
Anfang des Bytebereichs, der zum Herunterladen eines Abschnitts der Datei verwendet werden soll. Muss festgelegt werden, wenn die Länge angegeben wird.
- length
- int
Anzahl der Bytes, die aus dem Stream gelesen werden sollen. Dies ist optional, sollte aber für eine optimale Leistung bereitgestellt werden.
- lease
- DataLakeLeaseClient oder str
Falls angegeben, ist der Download nur erfolgreich, wenn die Lease der Datei aktiv ist und dieser ID entspricht. Erforderlich, wenn die Datei über eine aktive Lease verfügt.
- 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.
Entschlüsselt die Daten auf der Dienstseite mit dem angegebenen Schlüssel. Die Verwendung von kundenseitig bereitgestellten Schlüsseln muss über HTTPS erfolgen. Erforderlich, wenn die Datei mit einem Customer-Provided Schlüssel erstellt wurde.
- max_concurrency
- int
Die Anzahl der parallelen Verbindungen, mit denen heruntergeladen 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. Diese Methode kann mehrere Aufrufe an den Dienst ausführen, und das Timeout gilt für jeden Aufruf einzeln.
Gibt zurück
Ein Streamingobjekt (StorageStreamDownloader)
Rückgabetyp
Beispiele
Gibt die heruntergeladenen Daten zurück.
download = file_client.download_file()
downloaded_bytes = download.readall()
exists
Gibt True zurück, wenn eine Datei vorhanden ist, und gibt andernfalls False zurück.
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 auf dem Client nicht nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
True, wenn eine Datei vorhanden ist, gibt andernfalls False zurück.
Rückgabetyp
flush_data
Committen Sie die vorherigen angefügten Daten.
flush_data(offset: int, retain_uncommitted_data: bool | None = False, **kwargs) -> Dict[str, str | datetime]
Parameter
- offset
offset entspricht der Länge der Datei nach dem Commit der vorherigen angefügten Daten.
- retain_uncommitted_data
- bool
Nur für Leerungsvorgänge gültig. Bei "true" werden daten ohne Commit nach Abschluss des Leerungsvorgangs beibehalten. Andernfalls werden die nicht committeten Daten nach dem Leerungsvorgang gelöscht. Die Standardeinstellung ist „false“. Daten an Offsets, die kleiner als die angegebene Position sind, werden bei erfolgreichem Leeren in die Datei geschrieben. Dieser optionale Parameter ermöglicht jedoch, dass Daten nach der Leerungsposition für einen zukünftigen Leerungsvorgang beibehalten werden.
- content_settings
- ContentSettings
ContentSettings-Objekt, das zum Festlegen von Pfadeigenschaften verwendet wird.
- close
- bool
Azure Storage-Ereignisse ermöglichen Es Anwendungen, Benachrichtigungen zu erhalten, wenn Sich Dateien ändern. Wenn Azure Storage-Ereignisse aktiviert sind, wird ein Dateiänderungsereignis ausgelöst. Dieses Ereignis weist eine -Eigenschaft auf, die angibt, ob dies die letzte Änderung ist, um den Unterschied zwischen einem zwischengeschalteten Leeren in einen Dateidatenstrom und dem endgültigen Schließen eines Dateidatenstroms zu unterscheiden. Der Close-Abfrageparameter ist nur gültig, wenn die Aktion "leeren" ist und Änderungsbenachrichtigungen aktiviert sind. Wenn der Wert von close "true" ist und der Leerungsvorgang erfolgreich abgeschlossen wird, löst der Dienst eine Dateiänderungsbenachrichtigung mit einer -Eigenschaft aus, die angibt, dass es sich um das endgültige Update handelt (der Dateidatenstrom wurde geschlossen). Bei "false" wird eine Änderungsbenachrichtigung ausgelöst, die angibt, dass sich die Datei geändert hat. Die Standardeinstellung ist „false“. Dieser Abfrageparameter wird vom Hadoop ABFS-Treiber auf true festgelegt, um anzugeben, dass der Dateidatenstrom geschlossen wurde."
- 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.
- lease_action
- Literal["acquire", "auto-renew", "release", "acquire-release"]
Wird verwendet, um Leasevorgänge zusammen mit dem Anfügen von Daten auszuführen.
"acquire": Erwerben sie eine Lease. "automatische Verlängerung": Erneutes Neuneuen einer vorhandenen Lease. "release": Geben Sie die Lease frei, sobald der Vorgang abgeschlossen ist. "acquire-release": Erwerben Sie eine Lease, und geben Sie sie frei, sobald die Vorgänge abgeschlossen sind.
- lease_duration
- int
Gültig, wenn lease_action auf "acquire" oder "acquire-release" festgelegt ist.
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
- DataLakeLeaseClient oder str
Erforderlich, wenn die Datei über eine aktive Lease verfügt oder wenn lease_action auf "acquire" oder "acquire-release" festgelegt ist. Wenn die Datei über eine vorhandene Lease verfügt, wird diese für den Zugriff auf die Datei verwendet. Wenn Sie eine neue Lease erwerben, wird diese als neue Lease-ID verwendet. Der Wert kann ein DataLakeLeaseClient-Objekt oder die Lease-ID als Zeichenfolge sein.
Verschlüsselt die Daten auf der Dienstseite mit dem angegebenen Schlüssel. Die Verwendung von kundenseitig bereitgestellten Schlüsseln muss über HTTPS erfolgen.
Gibt zurück
Antwortheader in dict
Beispiele
Committen Sie die vorherigen angefügten Daten.
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
Erstellen Sie DataLakeFileClient aus einer Verbindungszeichenfolge.
: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
Parameter
- file_path
- str
Der gesamte Dateipfad, damit mit einer bestimmten Datei interagiert werden kann. Beispiel: "{directory}/{unterverzeichnis}/{file}"
- 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 werte für den freigegebenen Zugriffsschlüssel enthält. 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. Die hier bereitgestellten 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.
get_access_control
get_access_control(upn: bool | None = None, **kwargs) -> Dict[str, Any]
Parameter
- upn
- bool
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.
- lease
- DataLakeLeaseClient oder str
Erforderlich, wenn die Datei/das Verzeichnis über eine aktive Lease verfügt. Der Wert 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 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.
- response dict
response dict.
get_file_properties
Gibt alle benutzerdefinierten Metadaten, HTTP-Standardeigenschaften und Systemeigenschaften für die Datei zurück. Der Inhalt der Datei wird nicht zurückgegeben.
get_file_properties(**kwargs: Any) -> FileProperties
Parameter
- lease
Erforderlich, wenn das Verzeichnis oder die Datei ü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. 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.
Entschlüsselt die Daten auf der Dienstseite mit dem angegebenen Schlüssel. Die Verwendung von kundenseitig bereitgestellten Schlüsseln muss über HTTPS erfolgen. Erforderlich, wenn die Datei mit einem vom Kunden bereitgestellten Schlüssel erstellt 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
Alle benutzerdefinierten Metadaten, http-Standardeigenschaften und Systemeigenschaften für die Datei.
Rückgabetyp
Beispiele
Abrufen der Eigenschaften für eine Datei.
properties = file_client.get_file_properties()
query_file
Ermöglicht Benutzern das Auswählen/Projektieren von DataLake-Dateidaten, indem einfache Abfrageausdrücke bereitgestellt werden. Diese Vorgänge geben einen DataLakeFileQueryReader zurück. Benutzer müssen readall() oder readinto() verwenden, um Abfragedaten abzurufen.
query_file(query_expression: str, **kwargs: Any) -> DataLakeFileQueryReader
Parameter
- query_expression
- str
Erforderlich. eine Abfrageanweisung. Beispiel: Auswählen von * aus DataLakeStorage
- on_error
- Callable[DataLakeFileQueryError]
Eine Funktion, die bei allen vom Dienst zurückgegebenen Verarbeitungsfehlern aufgerufen werden soll.
- file_format
- DelimitedTextDialect oder DelimitedJsonDialect oder QuickQueryDialect oder str
Optional. Definiert die Serialisierung der derzeit in der Datei gespeicherten Daten. Standardmäßig werden die Dateidaten als CSV-Daten behandelt, die im Standarddialekt formatiert sind. Dies kann mit einem benutzerdefinierten DelimitedTextDialect oder DelimitedJsonDialect oder "ParquetDialect" (übergeben als Zeichenfolge oder Enumeration) überschrieben werden. Diese Dialekte können über ihre jeweiligen Klassen, die QuickQueryDialect-Enumeration oder als Zeichenfolge übergeben werden.
- output_format
- DelimitedTextDialect oder DelimitedJsonDialect oder list[ArrowDialect] oder QuickQueryDialect oder str
Optional. Definiert die Ausgabeserialisierung für den Datenstrom. Standardmäßig werden die Daten so zurückgegeben, wie sie in der Datei dargestellt werden. Durch Bereitstellen eines Ausgabeformats werden die Dateidaten entsprechend diesem Profil neu formatiert. Dieser Wert kann ein DelimitedTextDialect oder ein DelimitedJsonDialect oder ArrowDialect sein. Diese Dialekte können über ihre jeweiligen Klassen, die QuickQueryDialect-Enumeration oder als Zeichenfolge übergeben werden.
- 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.
- 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.
Entschlüsselt die Daten auf der Dienstseite mit dem angegebenen Schlüssel. Die Verwendung von kundenseitig bereitgestellten Schlüsseln muss über HTTPS erfolgen. Erforderlich, wenn die Datei mit einem Customer-Provided Schlüssel erstellt 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
Ein Streamingobjekt (DataLakeFileQueryReader)
Rückgabetyp
Beispiele
select/project on datalake file data,by providing simple query expressions.
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
Entfernt die Access Control für einen Pfad und untere Pfade.
remove_access_control_recursive(acl: str, **kwargs: Any) -> AccessControlChangeResult
Parameter
- acl
- str
Entfernt POSIX-Zugriffssteuerungsrechte für Dateien und Verzeichnisse. Der Wert ist eine durch Trennzeichen getrennte Liste von Zugriffssteuerungseinträgen. Jeder Zugriffssteuerungseintrag (Access Control Entry, ACE) besteht aus einem Bereich, einem Typ und einem Benutzer- oder Gruppenbezeichner im Format "[scope:][type]:[id]".
- progress_hook
- <xref:func>(AccessControlChanges)
Rückruf, bei dem der Aufrufer den Fortschritt des Vorgangs nachverfolgen und Pfade sammeln kann, die Access Control nicht geändert haben.
- continuation_token
- str
Optionales Fortsetzungstoken, das verwendet werden kann, um den zuvor beendeten Vorgang fortzusetzen.
- batch_size
- int
Optional. Wenn die Datasetgröße die Batchgröße überschreitet, wird der Vorgang in mehrere Anforderungen aufgeteilt, damit der Fortschritt nachverfolgt werden kann. Die Batchgröße sollte zwischen 1 und 2000 sein. Der Standardwert, wenn nicht angegeben ist, ist 2000.
- max_batches
- int
Optional. Definiert die maximale Anzahl von Batches, die mit einer einzelnen Änderung Access Control Vorgang ausgeführt werden können. Wenn das Maximum erreicht wird, bevor alle Unterpfade verarbeitet werden, kann das Fortsetzungstoken verwendet werden, um den Vorgang fortzusetzen. Leerer Wert gibt an, dass die maximale Anzahl von Batches in ungebunden ist und der Vorgang bis zum Ende fortgesetzt wird.
- continue_on_failure
- bool
Wenn dieser Wert auf False festgelegt ist, wird der Vorgang schnell beendet, sobald Benutzerfehler auftreten (4XX). Bei True ignoriert der Vorgang Benutzerfehler und fährt mit dem Vorgang auf anderen Unterentitäten des Verzeichnisses fort. Fortsetzungstoken wird nur zurückgegeben, wenn continue_on_failure bei Benutzerfehlern auf True festgelegt ist. Wenn sie nicht festgelegt ist, ist der Standardwert false.
- 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 Zusammenfassung der rekursiven Vorgänge, einschließlich der Anzahl der Erfolge und Fehler, sowie ein Fortsetzungstoken für den Fall, dass der Vorgang vorzeitig beendet wurde.
Rückgabetyp
Ausnahmen
Der Benutzer kann den Vorgang mit continuation_token Feld azureError neu starten, wenn das Token verfügbar ist.
rename_file
Benennen Sie die Quelldatei um.
rename_file(new_name: str, **kwargs: Any) -> DataLakeFileClient
Parameter
- new_name
- str
der neue Dateiname, in den der Benutzer umbenennen möchte. Der Wert muss das folgende Format aufweisen: "{filesystem}/{directory}/{subdirectory}/{file}".
- content_settings
- ContentSettings
ContentSettings-Objekt, das zum Festlegen von Pfadeigenschaften verwendet wird.
- source_lease
- DataLakeLeaseClient oder str
Eine Lease-ID für den Quellpfad. Wenn angegeben, muss der Quellpfad über eine aktive Lease und die Lease-ID übereinstimmen.
- lease
Erforderlich, wenn die Datei/das Verzeichnis über eine aktive Lease verfügt. Der Wert 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 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.
- source_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.
- source_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.
- source_etag
- str
Der ETag-Quellwert 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.
- source_match_condition
- MatchConditions
Die Quell-Ü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
der umbenannte Dateiclient
Rückgabetyp
Beispiele
Benennen Sie die Quelldatei um.
new_client = file_client.rename_file(file_client.file_system_name + '/' + 'newname')
set_access_control
Legen Sie die Besitzer-, Gruppen-, Berechtigungs- oder Zugriffssteuerungsliste für einen Pfad fest.
set_access_control(owner: str | None = None, group: str | None = None, permissions: str | None = None, acl: str | None = None, **kwargs) -> Dict[str, str | datetime]
Parameter
- permissions
- str
Optional und nur gültig, wenn der hierarchische 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. berechtigungen und acl schließen sich gegenseitig aus.
- 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]". berechtigungen und acl schließen sich gegenseitig aus.
- lease
- DataLakeLeaseClient oder str
Erforderlich, wenn die Datei/das Verzeichnis über eine aktive Lease verfügt. Der Wert 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 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.
- response dict
response dict (Etag und letzte Änderung).
set_access_control_recursive
Legt die Access Control für einen Pfad und untere Pfade fest.
set_access_control_recursive(acl: str, **kwargs: Any) -> AccessControlChangeResult
Parameter
- 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]".
- progress_hook
- <xref:func>(AccessControlChanges)
Rückruf, bei dem der Aufrufer den Fortschritt des Vorgangs nachverfolgen und Pfade sammeln kann, die Access Control nicht geändert haben.
- continuation_token
- str
Optionales Fortsetzungstoken, das verwendet werden kann, um den zuvor beendeten Vorgang fortzusetzen.
- batch_size
- int
Optional. Wenn die Datasetgröße die Batchgröße überschreitet, wird der Vorgang in mehrere Anforderungen aufgeteilt, damit der Fortschritt nachverfolgt werden kann. Die Batchgröße sollte zwischen 1 und 2000 sein. Der Standardwert, wenn nicht angegeben ist, ist 2000.
- max_batches
- int
Optional. Definiert die maximale Anzahl von Batches, die mit einer einzelnen Änderung Access Control Vorgang ausgeführt werden können. Wenn das Maximum erreicht wird, bevor alle Unterpfade verarbeitet werden, kann das Fortsetzungstoken verwendet werden, um den Vorgang fortzusetzen. Leerer Wert gibt an, dass die maximale Anzahl von Batches in ungebunden ist und der Vorgang bis zum Ende fortgesetzt wird.
- continue_on_failure
- bool
Wenn dieser Wert auf False festgelegt ist, wird der Vorgang schnell beendet, sobald Benutzerfehler auftreten (4XX). Bei True ignoriert der Vorgang Benutzerfehler und fährt mit dem Vorgang auf anderen Unterentitäten des Verzeichnisses fort. Fortsetzungstoken wird nur zurückgegeben, wenn continue_on_failure bei Benutzerfehlern auf True festgelegt ist. Wenn sie nicht festgelegt ist, ist der Standardwert false.
- 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 Zusammenfassung der rekursiven Vorgänge, einschließlich der Anzahl der Erfolge und Fehler, sowie ein Fortsetzungstoken für den Fall, dass der Vorgang vorzeitig beendet wurde.
Rückgabetyp
Ausnahmen
Der Benutzer kann den Vorgang mit continuation_token Feld azureError neu starten, wenn das Token verfügbar ist.
set_file_expiry
Legt den Zeitpunkt fest, zu dem eine Datei abläuft und gelöscht wird.
set_file_expiry(expiry_options: str, expires_on: datetime | int | None = None, **kwargs) -> None
Parameter
- expiry_options
- str
Erforderlich. Gibt den Modus der Ablaufzeit an. Mögliche Werte: "NeverExpire", "RelativeToCreation", "RelativeToNow", "Absolute"
Die Zeit, zu der die Datei abläuft. Wenn expiry_options auf RelativeTo* festgelegt ist, sollte expires_on in Millisekunden ein int sein. Wenn der Typ der expires_on datetime ist, sollte er in UTC-Zeit sein.
- 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.
Rückgabetyp
set_http_headers
Legt Systemeigenschaften für die Datei oder das Verzeichnis fest.
Wenn eine Eigenschaft für die content_settings festgelegt ist, werden alle Eigenschaften überschrieben.
set_http_headers(content_settings: ContentSettings | None = None, **kwargs) -> Dict[str, Any]
Parameter
- content_settings
- ContentSettings
ContentSettings-Objekt, das zum Festlegen von Datei-/Verzeichniseigenschaften verwendet wird.
- 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 nicht auf dem Client nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
datei-/verzeichnis-aktualisierte Eigenschaftsdikt (Etag und letzte Änderung)
Rückgabetyp
set_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.
set_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 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.
Verschlüsselt die Daten auf der Dienstseite mit dem angegebenen Schlüssel. Die Verwendung der vom Kunden bereitgestellten Schlüssel muss über HTTPS erfolgen.
- 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
Das Dateisystem hat die Eigenschaft dict aktualisiert (Etag und zuletzt geändert).
update_access_control_recursive
Ändert die Access Control für einen Pfad und untere Pfade.
update_access_control_recursive(acl: str, **kwargs: Any) -> AccessControlChangeResult
Parameter
- acl
- str
Ändert POSIX-Zugriffssteuerungsrechte für Dateien und Verzeichnisse. 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]".
- progress_hook
- <xref:func>(AccessControlChanges)
Rückruf, bei dem der Aufrufer den Fortschritt des Vorgangs nachverfolgen und Pfade sammeln kann, die Access Control nicht geändert haben.
- continuation_token
- str
Optionales Fortsetzungstoken, das verwendet werden kann, um den zuvor beendeten Vorgang fortzusetzen.
- batch_size
- int
Optional. Wenn die Datasetgröße die Batchgröße überschreitet, wird der Vorgang in mehrere Anforderungen aufgeteilt, sodass der Fortschritt nachverfolgt werden kann. Die Batchgröße sollte zwischen 1 und 2000 sein. Der Standardwert, wenn nicht angegeben ist, ist 2000.
- max_batches
- int
Optional. Definiert die maximale Anzahl von Batches, die eine einzelne Änderung Access Control Vorgangs ausführen kann. Wenn das Maximum erreicht wird, bevor alle Unterpfade verarbeitet werden, kann das Fortsetzungstoken verwendet werden, um den Vorgang fortzusetzen. Leerer Wert gibt an, dass die maximale Anzahl von Batches in ungebunden und der Vorgang bis zum Ende fortgesetzt wird.
- continue_on_failure
- bool
Wenn dieser Wert auf False festgelegt ist, wird der Vorgang schnell beendet, wenn Benutzerfehler auftreten (4XX). Bei True ignoriert der Vorgang Benutzerfehler und fährt mit dem Vorgang für andere Unterentitäten des Verzeichnisses fort. Das Fortsetzungstoken wird nur zurückgegeben, wenn continue_on_failure bei Benutzerfehlern auf True festgelegt ist. Wenn sie nicht festgelegt ist, ist der Standardwert false.
- 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
Eine Zusammenfassung der rekursiven Vorgänge, einschließlich der Anzahl der Erfolge und Fehler, sowie eines Fortsetzungstokens für den Fall, dass der Vorgang vorzeitig beendet wurde.
Rückgabetyp
Ausnahmen
Der Benutzer kann den Vorgang mit continuation_token Feld azureError neu starten, wenn das Token verfügbar ist.
upload_data
Laden Sie Daten in eine Datei hoch.
upload_data(data: bytes | str | Iterable | IO, length: int | None = None, overwrite: bool | None = False, **kwargs) -> Dict[str, Any]
Parameter
- data
Inhalt, der in die Datei hochgeladen werden soll
- content_settings
- ContentSettings
ContentSettings-Objekt, das zum Festlegen von Pfadeigenschaften verwendet wird.
- lease
- DataLakeLeaseClient oder str
Erforderlich, wenn das BLOB ü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).
- 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.
- validate_content
- bool
Wenn true, wird ein MD5-Hash für jeden Teil der Datei berechnet. Der Speicherdienst überprüft den Hash des Inhalts, der mit dem gesendeten Hash eingetroffen ist. Dies ist in erster Linie nützlich für die Erkennung von Bitflips im Kabel, wenn http anstelle von https verwendet wird, da https (der Standardwert) bereits überprüft wird. Beachten Sie, dass dieser MD5-Hash nicht mit dem BLOB gespeichert wird. Beachten Sie außerdem, dass der speichereffiziente Uploadalgorithmus bei Aktivierung nicht verwendet wird, da die Berechnung des MD5-Hashs das Puffern ganzer Blöcke erfordert und dadurch den Zweck des speichereffizienten Algorithmus vereitet.
- 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.
Verschlüsselt die Daten auf der Dienstseite mit dem angegebenen Schlüssel. Die Verwendung der vom Kunden bereitgestellten Schlüssel muss über HTTPS erfolgen.
- 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. Diese Methode kann mehrere Aufrufe an den Dienst ausführen, und das Timeout gilt für jeden Aufruf einzeln.
- chunk_size
- int
Die maximale Blockgröße für das Hochladen einer Datei in Blöcken.
Der Standardwert ist 100*1024*1024
oder 100 MB.
- encryption_context
- str
Gibt den Verschlüsselungskontext an, der für die Datei festgelegt werden soll.
Gibt zurück
response dict (Etag und letzte Änderung).
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 sekundäre Endpunkt-URL, falls konfiguriert.
Wenn kein Wertfehler verfügbar ist, wird ein ValueError ausgelöst. Um einen sekundären Hostnamen explizit anzugeben, verwenden Sie das optionale secondary_hostname Schlüsselwort (keyword) Argument für die Instanziierung.
Ausnahmen
secondary_hostname
Der Hostname des sekundären Endpunkts.
Falls nicht verfügbar, ist dies Keine. Um einen sekundären Hostnamen explizit anzugeben, 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 SAS-Token, falls verwendet.
Dies kann entweder der primäre Endpunkt oder der sekundäre Endpunkt sein, abhängig vom aktuellen location_mode. :returns: Die vollständige Endpunkt-URL für diese Entität, einschließlich SAS-Token, falls verwendet. :rtype: str
Azure SDK for Python