DataLakeFileClient Klasse
Ein Client, der mit der DataLake-Datei interagiert, auch wenn die Datei möglicherweise noch nicht vorhanden ist.
- Vererbung
-
azure.storage.filedatalake.aio._path_client_async.PathClientDataLakeFileClientazure.storage.filedatalake._data_lake_file_client.DataLakeFileClientDataLakeFileClient
Konstruktor
DataLakeFileClient(account_url: str, file_system_name: str, file_path: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | AsyncTokenCredential | 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.aio 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 asynchronen Iterator zurück, mit dem der Benutzer den Inhalt in Blöcken durchlaufen kann. |
exists |
Gibt True zurück, wenn eine Datei vorhanden ist, und gibt andernfalls False zurück. |
flush_data |
Commit für die zuvor angefügten Daten. |
from_connection_string |
Erstellen Sie DataLakeFileClient aus einer Verbindungszeichenfolge. :return a DataLakeFileClient :rtype ~azure.storage.filedatalake.DataLakeFileClient |
get_access_control |
Rufen Sie die Besitzer-, Gruppen-, Berechtigungs- oder Zugriffssteuerungsliste für einen Pfad ab. |
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 Es Benutzern, datenlake-Dateidaten auszuwählen/zu projektieren, indem sie einfache Abfrageausdrücke bereitstellen. Dieser Vorgang gibt 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 auf einen Pfad und Unterpfade 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.
async 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.
async 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.
await 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.
async close() -> None
create_file
Erstellen Sie eine neue Datei.
async 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)
await file_client.create_file()
delete_file
Markiert die angegebene Datei zum Löschen.
async 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.
await 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 asynchronen Iterator zurück, mit dem der Benutzer den Inhalt in Blöcken durchlaufen kann.
async 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 = await file_client.download_file()
downloaded_bytes = await download.readall()
exists
Gibt True zurück, wenn eine Datei 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 eine Datei vorhanden ist, andernfalls False.
Rückgabetyp
flush_data
Commit für die zuvor angefügten Daten.
async 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
Gilt nur für Leervorgänge. Wenn "true" ist, werden nicht festgeschriebene Daten nach Abschluss des Löschvorgangs beibehalten. andernfalls werden die nicht festgeschriebenen Daten nach dem Löschvorgang 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 Löschvorgang 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 empfangen, wenn Dateien geändert werden. Wenn Azure Storage-Ereignisse aktiviert sind, wird ein Dateiänderungsereignis ausgelöst. Dieses Ereignis verfügt über eine -Eigenschaft, die angibt, ob dies die letzte Änderung ist, um den Unterschied zwischen einer zwischengeschalteten Leerung in einem Dateidatenstrom und dem endgültigen Schließen eines Dateidatenstroms zu unterscheiden. Der Close-Abfrageparameter ist nur gültig, wenn die Aktion "leer" ist und Änderungsbenachrichtigungen aktiviert sind. Wenn der Wert von close "true" ist und der Löschvorgang 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). Wenn "false" eine Änderungsbenachrichtigung ausgelöst wird, die angibt, dass die Datei geändert wurde. 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 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.
- 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. "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 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
Antwortheader im Dict
Beispiele
Commit für die zuvor angefügten Daten.
file_client = file_system_client.get_file_client("myfile")
await file_client.create_file()
with open(SOURCE_FILE, "rb") as data:
length = data.tell()
await file_client.append_data(data, 0)
await file_client.flush_data(length)
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, 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 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.
get_access_control
Rufen Sie die Besitzer-, Gruppen-, Berechtigungs- oder Zugriffssteuerungsliste für einen Pfad ab.
async get_access_control(upn: bool | None = None, **kwargs) -> Dict[str, Any]
Parameter
- upn
- bool
Optional. Gültig nur, wenn hierarchischer 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 aufweisen.
- lease
- DataLakeLeaseClient oder str
Erforderlich, wenn die Datei/das Verzeichnis ü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.
- response dict
antwort-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.
async get_file_properties(**kwargs: Any) -> FileProperties
Parameter
- lease
- DataLakeLeaseClient oder str
Erforderlich, wenn das Verzeichnis oder die Datei über eine aktive Lease verfügt. Value 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 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.
Entschlüsselt die Daten auf der Dienstseite mit dem angegebenen Schlüssel. Die Verwendung der vom Kunden bereitgestellten Schlüssel 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 nicht auf dem Client nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Rückgabetyp
Beispiele
Abrufen der Eigenschaften für eine Datei.
properties = await file_client.get_file_properties()
query_file
Ermöglicht Es Benutzern, datenlake-Dateidaten auszuwählen/zu projektieren, indem sie einfache Abfrageausdrücke bereitstellen. Dieser Vorgang gibt 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 durch ihre jeweiligen Klassen, die QuickQueryDialect-Enume 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 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 durch ihre jeweiligen Klassen, die QuickQueryDialect-Enume oder als Zeichenfolge übergeben werden.
- 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.
- 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.
Entschlüsselt die Daten auf der Dienstseite mit dem angegebenen Schlüssel. Die Verwendung der vom Kunden bereitgestellten Schlüssel 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 nicht auf dem Client 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( select/project on datalake file datalake datalake file data), indem Sie einfache Abfrageausdrücke bereitstellen.
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.
async 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, 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.
rename_file
Benennen Sie die Quelldatei um.
async 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}/{unterverzeichnis}/{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
- DataLakeLeaseClient oder str
Erforderlich, wenn die Datei/das Verzeichnis ü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.
- source_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.
- source_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.
- 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 quellgleiche Bedingung, 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
der umbenannte Dateiclient
Rückgabetyp
Beispiele
Benennen Sie die Quelldatei um.
new_client = await 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.
async 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 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. 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. 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.
- response dict
response dict (Etag und zuletzt geändert).
set_access_control_recursive
Legt die Access Control auf einen Pfad und Unterpfade fest.
async 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, 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.
set_file_expiry
Legt den Zeitpunkt fest, zu dem eine Datei abläuft und gelöscht wird.
async 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 auf Ablauf festgelegt werden soll. Wenn expiry_options RelativTo* ist, sollte expires_on in Millisekunden ein Int 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 nicht auf dem Client 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.
async 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 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
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.
async 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.
async 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 ein einzelner, ändern Access Control Vorgang ausgeführt werden 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.
async upload_data(data: bytes | str | Iterable | AsyncIterable | 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
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