DataLakeFileClient クラス

ファイルがまだ存在しない可能性がある場合でも、DataLake ファイルと対話するクライアント。

継承
azure.storage.filedatalake._path_client.PathClient
DataLakeFileClient

コンストラクター

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

パラメーター

account_url
str
必須

ストレージ アカウントへの URI。

file_system_name
str
必須

ディレクトリまたはファイルのファイル システム。

file_path
str
必須

特定のファイルと対話するためのファイル パス全体。 例: "{directory}/{サブディレクトリ}/{file}"

credential
既定値: None

認証に使用する資格情報。 アカウント URL に SAS トークンが既に含まれている場合、これは省略可能です。 値には、SAS トークン文字列、azure.core.credentials の AzureSasCredential または AzureNamedKeyCredential のインスタンス、アカウント共有アクセス キー、または azure.identity の TokenCredentials クラスのインスタンスを指定できます。 リソース URI に SAS トークンが既に含まれている場合、明示的な資格情報を優先して無視されます

  • 競合する SAS トークンによって ValueError が発生する AzureSasCredential の場合を除きます。 AzureNamedKeyCredential のインスタンスを使用する場合は、"name" をストレージ アカウント名に、"key" をストレージ アカウント キーにする必要があります。
api_version
str

要求に使用するストレージ API バージョン。 既定値は、現在の SDK と互換性のある最新のサービス バージョンです。 古いバージョンに設定すると、機能の互換性が低下する可能性があります。

接続文字列から DataLakeServiceClient を作成する。


   from azure.storage.filedatalake import DataLakeFileClient
   DataLakeFileClient.from_connection_string(connection_string, "myfilesystem", "mydirectory", "myfile")

変数

url
str

使用されている場合は SAS トークンを含む、ファイル システムへの完全なエンドポイント URL。

primary_endpoint
str

完全なプライマリ エンドポイント URL。

primary_hostname
str

プライマリ エンドポイントのホスト名。

メソッド

acquire_lease

新しいリースを要求します。 ファイルまたはディレクトリにアクティブなリースがない場合、DataLake サービスはファイル/ディレクトリにリースを作成し、新しいリース ID を返します。

append_data

ファイルにデータを追加します。

close

このメソッドは、クライアントによって開かれたソケットを閉じる方法です。 コンテキスト マネージャーで を使用する場合は使用する必要はありません。

create_file

新しいファイルを作成します。

delete_file

指定したファイルに削除のマークを付けます。

download_file

StorageStreamDownloader にファイルをダウンロードします。 readall() メソッドを使用してすべてのコンテンツを読み取るか、readinto() を使用してファイルをストリームにダウンロードする必要があります。 chunks() を使用すると、ユーザーがコンテンツをチャンク単位で反復処理できる反復子が返されます。

exists

ファイルが存在する場合は True を返し、それ以外の場合は False を返します。

flush_data

前に追加したデータをコミットします。

from_connection_string

接続文字列から DataLakeFileClient を作成します。

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

get_access_control
get_file_properties

ファイルのすべてのユーザー定義メタデータ、標準 HTTP プロパティ、およびシステム プロパティを返します。 ファイルのコンテンツは返しません。

query_file

ユーザーが単純なクエリ式を指定して、datalake ファイル データを選択/プロジェクトできるようにします。 この操作は DataLakeFileQueryReader を返します。ユーザーは readall() または readinto() を使用してクエリ データを取得する必要があります。

remove_access_control_recursive

パスとサブパスのAccess Controlを削除します。

rename_file

ソース ファイルの名前を変更します。

set_access_control

パスの所有者、グループ、アクセス許可、またはアクセス制御リストを設定します。

set_access_control_recursive

パスとサブパスのAccess Controlを設定します。

set_file_expiry

ファイルの有効期限が切れ、削除される時間を設定します。

set_http_headers

ファイルまたはディレクトリのシステム プロパティを設定します。

content_settingsに 1 つのプロパティが設定されている場合、すべてのプロパティがオーバーライドされます。

set_metadata

指定したファイル システムの 1 つ以上のユーザー定義の名前と値のペアを設定します。 この操作を呼び出すたびに、ファイル システムにアタッチされているすべての既存のメタデータが置き換えられます。 ファイル システムからすべてのメタデータを削除するには、メタデータ ディクテーションなしでこの操作を呼び出します。

update_access_control_recursive

パスとサブパスのAccess Controlを変更します。

upload_data

ファイルにデータをアップロードします。

acquire_lease

新しいリースを要求します。 ファイルまたはディレクトリにアクティブなリースがない場合、DataLake サービスはファイル/ディレクトリにリースを作成し、新しいリース ID を返します。

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

パラメーター

lease_duration
int
必須

リース期間 (秒単位) を指定します。無期限のリースには -1 を指定します。 無限リースでない場合は、15 ~ 60 秒を指定できます。 更新または変更を使用してリース期間を変更することはできません。 既定値は -1 (無限リース) です。

lease_id
str
必須

GUID 文字列形式の推奨リース ID。 提案されたリース ID が正しい形式でない場合、DataLake サービスは 400 (無効な要求) を返します。

if_modified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した時刻以降にリソースが変更されている場合に限り操作が実行されます。

if_unmodified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した日付/時刻以降にリソースが変更されていない場合に限り操作が実行されます。

etag
str

