Freigeben über


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.PathClient
DataLakeFileClient

Konstruktor

DataLakeFileClient(account_url: str, file_system_name: str, file_path: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any)

Parameter

account_url
str
Erforderlich

Der URI für das Speicherkonto.

file_system_name
str
Erforderlich

Das Dateisystem für das Verzeichnis bzw. die Dateien.

file_path
str
Erforderlich

Der gesamte Dateipfad, um mit einer bestimmten Datei zu interagieren. Beispiel: "{directory}/{unterverzeichnis}/{file}"

credential
Standardwert: None

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
Erforderlich

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
Erforderlich

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
Erforderlich

Inhalt, der an die Datei angefügt werden soll

offset
Erforderlich

Startposition der Daten, an die angefügt werden soll.

length
Erforderlich

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.

cpk
CustomerProvidedEncryptionKey

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
Erforderlich

ContentSettings-Objekt, das zum Festlegen von Pfadeigenschaften verwendet wird.

metadata
Optional[Dict[str, str]]
Erforderlich

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.

expires_on
datetime oder int

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.

cpk
CustomerProvidedEncryptionKey

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
Erforderlich

Anfang des Bytebereichs, der zum Herunterladen eines Abschnitts der Datei verwendet werden soll. Muss festgelegt werden, wenn die Länge angegeben wird.

length
int
Erforderlich

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.

cpk
CustomerProvidedEncryptionKey

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
Erforderlich

offset entspricht der Länge der Datei nach dem Commit der vorherigen angefügten Daten.

retain_uncommitted_data
bool
Erforderlich

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.

cpk
CustomerProvidedEncryptionKey

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

conn_str
str
Erforderlich

Eine Verbindungszeichenfolge für ein Azure Storage-Konto.

file_system_name
str
Erforderlich

Der Name des Dateisystems, mit dem interagiert werden soll.

file_path
str
Erforderlich

Der gesamte Dateipfad, damit mit einer bestimmten Datei interagiert werden kann. Beispiel: "{directory}/{unterverzeichnis}/{file}"

credential
Standardwert: None

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
Erforderlich

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.

cpk
CustomerProvidedEncryptionKey

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

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.

cpk
CustomerProvidedEncryptionKey

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

<xref:azure.storage.filedatalake.DataLakeFileQueryReader>

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
Erforderlich

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
Erforderlich

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

owner
str
Erforderlich

Optional. Der Besitzer der Datei oder des Verzeichnisses.

group
str
Erforderlich

Optional. Die besitzende Gruppe der Datei oder des Verzeichnisses.

permissions
str
Erforderlich

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
Erforderlich

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
Erforderlich

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

Erforderlich. Gibt den Modus der Ablaufzeit an. Mögliche Werte: "NeverExpire", "RelativeToCreation", "RelativeToNow", "Absolute"

expires_on
datetime oder int
Erforderlich

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
Erforderlich

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

metadata
Dict[str, str]
Erforderlich

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.

cpk
CustomerProvidedEncryptionKey

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
Erforderlich

Ä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
Erforderlich

Inhalt, der in die Datei hochgeladen werden soll

length
int
Erforderlich

Größe der Daten in Bytes.

overwrite
bool
Erforderlich

, um eine vorhandene Datei zu überschreiben oder nicht.

content_settings
ContentSettings

ContentSettings-Objekt, das zum Festlegen von Pfadeigenschaften verwendet wird.

metadata
Optional[Dict[str, str]]

Name-Wert-Paare, die dem BLOB als Metadaten zugeordnet sind.

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.

cpk
CustomerProvidedEncryptionKey

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