ETag 値またはワイルドカード文字 (*)。 リソースが変更されたかどうかをチェックし、match_condition パラメーターで指定された条件に従って動作するために使用されます。

match_condition
MatchConditions

etag で使用する一致条件。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください

戻り値

コンテキスト マネージャーで実行できる DataLakeLeaseClient オブジェクト。

の戻り値の型 :

append_data

ファイルにデータを追加します。

append_data(data: bytes | str | Iterable[AnyStr] | IO[AnyStr], offset: int, length: int | None = None, **kwargs) -> Dict[str, str | datetime | int]

パラメーター

data
必須

ファイルに追加するコンテンツ

offset
必須

追加するデータの開始位置。

length
必須

データのサイズ (バイト単位)。

flush
bool

true の場合、 は追加後にデータをコミットします。

validate_content
bool

true の場合、ブロック コンテンツの MD5 ハッシュを計算します。 ストレージ サービスは、送信されたハッシュで到着したコンテンツのハッシュをチェックします。 これは主に、https (既定値) として https ではなく http を使用して既に検証される場合に、ネットワーク上のビットフラグを検出する場合に重要です。 この MD5 ハッシュは ファイルと共に格納されないことに注意してください。

lease_action
Literal["acquire", "auto-renew", "release", "acquire-release"]

追加データと共にリース操作を実行するために使用されます。

"取得" - リースを取得します。 "自動更新" - 既存のリースを再び新しくします。 "release" - 操作が完了したらリースを解放します。 flush=True が必要です。 "acquire-release" - リースを取得し、操作が完了したら解放します。 flush=True が必要です

lease_duration
int

lease_actionが "acquire" または "acquire-release" に設定されている場合は有効です。

リース期間 (秒単位) を指定します。無期限のリースには -1 を指定します。 無限リースでない場合は、15 ~ 60 秒を指定できます。 更新または変更を使用してリース期間を変更することはできません。 既定値は -1 (無限リース) です。

lease
DataLakeLeaseClient または str

ファイルにアクティブなリースがある場合、または lease_action が "acquire" または "acquire-release" に設定されている場合は必須です。 ファイルに既存のリースがある場合、これはファイルへのアクセスに使用されます。 新しいリースを取得する場合、これは新しいリース ID として使用されます。値には、DataLakeLeaseClient オブジェクトまたはリース ID を文字列として指定できます。

cpk
CustomerProvidedEncryptionKey

指定したキーを使用してサービス側のデータを暗号化します。 顧客が指定したキーの使用は HTTPS 経由で行う必要があります。

戻り値

応答ヘッダーの dict

ファイルにデータを追加します。


   file_client.append_data(data=file_content[2048:3072], offset=2048, length=1024)

close

このメソッドは、クライアントによって開かれたソケットを閉じる方法です。 コンテキスト マネージャーで を使用する場合は使用する必要はありません。

close() -> None

create_file

新しいファイルを作成します。

create_file(content_settings: ContentSettings | None = None, metadata: Dict[str, str] | None = None, **kwargs) -> Dict[str, str | datetime]

パラメーター

content_settings
ContentSettings
必須

パス プロパティの設定に使用される ContentSettings オブジェクト。

metadata
Optional[Dict[str, str]]
必須

ファイルにメタデータとして関連付ける名前と値のペア。

lease
DataLakeLeaseClient または str

ファイルにアクティブなリースがある場合は必須。 値には、DataLakeLeaseClient オブジェクトまたはリース ID を文字列として指定できます。

umask
str

省略可能で、アカウントに対して階層型名前空間が有効になっている場合にのみ有効です。 ファイルまたはディレクトリを作成し、親フォルダーに既定の ACL がない場合、umask は作成するファイルまたはディレクトリのアクセス許可を制限します。 結果のアクセス許可は p & ^u によって与えられます。ここで、p はアクセス許可で、umask はユーザーです。 たとえば、p が 0777 で 0057 の場合、結果のアクセス許可は 0720 になります。 既定のアクセス許可は、ディレクトリの場合は 0777、ファイルの場合は 0666 です。 既定の umask は 0027 です。 umask は 4 桁の 8 進数表記 (例: 0766) で指定する必要があります。

owner
str

ファイルまたはディレクトリの所有者。

group
str

ファイルまたはディレクトリの所有グループ。

acl
str

ファイルとディレクトリに対する POSIX アクセス制御権限を設定します。 値は、アクセス制御エントリのコンマ区切りのリストです。 各アクセス制御エントリ (ACE) は、スコープ、型、ユーザーまたはグループ識別子、および "[scope:][type]:[id]:[permissions]" 形式のアクセス許可で構成されます。

lease_id
str

GUID 文字列形式の推奨リース ID。 提案されたリース ID が正しい形式でない場合、DataLake サービスは 400 (無効な要求) を返します。

lease_duration
int

リース期間 (秒単位) を指定します。無期限のリースには -1 を指定します。 無限リースでない場合は、15 ~ 60 秒を指定できます。 更新または変更を使用してリース期間を変更することはできません。

expires_on
datetime または int

ファイルの有効期限を設定する時間。 expires_onの種類が int の場合、有効期限は作成時間から経過したミリ秒数として設定されます。 expires_onの種類が datetime の場合、有効期限は指定された時刻に絶対に設定されます。 タイム ゾーン情報が指定されていない場合、これは UTC として解釈されます。

permissions
str

省略可能で、アカウントに対して階層型名前空間が有効になっている場合にのみ有効です。 ファイル所有者、ファイル所有グループなどの POSIX アクセス許可を設定します。 各クラスには、読み取り、書き込み、または実行のアクセス許可を付与できます。 スティッキー ビットもサポートされています。 シンボリック (rwxrw-rw-) と 4 桁の 8 進数表記 (0766 など) の両方がサポートされています。

if_modified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した時刻以降にリソースが変更されている場合に限り操作が実行されます。

if_unmodified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した日付/時刻以降にリソースが変更されていない場合に限り操作が実行されます。

etag
str

ETag 値またはワイルドカード文字 (*)。 リソースが変更されたかどうかをチェックし、match_condition パラメーターで指定された条件に従って動作するために使用されます。

match_condition
MatchConditions

etag で使用する一致条件。

cpk
CustomerProvidedEncryptionKey

指定したキーを使用してサービス側のデータを暗号化します。 顧客が指定したキーの使用は HTTPS 経由で行う必要があります。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください

encryption_context
str

ファイルに設定する暗号化コンテキストを指定します。

戻り値

応答ディクテーション (Etag と最終変更)。

ファイルを作成します。


   file_client = filesystem_client.get_file_client(file_name)
   file_client.create_file()

delete_file

指定したファイルに削除のマークを付けます。

delete_file(**kwargs) -> None

パラメーター

lease
DataLakeLeaseClient または str

ファイルにアクティブなリースがある場合は必須。 値には、LeaseClient オブジェクトまたは文字列としてのリース ID を指定できます。

if_modified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した時刻以降にリソースが変更されている場合に限り操作が実行されます。

if_unmodified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した日付/時刻以降にリソースが変更されていない場合に限り操作が実行されます。

etag
str

ETag 値またはワイルドカード文字 (*)。 リソースが変更されたかどうかをチェックし、match_condition パラメーターで指定された条件に従って動作するために使用されます。

match_condition
MatchConditions

etag で使用する一致条件。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください

戻り値

なし

ファイルを削除します。


   new_client.delete_file()

download_file

StorageStreamDownloader にファイルをダウンロードします。 readall() メソッドを使用してすべてのコンテンツを読み取るか、readinto() を使用してファイルをストリームにダウンロードする必要があります。 chunks() を使用すると、ユーザーがコンテンツをチャンク単位で反復処理できる反復子が返されます。

download_file(offset: int | None = None, length: int | None = None, **kwargs: Any) -> StorageStreamDownloader

パラメーター

offset
int
必須

ファイルのセクションをダウンロードするために使用するバイト範囲の先頭。 length が指定されている場合は、 を設定する必要があります。

length
int
必須

ストリームから読み取るバイト数。 これは省略可能ですが、最適なパフォーマンスを得るための指定が必要です。

lease
DataLakeLeaseClient または str

指定した場合、ファイルのリースがアクティブで、この ID と一致する場合にのみ、ダウンロードは成功します。 ファイルにアクティブなリースがある場合は必須。

if_modified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した時刻以降にリソースが変更されている場合に限り操作が実行されます。

if_unmodified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した日付/時刻以降にリソースが変更されていない場合に限り操作が実行されます。

etag
str

ETag 値またはワイルドカード文字 (*)。 リソースが変更されたかどうかをチェックし、match_condition パラメーターで指定された条件に従って動作するために使用されます。

match_condition
MatchConditions

etag で使用する一致条件。

cpk
CustomerProvidedEncryptionKey

指定したキーを使用して、サービス側のデータを復号化します。 顧客が指定したキーの使用は HTTPS 経由で行う必要があります。 Customer-Provided キーを使用してファイルが作成された場合は必須です。

max_concurrency
int

ダウンロードする並列接続の数。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください。 このメソッドは、サービスに対して複数の呼び出しを行う場合があり、タイムアウトは各呼び出しに個別に適用されます。

戻り値

ストリーミング オブジェクト (StorageStreamDownloader)

の戻り値の型 :

ダウンロードしたデータを返します。


   download = file_client.download_file()
   downloaded_bytes = download.readall()

exists

ファイルが存在する場合は True を返し、それ以外の場合は False を返します。

exists(**kwargs: Any) -> bool

パラメーター

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください

戻り値

ファイルが存在する場合は True、それ以外の場合は False を返します。

の戻り値の型 :

flush_data

前に追加したデータをコミットします。

flush_data(offset: int, retain_uncommitted_data: bool | None = False, **kwargs) -> Dict[str, str | datetime]

パラメーター

offset
必須

offset は、前に追加されたデータをコミットした後のファイルの長さと同じです。

retain_uncommitted_data
bool
必須

フラッシュ操作に対してのみ有効です。 "true" の場合、コミットされていないデータはフラッシュ操作の完了後も保持されます。それ以外の場合、コミットされていないデータはフラッシュ操作の後に削除されます。 既定値は false です。 指定した位置より小さいオフセットのデータは、flush が成功するとファイルに書き込まれますが、この省略可能なパラメーターを使用すると、フラッシュ位置の後のデータを将来のフラッシュ操作のために保持できます。

content_settings
ContentSettings

パス プロパティの設定に使用される ContentSettings オブジェクト。

close
bool

Azure Storage イベントを使用すると、アプリケーションはファイルが変更されたときに通知を受信できます。 Azure Storage イベントが有効になっていると、ファイル変更イベントが発生します。 このイベントには、ファイル ストリームへの中間フラッシュとファイル ストリームの最後の閉じとの違いを区別するための最終的な変更であるかどうかを示すプロパティがあります。 close クエリ パラメーターは、アクションが "flush" で変更通知が有効になっている場合にのみ有効です。 close の値が "true" で、フラッシュ操作が正常に完了した場合、サービスは、これが最終更新であることを示すプロパティを使用してファイル変更通知を生成します (ファイル ストリームが閉じられました)。 "false" の場合は、ファイルが変更されたことを示す変更通知が発生します。 既定値は false です。 このクエリ パラメーターは、ファイル ストリームが閉じられたことを示すために、Hadoop ABFS ドライバーによって true に設定されます。

if_modified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した時刻以降にリソースが変更されている場合に限り操作が実行されます。

if_unmodified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した日付/時刻以降にリソースが変更されていない場合に限り操作が実行されます。

etag
str

ETag 値またはワイルドカード文字 (*)。 リソースが変更されたかどうかをチェックし、match_condition パラメーターで指定された条件に従って動作するために使用されます。

match_condition
MatchConditions

etag で使用する一致条件。

lease_action
Literal["acquire", "auto-renew", "release", "acquire-release"]

追加データと共にリース操作を実行するために使用されます。

"取得" - リースを取得します。 "自動更新" - 既存のリースを再び新しくします。 "release" - 操作が完了したらリースを解放します。 "acquire-release" - リースを取得し、操作が完了したら解放します。

lease_duration
int

lease_actionが "acquire" または "acquire-release" に設定されている場合は有効です。

リース期間 (秒単位) を指定します。無期限のリースには -1 を指定します。 無限リースでない場合は、15 ~ 60 秒を指定できます。 更新または変更を使用してリース期間を変更することはできません。 既定値は -1 (無限リース) です。

lease
DataLakeLeaseClient または str

ファイルにアクティブなリースがある場合、または lease_action が "acquire" または "acquire-release" に設定されている場合は必須です。 ファイルに既存のリースがある場合、これはファイルへのアクセスに使用されます。 新しいリースを取得する場合、これは新しいリース ID として使用されます。値には、DataLakeLeaseClient オブジェクトまたはリース ID を文字列として指定できます。

cpk
CustomerProvidedEncryptionKey

指定したキーを使用してサービス側のデータを暗号化します。 顧客が指定したキーの使用は HTTPS 経由で行う必要があります。

戻り値

dict の応答ヘッダー

前に追加したデータをコミットします。


   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

接続文字列から DataLakeFileClient を作成します。

: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

パラメーター

conn_str
str
必須

Azure Storage アカウントへの接続文字列。

file_system_name
str
必須

対話するファイル システムの名前。

file_path
str
必須

特定のファイルと対話するためのファイル パス全体。 例: "{directory}/{サブディレクトリ}/{file}"

credential
既定値: None

認証に使用する資格情報。 これは、アカウント URL に既に SAS トークンがある場合、または接続文字列に既に共有アクセス キー値がある場合は省略可能です。 値には、SAS トークン文字列、azure.core.credentials の AzureSasCredential または AzureNamedKeyCredential のインスタンス、アカウント共有アクセス キー、または azure.identity の TokenCredentials クラスのインスタンスを指定できます。 ここで指定した資格情報は、接続文字列内の資格情報よりも優先されます。 AzureNamedKeyCredential のインスタンスを使用する場合は、"name" をストレージ アカウント名に、"key" をストレージ アカウント キーにする必要があります。

get_access_control

get_access_control(upn: bool | None = None, **kwargs) -> Dict[str, Any]

パラメーター

upn
bool
必須

省略可能。 アカウントに対して階層型名前空間が有効になっている場合にのみ有効です。 "true" の場合、x-ms-owner、x-ms-group、および x-ms-acl 応答ヘッダーで返されるユーザー ID 値は、Azure Active Directory オブジェクト ID からユーザー プリンシパル名に変換されます。 "false" の場合、値は Azure Active Directory オブジェクト ID として返されます。 既定値は false です。 グループ ID とアプリケーション オブジェクト ID は一意のフレンドリ名を持たないため、変換されないことに注意してください。

lease
DataLakeLeaseClient または str

ファイル/ディレクトリにアクティブなリースがある場合は必須です。 値には、LeaseClient オブジェクトまたは文字列としてのリース ID を指定できます。

if_modified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した時刻以降にリソースが変更されている場合に限り操作が実行されます。

if_unmodified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した日付/時刻以降にリソースが変更されていない場合に限り操作が実行されます。

etag
str

ETag 値またはワイルドカード文字 (*)。 リソースが変更されたかどうかをチェックし、match_condition パラメーターで指定された条件に従って動作するために使用されます。

match_condition
MatchConditions

etag で使用する一致条件。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください

response dict

response dict。

get_file_properties

ファイルのすべてのユーザー定義メタデータ、標準 HTTP プロパティ、およびシステム プロパティを返します。 ファイルのコンテンツは返しません。

get_file_properties(**kwargs: Any) -> FileProperties

パラメーター

lease

ディレクトリまたはファイルにアクティブなリースがある場合は必須です。 値には、DataLakeLeaseClient オブジェクトまたはリース ID を文字列として指定できます。

if_modified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した時刻以降にリソースが変更されている場合に限り操作が実行されます。

if_unmodified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した日付/時刻以降にリソースが変更されていない場合に限り操作が実行されます。

etag
str

ETag 値またはワイルドカード文字 (*)。 リソースが変更されたかどうかをチェックし、match_condition パラメーターで指定された条件に従って動作するために使用されます。

match_condition
MatchConditions

etag で使用する一致条件。

cpk
CustomerProvidedEncryptionKey

指定したキーを使用して、サービス側のデータを復号化します。 顧客が指定したキーの使用は HTTPS 経由で行う必要があります。 お客様が指定したキーを使用してファイルが作成された場合は必須です。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください

戻り値

ファイルのすべてのユーザー定義メタデータ、標準 HTTP プロパティ、およびシステム プロパティ。

の戻り値の型 :

ファイルのプロパティを取得します。


   properties = file_client.get_file_properties()

query_file

ユーザーが単純なクエリ式を指定して、datalake ファイル データを選択/プロジェクトできるようにします。 この操作は DataLakeFileQueryReader を返します。ユーザーは readall() または readinto() を使用してクエリ データを取得する必要があります。

query_file(query_expression: str, **kwargs: Any) -> DataLakeFileQueryReader

パラメーター

query_expression
str
必須

必須です。 クエリ ステートメント。 例: DataLakeStorage から * を選択します

on_error
Callable[DataLakeFileQueryError]

サービスによって返される処理エラーに対して呼び出される関数。

file_format
DelimitedTextDialect または DelimitedJsonDialect または QuickQueryDialect または str

省略可能。 ファイルに現在格納されているデータのシリアル化を定義します。 既定では、ファイル データは既定の言語で書式設定された CSV データとして扱われます。 これは、カスタムの DelimitedTextDialect、または DelimitedJsonDialect または "ParquetDialect" (文字列または列挙型として渡されます) でオーバーライドできます。 これらの方言は、それぞれのクラス、QuickQueryDialect 列挙型、または文字列として渡すことができます。

output_format
DelimitedTextDialect または DelimitedJsonDialect または list[ArrowDialect] または QuickQueryDialect または str

省略可能。 データ ストリームの出力シリアル化を定義します。 既定では、データはファイルで表されるとおりに返されます。 出力形式を指定すると、そのプロファイルに従ってファイル データが再フォーマットされます。 この値には、DelimitedTextDialect または DelimitedJsonDialect または ArrowDialect を指定できます。 これらの方言は、それぞれのクラス、QuickQueryDialect 列挙型、または文字列として渡すことができます。

lease
DataLakeLeaseClient または str

ファイルにアクティブなリースがある場合は必須。 値には、DataLakeLeaseClient オブジェクトまたはリース ID を文字列として指定できます。

if_modified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した時刻以降にリソースが変更されている場合に限り操作が実行されます。

if_unmodified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した日付/時刻以降にリソースが変更されていない場合に限り操作が実行されます。

etag
str

ETag 値またはワイルドカード文字 (*)。 リソースが変更されたかどうかをチェックし、match_condition パラメーターで指定された条件に従って動作するために使用されます。

match_condition
MatchConditions

etag で使用する一致条件。

cpk
CustomerProvidedEncryptionKey

指定したキーを使用して、サービス側のデータを復号化します。 顧客が指定したキーの使用は HTTPS 経由で行う必要があります。 Customer-Provided キーを使用してファイルが作成された場合は必須です。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください

戻り値

ストリーミング オブジェクト (DataLakeFileQueryReader)

の戻り値の型 :

<xref:azure.storage.filedatalake.DataLakeFileQueryReader>

単純なクエリ式を指定して、datalake ファイル データの select/project を選択します。


   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

パスとサブパスのAccess Controlを削除します。

remove_access_control_recursive(acl: str, **kwargs: Any) -> AccessControlChangeResult

パラメーター

acl
str
必須

ファイルとディレクトリに対する POSIX アクセス制御権限を削除します。 値は、アクセス制御エントリのコンマ区切りのリストです。 各アクセス制御エントリ (ACE) は、"[scope:][type]:[id]" という形式のスコープ、型、およびユーザーまたはグループ識別子で構成されます。

progress_hook
<xref:func>(AccessControlChanges)

呼び出し元が操作の進行状況を追跡できるコールバックと、Access Controlの変更に失敗したパスを収集できます。

continuation_token
str

以前に停止した操作を再開するために使用できる省略可能な継続トークン。

batch_size
int

省略可能。 データ セットのサイズがバッチ サイズを超える場合、処理は複数の要求に分割され、進行状況を追跡できます。 バッチ サイズは 1 から 2000 の間にする必要があります。 指定されていない場合の既定値は 2000 です。

max_batches
int

省略可能。 1 回の変更Access Control操作で実行できるバッチの最大数を定義します。 すべてのサブパスが処理される前に maximum に達した場合は、継続トークンを使用して操作を再開できます。 空の値は、非連結および操作のバッチの最大数が終了するまで継続されることを示します。

continue_on_failure
bool

False に設定すると、ユーザー エラー (4XX) が発生すると、操作はすぐに終了します。 True の場合、操作はユーザー エラーを無視し、ディレクトリの他のサブエンティティに対する操作を続行します。 継続トークンは、ユーザー エラーが発生した場合にcontinue_on_failureが True の場合にのみ返されます。 未設定の場合、既定値は False です。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください

戻り値

操作が途中で終了した場合の継続トークンと同様に、成功と失敗の数を含む再帰的な操作の概要。

の戻り値の型 :

例外

トークンが使用可能な場合、ユーザーは AzureError の continuation_token フィールドを使用して操作を再開できます。

rename_file

ソース ファイルの名前を変更します。

rename_file(new_name: str, **kwargs: Any) -> DataLakeFileClient

パラメーター

new_name
str
必須

ユーザーが名前を変更する新しいファイル名。 値の形式は"{filesystem}/{directory}/{サブディレクトリ}/{file}" である必要があります。

content_settings
ContentSettings

パス プロパティの設定に使用される ContentSettings オブジェクト。

source_lease
DataLakeLeaseClient または str

ソース パスのリース ID。 指定した場合、ソース パスにはアクティブなリースがあり、リース ID が一致している必要があります。

lease

ファイル/ディレクトリにアクティブなリースがある場合は必須です。 値には、LeaseClient オブジェクトまたは文字列としてのリース ID を指定できます。

if_modified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した時刻以降にリソースが変更されている場合に限り操作が実行されます。

if_unmodified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した日付/時刻以降にリソースが変更されていない場合に限り操作が実行されます。

etag
str

ETag 値またはワイルドカード文字 (*)。 リソースが変更されたかどうかをチェックし、match_condition パラメーターで指定された条件に従って動作するために使用されます。

match_condition
MatchConditions

etag で使用する一致条件。

source_if_modified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した時刻以降にリソースが変更されている場合に限り操作が実行されます。

source_if_unmodified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した日付/時刻以降にリソースが変更されていない場合に限り操作が実行されます。

source_etag
str

ソース ETag 値、またはワイルドカード文字 (*)。 リソースが変更されたかどうかをチェックし、match_condition パラメーターで指定された条件に従って動作するために使用されます。

source_match_condition
MatchConditions

etag で使用するソース一致条件。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください

戻り値

名前が変更されたファイル クライアント

の戻り値の型 :

ソース ファイルの名前を変更します。


   new_client = file_client.rename_file(file_client.file_system_name + '/' + 'newname')

set_access_control

パスの所有者、グループ、アクセス許可、またはアクセス制御リストを設定します。

set_access_control(owner: str | None = None, group: str | None = None, permissions: str | None = None, acl: str | None = None, **kwargs) -> Dict[str, str | datetime]

パラメーター

owner
str
必須

省略可能。 ファイルまたはディレクトリの所有者。

group
str
必須

省略可能。 ファイルまたはディレクトリの所有グループ。

permissions
str
必須

省略可能で、アカウントに対して階層型名前空間が有効になっている場合にのみ有効です。 ファイル所有者、ファイル所有グループなどの POSIX アクセス許可を設定します。 各クラスには、読み取り、書き込み、または実行のアクセス許可を付与できます。 スティッキー ビットもサポートされています。 シンボリック (rwxrw-rw-) と 4 桁の 8 進数表記 (0766 など) の両方がサポートされています。 アクセス許可と acl は相互に排他的です。

acl
str
必須

ファイルとディレクトリに対する POSIX アクセス制御権限を設定します。 値は、アクセス制御エントリのコンマ区切りのリストです。 各アクセス制御エントリ (ACE) は、スコープ、型、ユーザーまたはグループ識別子、および "[scope:][type]:[id]:[permissions]" 形式のアクセス許可で構成されます。 アクセス許可と acl は相互に排他的です。

lease
DataLakeLeaseClient または str

ファイル/ディレクトリにアクティブなリースがある場合は必須です。 値には、LeaseClient オブジェクトまたは文字列としてのリース ID を指定できます。

if_modified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した時刻以降にリソースが変更されている場合に限り操作が実行されます。

if_unmodified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した日付/時刻以降にリソースが変更されていない場合に限り操作が実行されます。

etag
str

ETag 値またはワイルドカード文字 (*)。 リソースが変更されたかどうかをチェックし、match_condition パラメーターで指定された条件に従って動作するために使用されます。

match_condition
MatchConditions

etag で使用する一致条件。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください

response dict

応答ディクテーション (Etag と最終変更)。

set_access_control_recursive

パスとサブパスのAccess Controlを設定します。

set_access_control_recursive(acl: str, **kwargs: Any) -> AccessControlChangeResult

パラメーター

acl
str
必須

ファイルとディレクトリに対する POSIX アクセス制御権限を設定します。 値は、アクセス制御エントリのコンマ区切りのリストです。 各アクセス制御エントリ (ACE) は、スコープ、型、ユーザーまたはグループ識別子、および "[scope:][type]:[id]:[permissions]" 形式のアクセス許可で構成されます。

progress_hook
<xref:func>(AccessControlChanges)

呼び出し元が操作の進行状況を追跡できるコールバックと、Access Controlの変更に失敗したパスを収集できます。

continuation_token
str

以前に停止した操作を再開するために使用できる省略可能な継続トークン。

batch_size
int

省略可能。 データ セットのサイズがバッチ サイズを超える場合、処理は複数の要求に分割され、進行状況を追跡できます。 バッチ サイズは 1 から 2000 の間にする必要があります。 指定されていない場合の既定値は 2000 です。

max_batches
int

省略可能。 1 回の変更Access Control操作で実行できるバッチの最大数を定義します。 すべてのサブパスが処理される前に maximum に達した場合は、継続トークンを使用して操作を再開できます。 空の値は、非連結および操作のバッチの最大数が終了するまで継続されることを示します。

continue_on_failure
bool

False に設定すると、ユーザー エラー (4XX) が発生すると、操作はすぐに終了します。 True の場合、操作はユーザー エラーを無視し、ディレクトリの他のサブエンティティに対する操作を続行します。 継続トークンは、ユーザー エラーが発生した場合にcontinue_on_failureが True の場合にのみ返されます。 未設定の場合、既定値は False です。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください

戻り値

操作が途中で終了した場合の継続トークンと同様に、成功と失敗の数を含む再帰的な操作の概要。

の戻り値の型 :

例外

トークンが使用可能な場合、ユーザーは AzureError の continuation_token フィールドを使用して操作を再開できます。

set_file_expiry

ファイルの有効期限が切れ、削除される時間を設定します。

set_file_expiry(expiry_options: str, expires_on: datetime | int | None = None, **kwargs) -> None

パラメーター

expiry_options
str
必須

必須です。 有効期限のモードを示します。 使用できる値は、'NeverExpire'、'RelativeToCreation'、'RelativeToNow'、'Absolute' です。

expires_on
datetime または int
必須

ファイルの有効期限を設定する時間。 expiry_optionsが RelativeTo*の場合、expires_onはミリ秒単位の int である必要があります。 expires_onの型が datetime の場合は、UTC 時刻にする必要があります。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください

の戻り値の型 :

set_http_headers

ファイルまたはディレクトリのシステム プロパティを設定します。

content_settingsに 1 つのプロパティが設定されている場合、すべてのプロパティがオーバーライドされます。

set_http_headers(content_settings: ContentSettings | None = None, **kwargs) -> Dict[str, Any]

パラメーター

content_settings
ContentSettings
必須

ファイル/ディレクトリ プロパティの設定に使用される ContentSettings オブジェクト。

lease
DataLakeLeaseClient または str

指定した場合、set_file_system_metadataは、ファイル システムのリースがアクティブで、この ID と一致する場合にのみ成功します。

if_modified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した時刻以降にリソースが変更されている場合に限り操作が実行されます。

if_unmodified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した日付/時刻以降にリソースが変更されていない場合に限り操作が実行されます。

etag
str

ETag 値またはワイルドカード文字 (*)。 リソースが変更されたかどうかをチェックし、match_condition パラメーターで指定された条件に従って動作するために使用されます。

match_condition
MatchConditions

etag で使用する一致条件。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください

戻り値

file/directory-updated プロパティ dict (Etag と最終変更)

の戻り値の型 :

set_metadata

指定したファイル システムの 1 つ以上のユーザー定義の名前と値のペアを設定します。 この操作を呼び出すたびに、ファイル システムにアタッチされているすべての既存のメタデータが置き換えられます。 ファイル システムからすべてのメタデータを削除するには、メタデータ ディクテーションなしでこの操作を呼び出します。

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

パラメーター

metadata
Dict[str, str]
必須

メタデータとしてファイル システムに関連付ける名前と値のペアを含む dict。 例: {'category':'test'}

lease
DataLakeLeaseClient または str

指定した場合、set_file_system_metadataは、ファイル システムのリースがアクティブで、この ID と一致する場合にのみ成功します。

if_modified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した時刻以降にリソースが変更されている場合に限り操作が実行されます。

if_unmodified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した日付/時刻以降にリソースが変更されていない場合に限り操作が実行されます。

etag
str

ETag 値またはワイルドカード文字 (*)。 リソースが変更されたかどうかをチェックし、match_condition パラメーターで指定された条件に従って動作するために使用されます。

match_condition
MatchConditions

etag で使用する一致条件。

cpk
CustomerProvidedEncryptionKey

指定したキーを使用してサービス側のデータを暗号化します。 顧客が指定したキーの使用は HTTPS 経由で行う必要があります。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください

戻り値

ファイル システムで更新されたプロパティ dict (Etag と最終変更)。

update_access_control_recursive

パスとサブパスのAccess Controlを変更します。

update_access_control_recursive(acl: str, **kwargs: Any) -> AccessControlChangeResult

パラメーター

acl
str
必須

ファイルとディレクトリに対する POSIX アクセス制御権限を変更します。 値は、アクセス制御エントリのコンマ区切りのリストです。 各アクセス制御エントリ (ACE) は、スコープ、型、ユーザーまたはグループ識別子、および "[scope:][type]:[id]:[permissions]" 形式のアクセス許可で構成されます。

progress_hook
<xref:func>(AccessControlChanges)

呼び出し元が操作の進行状況を追跡できるコールバックと、Access Controlの変更に失敗したパスを収集できます。

continuation_token
str

以前に停止した操作を再開するために使用できる省略可能な継続トークン。

batch_size
int

省略可能。 データ セットのサイズがバッチ サイズを超える場合、処理は複数の要求に分割され、進行状況を追跡できます。 バッチ サイズは 1 から 2000 の間にする必要があります。 指定されていない場合の既定値は 2000 です。

max_batches
int

省略可能。 1 回の変更Access Control操作で実行できるバッチの最大数を定義します。 すべてのサブパスが処理される前に maximum に達した場合は、継続トークンを使用して操作を再開できます。 空の値は、非連結および操作のバッチの最大数が終了するまで継続されることを示します。

continue_on_failure
bool

False に設定すると、ユーザー エラー (4XX) が発生すると、操作はすぐに終了します。 True の場合、操作はユーザー エラーを無視し、ディレクトリの他のサブエンティティに対する操作を続行します。 継続トークンは、ユーザー エラーが発生した場合にcontinue_on_failureが True の場合にのみ返されます。 未設定の場合、既定値は False です。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください

戻り値

操作が途中で終了した場合の継続トークンと同様に、成功と失敗の数を含む再帰的な操作の概要。

の戻り値の型 :

例外

トークンが使用可能な場合、ユーザーは AzureError の continuation_token フィールドを使用して操作を再開できます。

upload_data

ファイルにデータをアップロードします。

upload_data(data: bytes | str | Iterable | IO, length: int | None = None, overwrite: bool | None = False, **kwargs) -> Dict[str, Any]

パラメーター

data
必須

ファイルにアップロードするコンテンツ

length
int
必須

データのサイズ (バイト単位)。

overwrite
bool
必須

既存のファイルを上書きするかどうかを指定します。

content_settings
ContentSettings

パス プロパティの設定に使用される ContentSettings オブジェクト。

metadata
Optional[Dict[str, str]]

BLOB にメタデータとして関連付ける名前と値のペア。

lease
DataLakeLeaseClient または str

BLOB にアクティブなリースが存在する場合は必須です。 値には、DataLakeLeaseClient オブジェクトまたはリース ID を文字列として指定できます。

umask
str

省略可能で、アカウントに対して階層型名前空間が有効になっている場合にのみ有効です。 ファイルまたはディレクトリを作成し、親フォルダーに既定の ACL がない場合、umask は作成するファイルまたはディレクトリのアクセス許可を制限します。 結果のアクセス許可は p & ^u によって与えられます。ここで、p はアクセス許可で、umask はユーザーです。 たとえば、p が 0777 で 0057 の場合、結果のアクセス許可は 0720 になります。 既定のアクセス許可は、ディレクトリの場合は 0777、ファイルの場合は 0666 です。 既定の umask は 0027 です。 umask は 4 桁の 8 進数表記 (例: 0766) で指定する必要があります。

permissions
str

省略可能で、アカウントに対して階層型名前空間が有効になっている場合にのみ有効です。 ファイル所有者、ファイル所有グループなどの POSIX アクセス許可を設定します。 各クラスには、読み取り、書き込み、または実行のアクセス許可を付与できます。 スティッキー ビットもサポートされています。 シンボリック (rwxrw-rw-) と 4 桁の 8 進数表記 (0766 など) の両方がサポートされています。

if_modified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した時刻以降にリソースが変更されている場合に限り操作が実行されます。

if_unmodified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した日付/時刻以降にリソースが変更されていない場合に限り操作が実行されます。

validate_content
bool

true の場合、ファイルの各チャンクの MD5 ハッシュを計算します。 ストレージ サービスは、送信されたハッシュで到着したコンテンツのハッシュをチェックします。 これは主に、https (既定) として https ではなく http を使用して既に検証される場合に、ネットワーク上のビットフラグを検出する場合に重要です。 この MD5 ハッシュは BLOB と共に保存されません。 また、有効にすると、MD5 ハッシュを計算するにはブロック全体のバッファリングが必要であり、メモリ効率の高いアルゴリズムの目的が無効になるため、メモリ効率の高いアップロード アルゴリズムは使用されないことに注意してください。

etag
str

ETag 値またはワイルドカード文字 (*)。 リソースが変更されたかどうかをチェックし、match_condition パラメーターで指定された条件に従って動作するために使用されます。

match_condition
MatchConditions

etag で使用する一致条件。

cpk
CustomerProvidedEncryptionKey

指定したキーを使用してサービス側のデータを暗号化します。 顧客が指定したキーの使用は HTTPS 経由で行う必要があります。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください。 このメソッドは、サービスに対して複数の呼び出しを行う場合があり、タイムアウトは各呼び出しに個別に適用されます。

chunk_size
int

ファイルをチャンク単位でアップロードするための最大チャンク サイズ。 既定値は 100*1024*1024 または 100 MB です。

encryption_context
str

ファイルに設定する暗号化コンテキストを指定します。

戻り値

応答ディクテーション (Etag と最終変更)。

属性

api_version

要求に使用される Storage API のバージョン。

location_mode

クライアントが現在使用している場所モード。

既定では、これは "プライマリ" になります。 オプションには、"primary" と "secondary" が含まれます。

primary_endpoint

完全なプライマリ エンドポイント URL。

primary_hostname

プライマリ エンドポイントのホスト名。

secondary_endpoint

完全なセカンダリ エンドポイント URL (構成されている場合)。

使用できない場合は、ValueError が発生します。 セカンダリ ホスト名を明示的に指定するには、インスタンス化時に省略可能な secondary_hostname キーワード (keyword) 引数を使用します。

例外

secondary_hostname

セカンダリ エンドポイントのホスト名。

使用できない場合、これは None になります。 セカンダリ ホスト名を明示的に指定するには、インスタンス化時に省略可能な secondary_hostname キーワード (keyword) 引数を使用します。

url

SAS トークン (使用されている場合) を含む、このエンティティへの完全なエンドポイント URL。

これは、現在 location_modeの に応じて、プライマリ エンドポイントまたはセカンダリ エンドポイントのいずれかになります。 :returns: SAS トークン (使用されている場合) を含む、このエンティティへの完全なエンドポイント URL。 :rtype: str