次の方法で共有


BlobClient クラス

特定の BLOB と対話するクライアント。ただし、その BLOB はまだ存在しない可能性があります。

継承
azure.storage.blob._shared.base_client_async.AsyncStorageAccountHostsMixin
BlobClient
azure.storage.blob._blob_client.BlobClient
BlobClient
azure.storage.blob._encryption.StorageEncryptionMixin
BlobClient

コンストラクター

BlobClient(account_url: str, container_name: str, blob_name: str, snapshot: str | Dict[str, Any] | None = None, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | AsyncTokenCredential | None = None, **kwargs: Any)

パラメーター

account_url
str
必須

ストレージ アカウントの URI。 BLOB に対する完全な URI を指定してクライアントを作成するには、 クラスメソッドを使用します from_blob_url

container_name
str
必須

BLOB のコンテナー名。

blob_name
str
必須

対話する BLOB の名前。 指定した場合、この値は BLOB URL で指定された BLOB 値をオーバーライドします。

snapshot
str
既定値: None

操作対象の省略可能な BLOB スナップショット。 これは、スナップショット ID 文字列、または からcreate_snapshot返される応答です。

credential
既定値: None

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

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

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

バージョン 12.2.0 の新機能。

secondary_hostname
str

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

max_block_size
int

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

max_single_put_size
int

BLOB サイズが max_single_put_size 以下の場合、BLOB は http PUT 要求を 1 つだけ使用してアップロードされます。 BLOB のサイズがmax_single_put_sizeよりも大きい場合、BLOB はチャンク単位でアップロードされます。 既定値は 64*1024*1024、または 64 MB です。

min_large_block_upload_threshold
int

ブロック BLOB をアップロードするときにメモリ効率の高いアルゴリズムを使用するために必要な最小チャンク サイズ。 既定値は 4*1024*1024+1 です。

use_byte_buffer
bool

ブロック BLOB のアップロードにはバイト バッファーを使用します。 既定値は False です。

max_page_size
int

ページ BLOB をアップロードするための最大チャンク サイズ。 既定値は 4*1024*1024、または 4 MB です。

max_single_get_size
int

1 回の呼び出しでダウンロードされる BLOB の最大サイズ。超過した部分はチャンクでダウンロードされます (並列である可能性があります)。 既定値は 32*1024*1024、または 32 MB です。

max_chunk_get_size
int

BLOB のダウンロードに使用される最大チャンク サイズ。 既定値は 4*1024*1024、または 4 MB です。

version_id
str

version id パラメーターは不透明な DateTime 値であり、存在する場合は、操作する BLOB のバージョンを指定します。

メソッド

abort_copy

進行中のコピー操作を中止します。

これにより、長さが 0 の宛先 BLOB と完全なメタデータが残ります。 コピー操作が既に終了している場合は、エラーが発生します。

acquire_lease

新しいリースを要求します。

BLOB にアクティブなリースがない場合、BLOB サービスは BLOB にリースを作成し、新しいリースを返します。

append_block

新しいデータ ブロックを既存の追加 BLOB の末尾にコミットします。

append_block_from_url

BLOB の一部としてコミットされる新しいブロックを作成します。ここで、コンテンツはソース URL から読み取られます。

clear_page

ページの範囲をクリアします。

close

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

commit_block_list

[ブロック一覧のコミット] 操作では、BLOB を構成するブロック ID の一覧を指定して BLOB を書き込みます。

create_append_blob

新しい追加 BLOB を作成します。 この操作により、新しい 0 長の追加 BLOB が作成されます。 既存の BLOB の内容は、新しく初期化された追加 BLOB で上書きされます。 追加 BLOB にコンテンツを追加するには、 メソッドまたは append_block_from_url メソッドをappend_block呼び出します。

create_page_blob

指定したサイズの新しいページ BLOB を作成します。

create_snapshot

BLOB のスナップショットを作成します。

スナップショットは、ある時点で作成された読み取り専用の BLOB です。 読み取り、コピー、または削除はできますが、変更することはできません。 スナップショットを使用すると、BLOB をある時点での表示内容のままバックアップできます。

BLOB のスナップショットは、スナップショットの取得元のベース BLOB と同じ名前を持ち、DateTime 値を追加して、スナップショットが取得された時刻を示します。

delete_blob

指定された BLOB を削除対象としてマークします。

BLOB は、後でガベージ コレクション中に削除されます。 BLOB を削除するには、そのスナップショットをすべて削除する必要があります。 delete_blob() 操作では、両方を同時に削除できます。

サービスに対して削除アイテム保持ポリシーが有効になっている場合、この操作は BLOB を論理的に削除し、指定した日数だけ BLOB を保持します。 指定した日数が経過すると、ガベージ コレクション中に BLOB のデータがサービスから削除されます。 論理的に削除された BLOB には、include=['deleted'] オプションを指定することでlist_blobsアクセスできます。 論理的に削除された BLOB は、操作を使用して <xref:azure.storage.blob.aio.undelete> 復元できます。

delete_immutability_policy

[不変ポリシーの削除] 操作では、BLOB の不変ポリシーが削除されます。

バージョン 12.10.0 の新機能: この操作は API バージョン '2020-10-02' で導入されました。

download_blob

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

exists

定義されたパラメーターを持つ BLOB が存在する場合は True を返し、それ以外の場合は False を返します。

from_blob_url

BLOB URL から BlobClient を作成します。 これは、BLOB 名に '/' を含むカスタマイズされた BLOB URL をサポートしていません。

from_connection_string

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

get_account_information

BLOB が存在するストレージ アカウントに関連する情報を取得します。

ユーザーがコンテナーまたは BLOB への SAS を持っている場合も、情報を取得できます。 返されるディクショナリのキーには、'sku_name' と 'account_kind' が含まれます。

get_blob_properties

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

get_blob_tags

タグの取得操作を使用すると、ユーザーは BLOB または特定の BLOB バージョンのタグを取得できますが、スナップショットは取得できません。

バージョン 12.4.0 の新機能: この操作は API バージョン '2019-12-12' で導入されました。

get_block_list

ブロック リストの取得操作では、ブロック BLOB の一部としてアップロードされたブロックの一覧が取得されます。

get_page_range_diff_for_managed_disk

マネージド ディスクまたはスナップショットの有効なページ範囲の一覧を返します。

注意

この操作は、マネージド ディスク アカウントでのみ使用できます。

バージョン 12.2.0 の新機能: この操作は API バージョン '2019-07-07' で導入されました。

get_page_ranges

非推奨: ページ BLOB またはページ BLOB のスナップショットの有効なページ範囲の一覧を返します。

list_page_ranges

ページ BLOB またはページ BLOB のスナップショットの有効なページ範囲の一覧を返します。 previous_snapshotが指定されている場合、結果はターゲット BLOB と前のスナップショットの間の変更のdiffになります。

query_blob

ユーザーが単純なクエリ式を指定して、BLOB または BLOB スナップショット データの選択/プロジェクトを実行できるようにします。 この操作は BlobQueryReader を返します。ユーザーは readall() または readinto() を使用してクエリ データを取得する必要があります。

resize_blob

ページ BLOB のサイズを指定したサイズに変更します。

指定した値が現在の BLOB のサイズより小さい場合、指定した値を超えるすべてのページはクリアされます。

seal_append_blob

Seal 操作では、追加 BLOB が読み取り専用になるようにシールされます。

バージョン 12.4.0 の新機能。

set_blob_metadata

BLOB のユーザー定義メタデータを 1 つ以上の名前と値のペアとして設定します。

set_blob_tags

[タグの設定] 操作を使用すると、ユーザーは BLOB または特定の BLOB バージョンにタグを設定できますが、スナップショットすることはできません。 この操作を呼び出すたびに、BLOB にアタッチされているすべての既存のタグが置き換えられます。 BLOB からすべてのタグを削除するには、タグが設定されていない状態でこの操作を呼び出します。

バージョン 12.4.0 の新機能: この操作は API バージョン '2019-12-12' で導入されました。

set_http_headers

BLOB のシステム プロパティを設定します。

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

set_immutability_policy

[不変ポリシーの設定] 操作では、BLOB に不変ポリシーを設定します。

バージョン 12.10.0 の新機能: この操作は API バージョン '2020-10-02' で導入されました。

set_legal_hold

[訴訟ホールドの設定] 操作では、BLOB の訴訟ホールドが設定されます。

バージョン 12.10.0 の新機能: この操作は API バージョン '2020-10-02' で導入されました。

set_premium_page_blob_tier

BLOB のページ BLOB 層を設定します。 この API は、Premium アカウントのページ BLOB でのみサポートされます。

set_sequence_number

BLOB シーケンス番号を設定します。

set_standard_blob_tier

この操作により、ブロック BLOB の層が設定されます。

ブロック BLOB の層によって、ホット/クール/アーカイブ ストレージの種類が決まります。 この操作では、BLOB の ETag は更新されません。

stage_block

コミットする新しいブロックを BLOB の一部として作成します。

stage_block_from_url

コンテンツが URL から読み取られる BLOB の一部としてコミットされる新しいブロックを作成します。

start_copy_from_url

指定した URL から BLOB をコピーします。

この操作は、copy_statuscopy_idを含むディクショナリを返します。これは、コピー操作の状態をチェックまたは中止するために使用できます。 copy_status は、コピーが同期的に完了した場合は "成功"、コピーが非同期的に開始されている場合は "保留中" になります。 非同期コピーの場合、メソッドをポーリングしてコピーの状態を get_blob_properties 確認することで、状態を確認できます。 requires_syncを True に設定して、コピーを強制的に同期します。 BLOB サービスは、ベストエフォート方式で BLOB をコピーします。

コピー操作のソース BLOB は、ブロック BLOB、追加 BLOB、またはページ BLOB のいずれかです。 コピー先 BLOB が既に存在する場合、コピー元 BLOB と同じ BLOB の種類である必要があります。 既存のコピー先 BLOB はすべて上書きされます。 コピー先 BLOB は、コピー操作の進行中は変更できません。

ページ BLOB からコピーする場合、BLOB サービスは、ソース BLOB の長さのコピー先ページ BLOB を作成し、最初はすべてのゼロを含みます。 その後、コピー元ページの範囲が列挙され、空以外の範囲がコピーされます。

ブロック BLOB または追加 BLOB の場合、BLOB サービスは、この操作から戻る前に長さが 0 のコミット済み BLOB を作成します。 ブロック BLOB からコピーすると、コミットされたすべてのブロックとそのブロック ID がコピーされます。 コミットされていないブロックはコピーされません。 コピー操作の最後に、コピー先 BLOB のコミット済みブロック数はソースと同じになります。

追加 BLOB からコピーすると、コミットされたすべてのブロックがコピーされます。 コピー操作の最後に、コピー先 BLOB のコミット済みブロック数はソースと同じになります。

undelete_blob

論理的に削除された BLOB またはスナップショットを復元します。

操作は、削除アイテム保持ポリシーで設定された指定した日数以内に使用された場合にのみ成功します。

BLOB のバージョン管理が有効になっている場合、このメソッドを使用してベース BLOB を復元することはできません。 代わりに、現在のバージョンに昇格させる BLOB バージョンの URL と共に を使用 start_copy_from_url します。

upload_blob

自動チャンクを使用して、データ ソースから新しい BLOB を作成します。

upload_blob_from_url

BLOB のコンテンツが特定の URL から読み取られた新しいブロック BLOB を作成します。 既存の BLOB の内容は、新しい BLOB で上書きされます。

upload_page

ページのアップロード操作では、ページの範囲をページ BLOB に書き込みます。

upload_pages_from_url

ページのアップロード操作では、ページの範囲を URL から読み取るページ BLOB に書き込みます。

abort_copy

進行中のコピー操作を中止します。

これにより、長さが 0 の宛先 BLOB と完全なメタデータが残ります。 コピー操作が既に終了している場合は、エラーが発生します。

async abort_copy(copy_id: str | Dict[str, Any] | BlobProperties, **kwargs: Any) -> None

パラメーター

copy_id
str または BlobProperties
必須

中止するコピー操作。 ID または BlobProperties のインスタンスを指定できます。

の戻り値の型 :

acquire_lease

新しいリースを要求します。

BLOB にアクティブなリースがない場合、BLOB サービスは BLOB にリースを作成し、新しいリースを返します。

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

パラメーター

lease_duration
int
必須

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

lease_id
str
必須

GUID 文字列形式の推奨リース ID。 提案されたリース ID が正しい形式でない場合、Blob Service は 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 で使用する一致条件。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

timeout
int

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

戻り値

BlobLeaseClient オブジェクト。

の戻り値の型 :

append_block

新しいデータ ブロックを既存の追加 BLOB の末尾にコミットします。

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

パラメーター

data
必須

ブロックの内容。

length
int
必須

ブロックのサイズ (バイト単位)。

validate_content
bool

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

maxsize_condition
int

オプションの条件付きヘッダー。 追加 BLOB に許可される最大長 (バイト単位)。 ブロックの追加操作によって BLOB がこの制限を超える場合、または BLOB サイズがこのヘッダーで指定された値を既に超えている場合、要求は MaxBlobSizeConditionNotMet エラー (HTTP 状態コード 412 - 前提条件失敗) で失敗します。

appendpos_condition
int

オプションの条件付きヘッダー。追加ブロック操作にのみ使用されます。 比較するバイト オフセットを示す数値。 Append Block は、追加位置がこの数値と等しい場合にのみ成功します。 そうでない場合、要求は AppendPositionConditionNotMet エラー (HTTP 状態コード 412 - 前提条件に失敗しました) で失敗します。

lease
BlobLeaseClient または str

BLOB にアクティブなリースが存在する場合は必須です。 値には、BlobLeaseClient オブジェクト、または文字列としてのリース 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 で使用する一致条件。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

encoding
str

既定値は UTF-8 です。

cpk
CustomerProvidedEncryptionKey

指定されたキーを使用して、サービス側のデータを暗号化します。 お客様から提供されたキーの使用は、HTTPS 経由で行う必要があります。 暗号化キー自体が要求で提供されるため、キーを転送するにはセキュリティで保護された接続を確立する必要があります。

encryption_scope
str

サービス上のデータを暗号化するために使用される定義済みの暗号化スコープ。 暗号化スコープは、Management API を使用して作成し、ここで名前で参照できます。 コンテナーで既定の暗号化スコープが定義されている場合、コンテナー レベルのスコープがオーバーライドを許可するように構成されている場合、この値によってオーバーライドされます。 そうしないと、エラーが発生します。

バージョン 12.2.0 の新機能。

timeout
int

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

戻り値

BLOB 更新プロパティの dict (Etag、最終変更、追加オフセット、コミットされたブロック数)。

の戻り値の型 :

append_block_from_url

BLOB の一部としてコミットされる新しいブロックを作成します。ここで、コンテンツはソース URL から読み取られます。

async append_block_from_url(copy_source_url: str, source_offset: int | None = None, source_length: int | None = None, **kwargs) -> Dict[str, str | datetime | int]

パラメーター

copy_source_url
str
必須

ソース データの URL。 パブリックであるか、共有アクセス署名がアタッチされている任意の Azure BLOB またはファイルを指すことができます。

source_offset
int
必須

これは、コピー ソースから取得する必要があるバイトの範囲の開始を示します。

source_length
int
必須

これは、コピー ソースから取得する必要があるバイト範囲の末尾を示します。

source_content_md5
bytearray

指定された場合、サービスはブロック コンテンツの MD5 ハッシュを計算し、この値と比較します。

maxsize_condition
int

オプションの条件付きヘッダー。 追加 BLOB に許可される最大長 (バイト単位)。 ブロックの追加操作によって BLOB がこの制限を超える場合、または BLOB サイズがこのヘッダーで指定された値を既に超えている場合、要求は MaxBlobSizeConditionNotMet エラー (HTTP 状態コード 412 - 前提条件失敗) で失敗します。

appendpos_condition
int

オプションの条件付きヘッダー。追加ブロック操作にのみ使用されます。 比較するバイト オフセットを示す数値。 Append Block は、追加位置がこの数値と等しい場合にのみ成功します。 そうでない場合、要求は AppendPositionConditionNotMet エラー (HTTP 状態コード 412 - 前提条件に失敗しました) で失敗します。

lease
BlobLeaseClient または str

BLOB にアクティブなリースが存在する場合は必須です。 値には、BlobLeaseClient オブジェクト、または文字列としてのリース 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 で使用する宛先の一致条件。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

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 で使用するソース一致条件。

cpk
CustomerProvidedEncryptionKey

指定されたキーを使用して、サービス側のデータを暗号化します。 お客様から提供されたキーの使用は、HTTPS 経由で行う必要があります。 暗号化キー自体が要求で提供されるため、キーを転送するにはセキュリティで保護された接続を確立する必要があります。

encryption_scope
str

サービス上のデータを暗号化するために使用される定義済みの暗号化スコープ。 暗号化スコープは、Management API を使用して作成し、ここで名前で参照できます。 コンテナーで既定の暗号化スコープが定義されている場合、コンテナー レベルのスコープがオーバーライドを許可するように構成されている場合、この値によってオーバーライドされます。 そうしないと、エラーが発生します。

バージョン 12.2.0 の新機能。

timeout
int

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

source_authorization
str

クライアント シークレットを使用してサービス プリンシパルとして認証し、ソース BLOB にアクセスします。 "bearer" がsource_authorization文字列のプレフィックスであることを確認します。

clear_page

ページの範囲をクリアします。

async clear_page(offset: int, length: int, **kwargs: Any) -> Dict[str, str | datetime]

パラメーター

offset
int
必須

BLOB のセクションへの書き込みに使用するバイト範囲の先頭。 ページは 512 バイトの境界に揃え、開始オフセットは 512 の剰余で、長さは 512 の剰余である必要があります。

length
int
必須

BLOB のセクションへの書き込みに使用するバイト数。 ページは 512 バイトの境界に揃え、開始オフセットは 512 の剰余で、長さは 512 の剰余である必要があります。

lease
BlobLeaseClient または str

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

if_sequence_number_lte
int

BLOB のシーケンス番号が指定された値以下の場合、要求は続行されます。それ以外の場合は失敗します。

if_sequence_number_lt
int

BLOB のシーケンス番号が指定された値より小さい場合、要求は続行されます。それ以外の場合は失敗します。

if_sequence_number_eq
int

BLOB のシーケンス番号が指定した値と等しい場合、要求は続行されます。それ以外の場合は失敗します。

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 で使用する一致条件。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

cpk
CustomerProvidedEncryptionKey

指定されたキーを使用して、サービス側のデータを暗号化します。 お客様から提供されたキーの使用は、HTTPS 経由で行う必要があります。 暗号化キー自体が要求で提供されるため、キーを転送するにはセキュリティで保護された接続を確立する必要があります。

timeout
int

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

戻り値

BLOB で更新されたプロパティの dict (Etag と最終更新日)。

の戻り値の型 :

close

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

async close()

commit_block_list

[ブロック一覧のコミット] 操作では、BLOB を構成するブロック ID の一覧を指定して BLOB を書き込みます。

async commit_block_list(block_list: List[BlobBlock], content_settings: ContentSettings | None = None, metadata: Dict[str, str] | None = None, **kwargs) -> Dict[str, str | datetime]

パラメーター

block_list
list
必須

Blockblobs の一覧。

content_settings
ContentSettings
必須

BLOB プロパティの設定に使用される ContentSettings オブジェクト。 コンテンツ タイプ、エンコード、言語、処理、md5、およびキャッシュ制御を設定するために使用されます。

metadata
dict[str, str]
必須

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

tags
dict(str, str)

タグとして BLOB に関連付けられている名前と値のペア。 タグでは大文字と小文字が区別されます。 タグ セットには、最大 10 個のタグを含むことができます。 タグ キーは 1 ~ 128 文字、タグ値は 0 ~ 256 文字にする必要があります。 有効なタグ キーと値の文字には、小文字と大文字、数字 (0 から 9)、スペース ()、プラス ( >><<+)、マイナス (-)、ピリオド (.)、solidus (/)、コロン (:)、等しい (=)、アンダースコア (_) が含まれます。

バージョン 12.4.0 の新機能。

lease
BlobLeaseClient または str

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

immutability_policy
ImmutabilityPolicy

BLOB、BLOB スナップショット、または BLOB バージョンの不変ポリシーを指定します。

バージョン 12.10.0 の新機能: これは API バージョン '2020-10-02' で導入されました。

legal_hold
bool

BLOB に訴訟ホールドを設定する必要がある場合に指定します。

バージョン 12.10.0 の新機能: これは API バージョン '2020-10-02' で導入されました。

validate_content
bool

true の場合、ページ コンテンツの MD5 ハッシュが計算されます。 ストレージ サービスは、送信されたハッシュで到着したコンテンツのハッシュをチェックします。 これは主に、https (既定値) が既に検証されるため、https ではなく http を使用する場合に、ネットワーク上のビットフラグを検出する場合に重要です。 この MD5 ハッシュは BLOB と共に保存されません。

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 で使用する一致条件。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

standard_blob_tier
StandardBlobTier

BLOB を設定する標準 BLOB 層の値。 このバージョンのライブラリでは、これは Standard ストレージ アカウントのブロック BLOB にのみ適用されます。

cpk
CustomerProvidedEncryptionKey

指定されたキーを使用して、サービス側のデータを暗号化します。 お客様から提供されたキーの使用は、HTTPS 経由で行う必要があります。 暗号化キー自体が要求で提供されるため、キーを転送するにはセキュリティで保護された接続を確立する必要があります。

encryption_scope
str

サービス上のデータを暗号化するために使用される定義済みの暗号化スコープ。 暗号化スコープは、Management API を使用して作成し、ここで名前で参照できます。 コンテナーで既定の暗号化スコープが定義されている場合、コンテナー レベルのスコープがオーバーライドを許可するように構成されている場合、この値によってオーバーライドされます。 そうしないと、エラーが発生します。

バージョン 12.2.0 の新機能。

timeout
int

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

戻り値

BLOB で更新されたプロパティの dict (Etag と最終更新日)。

の戻り値の型 :

create_append_blob

新しい追加 BLOB を作成します。 この操作により、新しい 0 長の追加 BLOB が作成されます。 既存の BLOB の内容は、新しく初期化された追加 BLOB で上書きされます。 追加 BLOB にコンテンツを追加するには、 メソッドまたは append_block_from_url メソッドをappend_block呼び出します。

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

パラメーター

content_settings
ContentSettings
必須

BLOB プロパティの設定に使用される ContentSettings オブジェクト。 コンテンツ タイプ、エンコード、言語、処理、md5、およびキャッシュ制御を設定するために使用されます。

metadata
dict(str, str)
必須

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

tags
dict(str, str)

タグとして BLOB に関連付けられている名前と値のペア。 タグでは大文字と小文字が区別されます。 タグ セットには、最大 10 個のタグを含むことができます。 タグ キーは 1 ~ 128 文字、タグ値は 0 ~ 256 文字にする必要があります。 有効なタグ キーと値の文字には、小文字と大文字、数字 (0 から 9)、スペース ()、プラス ( >><<+)、マイナス (-)、ピリオド (.)、solidus (/)、コロン (:)、等しい (=)、アンダースコア (_) が含まれます。

バージョン 12.4.0 の新機能。

immutability_policy
ImmutabilityPolicy

BLOB、BLOB スナップショット、または BLOB バージョンの不変ポリシーを指定します。

バージョン 12.10.0 の新機能: これは API バージョン '2020-10-02' で導入されました。

legal_hold
bool

BLOB に訴訟ホールドを設定する必要がある場合に指定します。

バージョン 12.10.0 の新機能: これは API バージョン '2020-10-02' で導入されました。

lease
BlobLeaseClient または str

BLOB にアクティブなリースが存在する場合は必須です。 値には、BlobLeaseClient オブジェクト、または文字列としてのリース 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 経由で行う必要があります。 暗号化キー自体が要求で提供されるため、キーを転送するにはセキュリティで保護された接続を確立する必要があります。

encryption_scope
str

サービス上のデータを暗号化するために使用される定義済みの暗号化スコープ。 暗号化スコープは、Management API を使用して作成し、ここで名前で参照できます。 コンテナーで既定の暗号化スコープが定義されている場合、コンテナー レベルのスコープがオーバーライドを許可するように構成されている場合、この値はオーバーライドされます。 それ以外の場合は、エラーが発生します。

バージョン 12.2.0 の新機能。

timeout
int

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

戻り値

BLOB で更新されたプロパティの dict (Etag と最終変更)。

の戻り値の型 :

create_page_blob

指定したサイズの新しいページ BLOB を作成します。

async create_page_blob(size: int, content_settings: ContentSettings | None = None, metadata: Dict[str, str] | None = None, premium_page_blob_tier: str | PremiumPageBlobTier | None = None, **kwargs) -> Dict[str, str | datetime]

パラメーター

size
int
必須

これにより、ページ BLOB の最大サイズ (最大 1 TB) が指定されます。 ページ BLOB のサイズは 512 バイトの境界に合わせて指定する必要があります。

content_settings
ContentSettings
必須

BLOB プロパティの設定に使用される ContentSettings オブジェクト。 コンテンツ タイプ、エンコード、言語、処理、md5、キャッシュ制御を設定するために使用されます。

metadata
dict(str, str)
必須

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

premium_page_blob_tier
PremiumPageBlobTier
必須

BLOB を設定するページ BLOB 層の値。 層は、BLOB のサイズと許可される IOPS の数に関連付けます。 これは、Premium Storage アカウントのページ BLOB にのみ適用されます。

tags
dict(str, str)

タグとして BLOB に関連付けられている名前と値のペア。 タグでは大文字と小文字が区別されます。 タグ セットには、最大 10 個のタグを含めることができます。 タグ キーは 1 ~ 128 文字、タグ値は 0 ~ 256 文字である必要があります。 有効なタグ キーと値の文字には、小文字と大文字、数字 (0 から 9)、スペース ()、プラス ( >><<+)、マイナス (-)、ピリオド (.)、solidus (/)、コロン (:)、等しい (=)、アンダースコア (_) が含まれます。

バージョン 12.4.0 の新機能。

sequence_number
int

ページ BLOB の場合のみ。 シーケンス番号は、ユーザーが要求を追跡するために使用するユーザー制御の値です。 シーケンス番号の有効な値の範囲は 0 ~ 2^63 - 1 です。既定値は 0 です。

lease
BlobLeaseClient または str

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

immutability_policy
ImmutabilityPolicy

BLOB、BLOB スナップショット、または BLOB バージョンの不変ポリシーを指定します。

バージョン 12.10.0 の新機能: これは API バージョン '2020-10-02' で導入されました。

legal_hold
bool

BLOB に訴訟ホールドを設定する必要がある場合に指定します。

バージョン 12.10.0 の新機能: これは API バージョン '2020-10-02' で導入されました。

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 経由で行う必要があります。 暗号化キー自体が要求で提供されるため、キーを転送するにはセキュリティで保護された接続を確立する必要があります。

encryption_scope
str

サービス上のデータを暗号化するために使用される定義済みの暗号化スコープ。 暗号化スコープは、Management API を使用して作成し、ここで名前で参照できます。 コンテナーで既定の暗号化スコープが定義されている場合、コンテナー レベルのスコープがオーバーライドを許可するように構成されている場合、この値はオーバーライドされます。 それ以外の場合は、エラーが発生します。

バージョン 12.2.0 の新機能。

timeout
int

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

戻り値

BLOB で更新されたプロパティの dict (Etag と最終変更)。

の戻り値の型 :

create_snapshot

BLOB のスナップショットを作成します。

スナップショットは、ある時点で作成された読み取り専用の BLOB です。 読み取り、コピー、または削除はできますが、変更することはできません。 スナップショットを使用すると、BLOB をある時点での表示内容のままバックアップできます。

BLOB のスナップショットは、スナップショットの取得元のベース BLOB と同じ名前を持ち、DateTime 値を追加して、スナップショットが取得された時刻を示します。

async create_snapshot(metadata: Dict[str, str] | None = None, **kwargs: Any) -> Dict[str, str | datetime]

パラメーター

metadata
dict(str, str)
必須

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

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 で使用する一致条件。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

lease
BlobLeaseClient または str

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

cpk
CustomerProvidedEncryptionKey

指定したキーを使用してサービス側のデータを暗号化します。 顧客が指定したキーの使用は HTTPS 経由で行う必要があります。 暗号化キー自体が要求で提供されるため、キーを転送するにはセキュリティで保護された接続を確立する必要があります。

encryption_scope
str

サービス上のデータを暗号化するために使用される定義済みの暗号化スコープ。 暗号化スコープは、Management API を使用して作成し、ここで名前で参照できます。 コンテナーで既定の暗号化スコープが定義されている場合、コンテナー レベルのスコープがオーバーライドを許可するように構成されている場合、この値はオーバーライドされます。 それ以外の場合は、エラーが発生します。

バージョン 12.2.0 の新機能。

timeout
int

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

戻り値

BLOB 更新プロパティの dict (スナップショット ID、Etag、最終更新日)。

の戻り値の型 :

delete_blob

指定された BLOB を削除対象としてマークします。

BLOB は、後でガベージ コレクション中に削除されます。 BLOB を削除するには、そのスナップショットをすべて削除する必要があります。 delete_blob() 操作では、両方を同時に削除できます。

サービスに対して削除アイテム保持ポリシーが有効になっている場合、この操作は BLOB を論理的に削除し、指定した日数だけ BLOB を保持します。 指定した日数が経過すると、ガベージ コレクション中に BLOB のデータがサービスから削除されます。 論理的に削除された BLOB には、include=['deleted'] オプションを指定することでlist_blobsアクセスできます。 論理的に削除された BLOB は、操作を使用して <xref:azure.storage.blob.aio.undelete> 復元できます。

async delete_blob(delete_snapshots: str = None, **kwargs: Any) -> None

パラメーター

delete_snapshots
str
必須

BLOB にスナップショットが関連付けられている場合は必須です。 次の値が含まれます。

  • "only": BLOB スナップショットのみを削除します。

  • "include": すべてのスナップショットと共に BLOB を削除します。

version_id
str

version id パラメーターは不透明な DateTime 値であり、存在する場合は、削除する BLOB のバージョンを指定します。

バージョン 12.4.0 の新機能。

このキーワード (keyword)引数は、API バージョン '2019-12-12' で導入されました。

lease
BlobLeaseClient または str

BLOB にアクティブなリースが存在する場合は必須です。 指定した場合、delete_blobは、BLOB のリースがアクティブで、この ID と一致する場合にのみ成功します。 値には、BlobLeaseClient オブジェクトまたはリース 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 で使用する一致条件。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

timeout
int

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

の戻り値の型 :

delete_immutability_policy

[不変ポリシーの削除] 操作では、BLOB の不変ポリシーが削除されます。

バージョン 12.10.0 の新機能: この操作は API バージョン '2020-10-02' で導入されました。

async delete_immutability_policy(**kwargs: Any) -> None

パラメーター

timeout
int

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

戻り値

BLOB タグのキー値ペア。

の戻り値の型 :

download_blob

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

async download_blob(offset: int = None, length: int = None, *, encoding: str, **kwargs) -> StorageStreamDownloader[str]

パラメーター

offset
int
必須

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

length
int
必須

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

version_id
str

version id パラメーターは不透明な DateTime 値であり、存在する場合は、ダウンロードする BLOB のバージョンを指定します。

バージョン 12.4.0 の新機能。

このキーワード (keyword)引数は、API バージョン '2019-12-12' で導入されました。

validate_content
bool

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

lease
BlobLeaseClient または str

BLOB にアクティブなリースが存在する場合は必須です。 指定した場合、download_blobは BLOB のリースがアクティブで、この ID と一致する場合にのみ成功します。 値には、BlobLeaseClient オブジェクトまたはリース 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 で使用する一致条件。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

cpk
CustomerProvidedEncryptionKey

指定したキーを使用してサービス側のデータを暗号化します。 顧客が指定したキーの使用は HTTPS 経由で行う必要があります。 暗号化キー自体が要求で提供されるため、キーを転送するにはセキュリティで保護された接続を確立する必要があります。

max_concurrency
int

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

encoding
str

ダウンロードしたバイトをデコードするエンコード。 既定値は None、つまりデコードなしです。

progress_hook
Callable[[int, int], Awaitable[None]]

実行時間の長いダウンロードの進行状況を追跡するための非同期コールバック。 シグネチャは function(current: int, total: int) です。current はこれまでに転送されたバイト数で、total はダウンロードの合計サイズです。

timeout
int

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

戻り値

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

の戻り値の型 :

exists

定義されたパラメーターを持つ BLOB が存在する場合は True を返し、それ以外の場合は False を返します。

async exists(**kwargs: Any) -> bool

パラメーター

version_id
str

version id パラメーターは不透明な DateTime 値であり、存在する場合は、チェックする BLOB のバージョンを指定します。

timeout
int

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

戻り値

ブール値

の戻り値の型 :

from_blob_url

BLOB URL から BlobClient を作成します。 これは、BLOB 名に '/' を含むカスタマイズされた BLOB URL をサポートしていません。

from_blob_url(blob_url: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, snapshot: str | Dict[str, Any] | None = None, **kwargs: Any) -> Self

パラメーター

blob_url
str
必須

BLOB への完全なエンドポイント URL (SAS トークンと使用した場合スナップショットを含む)。 これは、現在の location_modeに応じて、プライマリ エンドポイントまたはセカンダリ エンドポイントのいずれかになります。

credential
Optional[Union[str, Dict[str, str], <xref:"AzureNamedKeyCredential">, <xref:"AzureSasCredential">, <xref:"TokenCredential">]] <xref:./>
既定値: None

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

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

操作対象の省略可能な BLOB スナップショット。 これは、スナップショット ID 文字列、または からcreate_snapshot返される応答です。 指定すると、URL 内のスナップショットがオーバーライドされます。

version_id
str

version id パラメーターは不透明な DateTime 値であり、存在する場合は、操作する BLOB のバージョンを指定します。

戻り値

BLOB クライアント。

の戻り値の型 :

from_connection_string

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

from_connection_string(conn_str: str, container_name: str, blob_name: str, snapshot: str | Dict[str, Any] | None = None, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any) -> Self

パラメーター

conn_str
str
必須

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

container_name
str
必須

BLOB のコンテナー名。

blob_name
str
必須

対話する BLOB の名前。

snapshot
str
既定値: None

操作対象の省略可能な BLOB スナップショット。 これは、スナップショット ID 文字列、または からcreate_snapshot返される応答です。

credential
Optional[Union[str, Dict[str, str], <xref:"AzureNamedKeyCredential">, <xref:"AzureSasCredential">, <xref:"TokenCredential">]] <xref:./>
既定値: None

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

version_id
str

version id パラメーターは不透明な DateTime 値であり、存在する場合は、操作する BLOB のバージョンを指定します。

戻り値

BLOB クライアント。

の戻り値の型 :

get_account_information

BLOB が存在するストレージ アカウントに関連する情報を取得します。

ユーザーがコンテナーまたは BLOB への SAS を持っている場合も、情報を取得できます。 返されるディクショナリのキーには、'sku_name' と 'account_kind' が含まれます。

async get_account_information(**kwargs: int | None) -> Dict[str, str]

戻り値

アカウント情報 (SKU とアカウントの種類) のディクテーション。

の戻り値の型 :

get_blob_properties

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

async get_blob_properties(**kwargs: Any) -> BlobProperties

パラメーター

lease
BlobLeaseClient または str

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

version_id
str

version id パラメーターは不透明な DateTime 値であり、存在する場合は、プロパティを取得する BLOB のバージョンを指定します。

バージョン 12.4.0 の新機能。

このキーワード (keyword)引数は、API バージョン '2019-12-12' で導入されました。

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 で使用する一致条件。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

cpk
CustomerProvidedEncryptionKey

指定されたキーを使用して、サービス側のデータを暗号化します。 お客様から提供されたキーの使用は、HTTPS 経由で行う必要があります。 暗号化キー自体が要求で提供されるため、キーを転送するにはセキュリティで保護された接続を確立する必要があります。

timeout
int

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

戻り値

BlobProperties

の戻り値の型 :

get_blob_tags

タグの取得操作を使用すると、ユーザーは BLOB または特定の BLOB バージョンのタグを取得できますが、スナップショットは取得できません。

バージョン 12.4.0 の新機能: この操作は API バージョン '2019-12-12' で導入されました。

async get_blob_tags(**kwargs: Any) -> Dict[str, str]

パラメーター

version_id
str

version id パラメーターは不透明な DateTime 値であり、存在する場合はタグを追加する BLOB のバージョンを指定します。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

lease
BlobLeaseClient または str

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

timeout
int

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

戻り値

BLOB タグのキー値ペア。

の戻り値の型 :

get_block_list

ブロック リストの取得操作では、ブロック BLOB の一部としてアップロードされたブロックの一覧が取得されます。

async get_block_list(block_list_type: str | None = 'committed', **kwargs: Any) -> Tuple[List[BlobBlock], List[BlobBlock]]

パラメーター

block_list_type
str
必須

コミット後のブロックの一覧、コミット前のブロック一覧、または両方の一覧のいずれを返すかを指定します。 使用可能な値は、'committed'、'uncommitted'、'all' です。

lease
BlobLeaseClient または str

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

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

timeout
int

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

戻り値

コミット済みブロックとコミットされていないブロックの 2 つのリストのタプル

の戻り値の型 :

get_page_range_diff_for_managed_disk

マネージド ディスクまたはスナップショットの有効なページ範囲の一覧を返します。

注意

この操作は、マネージド ディスク アカウントでのみ使用できます。

バージョン 12.2.0 の新機能: この操作は API バージョン '2019-07-07' で導入されました。

async get_page_range_diff_for_managed_disk(previous_snapshot_url: str, offset: int | None = None, length: int | None = None, **kwargs) -> Tuple[List[Dict[str, int]], List[Dict[str, int]]]

パラメーター

previous_snapshot_url
必須

マネージド ディスクの以前のスナップショットの URL を指定します。 応答には、ターゲット BLOB とその前のスナップショットの間で変更されたページのみが含まれます。

offset
int
必須

有効なページ範囲を取得するために使用するバイト範囲の先頭。 長さが指定されていない場合は、オフセットの後にあるすべてのバイトが検索されます。 ページは 512 バイトの境界に揃え、開始オフセットは 512 の剰余で、長さは 512 の剰余である必要があります。

length
int
必須

有効なページ範囲を取得するために使用するバイト数。 length を指定する場合は、offset を指定する必要があります。 この範囲は、オフセット開始から指定した長さまでの有効なページ範囲を返します。 ページは 512 バイトの境界に揃え、開始オフセットは 512 の剰余で、長さは 512 の剰余である必要があります。

lease
BlobLeaseClient または str

BLOB にアクティブなリースが存在する場合は必須です。 値には、BlobLeaseClient オブジェクトまたはリース 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 を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください

戻り値

'start' キーと 'end' キーを持つディクショナリとしてのページ範囲の 2 つのリストのタプル。 最初の要素はページ範囲に塗りつぶされ、2 番目の要素はページ範囲をクリアします。

の戻り値の型 :

get_page_ranges

非推奨: ページ BLOB またはページ BLOB のスナップショットの有効なページ範囲の一覧を返します。

async get_page_ranges(offset: int | None = None, length: int | None = None, previous_snapshot_diff: str | Dict[str, Any] | None = None, **kwargs) -> Tuple[List[Dict[str, int]], List[Dict[str, int]]]

パラメーター

offset
int
必須

有効なページ範囲を取得するために使用するバイト範囲の先頭。 長さが指定されていない場合は、オフセットの後にあるすべてのバイトが検索されます。 ページは 512 バイトの境界に揃え、開始オフセットは 512 の剰余で、長さは 512 の剰余である必要があります。

length
int
必須

有効なページ範囲を取得するために使用するバイト数。 length を指定する場合は、offset を指定する必要があります。 この範囲は、オフセット開始から指定した長さまでの有効なページ範囲を返します。 ページは 512 バイトの境界に揃え、開始オフセットは 512 の剰余で、長さは 512 の剰余である必要があります。

previous_snapshot_diff
str
必須

より新しいスナップショットまたは現在の BLOB と比較する前の BLOB スナップショットを指定する不透明な DateTime 値を含む スナップショット diff パラメーター。

lease
BlobLeaseClient または str

BLOB にアクティブなリースが存在する場合は必須です。 値には、BlobLeaseClient オブジェクトまたはリース 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 で使用する一致条件。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

timeout
int

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

戻り値

'start' キーと 'end' キーを持つディクショナリとしてのページ範囲の 2 つのリストのタプル。 最初の要素はページ範囲に塗りつぶされ、2 番目の要素はページ範囲をクリアします。

の戻り値の型 :

list_page_ranges

ページ BLOB またはページ BLOB のスナップショットの有効なページ範囲の一覧を返します。 previous_snapshotが指定されている場合、結果はターゲット BLOB と前のスナップショットの間の変更のdiffになります。

list_page_ranges(*, offset: int | None = None, length: int | None = None, previous_snapshot: str | Dict[str, Any] | None = None, **kwargs: Any) -> AsyncItemPaged[PageRange]

パラメーター

offset
int

有効なページ範囲を取得するために使用するバイト範囲の先頭。 長さが指定されていない場合は、オフセットの後にあるすべてのバイトが検索されます。 ページは 512 バイトの境界に揃え、開始オフセットは 512 の剰余で、長さは 512 の剰余である必要があります。

length
int

有効なページ範囲を取得するために使用するバイト数。 length を指定する場合は、offset を指定する必要があります。 この範囲は、オフセット開始から指定した長さまでの有効なページ範囲を返します。 ページは 512 バイトの境界に揃え、開始オフセットは 512 の剰余で、長さは 512 の剰余である必要があります。

previous_snapshot
str または Dict[str, Any]

ターゲット BLOB と以前のスナップショットの間で変更されたページのみが応答に含まれることを指定するスナップショット値。 変更されたページには、更新されたページとクリアされたページの両方が含まれます。 ターゲット BLOB は、previous_snapshot によって指定されたスナップショットが 2 つのうち古い場合に限り、スナップショットにすることができます。

lease
BlobLeaseClient または str

BLOB にアクティブなリースが存在する場合は必須です。 値には、BlobLeaseClient オブジェクトまたはリース 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 で使用する一致条件。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

results_per_page
int

API 呼び出しごとに取得するページ範囲の最大数。

timeout
int

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

戻り値

PageRange の iterable (自動ページング) です。

の戻り値の型 :

query_blob

ユーザーが単純なクエリ式を指定して、BLOB または BLOB スナップショット データの選択/プロジェクトを実行できるようにします。 この操作は BlobQueryReader を返します。ユーザーは readall() または readinto() を使用してクエリ データを取得する必要があります。

query_blob(query_expression: str, **kwargs: Any) -> BlobQueryReader

パラメーター

query_expression
str
必須

必須。 クエリ ステートメント。 詳細については、 https://learn.microsoft.com/azure/storage/blobs/query-acceleration-sql-reference を参照してください。

on_error
Callable[BlobQueryError]

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

blob_format
DelimitedTextDialect または DelimitedJsonDialect または QuickQueryDialect または str

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

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

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

lease
BlobLeaseClient または str

BLOB にアクティブなリースが存在する場合は必須です。 値には、BlobLeaseClient オブジェクトまたはリース 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 で使用する一致条件。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

cpk
CustomerProvidedEncryptionKey

指定したキーを使用してサービス側のデータを暗号化します。 顧客が指定したキーの使用は HTTPS 経由で行う必要があります。 暗号化キー自体が要求で提供されるため、キーを転送するにはセキュリティで保護された接続を確立する必要があります。

timeout
int

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

戻り値

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

の戻り値の型 :

resize_blob

ページ BLOB のサイズを指定したサイズに変更します。

指定した値が現在の BLOB のサイズより小さい場合、指定した値を超えるすべてのページはクリアされます。

async resize_blob(size: int, **kwargs: Any) -> Dict[str, str | datetime]

パラメーター

size
int
必須

BLOB のサイズ変更に使用されるサイズ。 ページ BLOB の最大サイズは最大 1 TB です。 ページ BLOB のサイズは 512 バイトの境界に合わせて指定する必要があります。

lease
BlobLeaseClient または str

BLOB にアクティブなリースが存在する場合は必須です。 値には、BlobLeaseClient オブジェクトまたはリース 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 で使用する一致条件。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

premium_page_blob_tier
PremiumPageBlobTier

BLOB を設定するページ BLOB 層の値。 層は、BLOB のサイズと許可される IOPS の数に関連付けます。 これは、Premium Storage アカウントのページ BLOB にのみ適用されます。

timeout
int

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

戻り値

BLOB で更新されたプロパティの dict (Etag と最終変更)。

の戻り値の型 :

seal_append_blob

Seal 操作では、追加 BLOB が読み取り専用になるようにシールされます。

バージョン 12.4.0 の新機能。

async seal_append_blob(**kwargs) -> Dict[str, str | datetime | int]

パラメーター

appendpos_condition
int

オプションの条件付きヘッダー。追加ブロック操作にのみ使用されます。 比較するバイト オフセットを示す数値。 Append Block は、追加位置がこの数値と等しい場合にのみ成功します。 そうでない場合、要求は AppendPositionConditionNotMet エラーで失敗します (HTTP 状態コード 412 - 前提条件が失敗しました)。

lease
BlobLeaseClient または str

BLOB にアクティブなリースが存在する場合は必須です。 値には、BlobLeaseClient オブジェクトまたはリース 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 を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください

戻り値

BLOB 更新プロパティの dict (Etag、最終変更、追加オフセット、コミットされたブロック数)。

の戻り値の型 :

set_blob_metadata

BLOB のユーザー定義メタデータを 1 つ以上の名前と値のペアとして設定します。

async set_blob_metadata(metadata: Dict[str, str] | None = None, **kwargs: Any) -> Dict[str, str | datetime]

パラメーター

metadata
dict(str, str)
必須

名前と値のペアを含むディクテーション。 この操作を呼び出すと、その都度、BLOB に関連付けられている既存のメタデータがすべて置き換えられます。 すべてのメタデータを BLOB から削除するには、この操作をメタデータ ヘッダーなしで呼び出します。

lease
BlobLeaseClient または str

BLOB にアクティブなリースが存在する場合は必須です。 値には、BlobLeaseClient オブジェクト、または文字列としてのリース 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 で使用する一致条件。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

cpk
CustomerProvidedEncryptionKey

指定されたキーを使用して、サービス側のデータを暗号化します。 お客様から提供されたキーの使用は、HTTPS 経由で行う必要があります。 暗号化キー自体が要求で提供されるため、キーを転送するにはセキュリティで保護された接続を確立する必要があります。

encryption_scope
str

サービス上のデータを暗号化するために使用される定義済みの暗号化スコープ。 暗号化スコープは、Management API を使用して作成し、ここで名前で参照できます。 コンテナーで既定の暗号化スコープが定義されている場合、コンテナー レベルのスコープがオーバーライドを許可するように構成されている場合、この値によってオーバーライドされます。 そうしないと、エラーが発生します。

バージョン 12.2.0 の新機能。

timeout
int

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

戻り値

BLOB で更新されたプロパティの dict (Etag と最終更新日)

set_blob_tags

[タグの設定] 操作を使用すると、ユーザーは BLOB または特定の BLOB バージョンにタグを設定できますが、スナップショットすることはできません。 この操作を呼び出すたびに、BLOB にアタッチされているすべての既存のタグが置き換えられます。 BLOB からすべてのタグを削除するには、タグが設定されていない状態でこの操作を呼び出します。

バージョン 12.4.0 の新機能: この操作は API バージョン '2019-12-12' で導入されました。

async set_blob_tags(tags: Dict[str, str] | None = None, **kwargs: Any) -> Dict[str, Any]

パラメーター

tags
dict(str, str)
必須

タグとして BLOB に関連付けられている名前と値のペア。 タグでは大文字と小文字が区別されます。 タグ セットには、最大 10 個のタグを含むことができます。 タグ キーは 1 ~ 128 文字、タグ値は 0 ~ 256 文字にする必要があります。 有効なタグ キーと値の文字には、小文字と大文字、数字 (0 から 9)、スペース ()、プラス ( >><<+)、マイナス (-)、ピリオド (.)、solidus (/)、コロン (:)、等しい (=)、アンダースコア (_) が含まれます。

version_id
str

version id パラメーターは不透明な DateTime 値です。存在する場合は、削除する BLOB のバージョンを指定します。

validate_content
bool

true の場合、タグコンテンツの MD5 ハッシュを計算します。 ストレージ サービスは、送信されたハッシュで到着したコンテンツのハッシュをチェックします。 これは主に、https (既定値) が既に検証されるため、https ではなく http を使用する場合に、ネットワーク上のビットフラグを検出する場合に重要です。 この MD5 ハッシュは BLOB と共に保存されません。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

lease
BlobLeaseClient または str

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

timeout
int

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

戻り値

BLOB で更新されたプロパティの dict (Etag と最終更新日)

の戻り値の型 :

set_http_headers

BLOB のシステム プロパティを設定します。

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

async set_http_headers(content_settings: ContentSettings | None = None, **kwargs: Any) -> None

パラメーター

content_settings
ContentSettings
必須

BLOB プロパティの設定に使用される ContentSettings オブジェクト。 コンテンツ タイプ、エンコード、言語、処理、md5、およびキャッシュ制御を設定するために使用されます。

lease
BlobLeaseClient または str

BLOB にアクティブなリースが存在する場合は必須です。 値には、BlobLeaseClient オブジェクト、または文字列としてのリース 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 で使用する一致条件。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

timeout
int

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

戻り値

BLOB で更新されたプロパティの dict (Etag と最終更新日)

の戻り値の型 :

set_immutability_policy

[不変ポリシーの設定] 操作では、BLOB に不変ポリシーを設定します。

バージョン 12.10.0 の新機能: この操作は API バージョン '2020-10-02' で導入されました。

async set_immutability_policy(immutability_policy: ImmutabilityPolicy, **kwargs: Any) -> Dict[str, str]

パラメーター

immutability_policy
ImmutabilityPolicy
必須

BLOB、BLOB スナップショット、または BLOB バージョンの不変ポリシーを指定します。

バージョン 12.10.0 の新機能: これは API バージョン '2020-10-02' で導入されました。

timeout
int

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

戻り値

BLOB タグのキー値ペア。

の戻り値の型 :

[訴訟ホールドの設定] 操作では、BLOB の訴訟ホールドが設定されます。

バージョン 12.10.0 の新機能: この操作は API バージョン '2020-10-02' で導入されました。

async set_legal_hold(legal_hold: bool, **kwargs: Any) -> Dict[str, str | datetime | bool]

パラメーター

legal_hold
bool
必須

BLOB に訴訟ホールドを設定する必要がある場合に指定します。

timeout
int

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

戻り値

BLOB タグのキー値ペア。

の戻り値の型 :

set_premium_page_blob_tier

BLOB のページ BLOB 層を設定します。 この API は、Premium アカウントのページ BLOB でのみサポートされます。

async set_premium_page_blob_tier(premium_page_blob_tier: str | PremiumPageBlobTier, **kwargs: Any) -> None

パラメーター

premium_page_blob_tier
PremiumPageBlobTier
必須

BLOB を設定するページ BLOB 層の値。 層は、BLOB のサイズと許可される IOPS の数に関連付けます。 これは、Premium Storage アカウントのページ BLOB にのみ適用されます。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

timeout
int

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

lease
BlobLeaseClient または str

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

の戻り値の型 :

set_sequence_number

BLOB シーケンス番号を設定します。

async set_sequence_number(sequence_number_action: str | SequenceNumberAction, sequence_number: str | None = None, **kwargs) -> Dict[str, str | datetime]

パラメーター

sequence_number_action
str
必須

このプロパティは、サービスが BLOB のシーケンス番号を変更する方法を設定します。 詳細については、「 SequenceNumberAction 」を参照してください。

sequence_number
str
必須

このプロパティは、BLOB のシーケンス番号を設定します。 シーケンス番号は、ユーザーが要求を追跡し、コンカレンシーの問題を管理するために使用するユーザー制御プロパティです。

lease
BlobLeaseClient または str

BLOB にアクティブなリースが存在する場合は必須です。 値には、BlobLeaseClient オブジェクトまたはリース 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 で使用する一致条件。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

timeout
int

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

戻り値

BLOB で更新されたプロパティの dict (Etag と最終変更)。

の戻り値の型 :

set_standard_blob_tier

この操作により、ブロック BLOB の層が設定されます。

ブロック BLOB の層によって、ホット/クール/アーカイブ ストレージの種類が決まります。 この操作では、BLOB の ETag は更新されません。

async set_standard_blob_tier(standard_blob_tier: str | StandardBlobTier, **kwargs: Any) -> None

パラメーター

standard_blob_tier
str または StandardBlobTier
必須

BLOB に設定する層を示します。 オプションには、"ホット"、"クール"、"アーカイブ" があります。 ホット 層は、頻繁にアクセスされるデータを格納するために最適化されています。 クール ストレージ層は、アクセス頻度が低く、少なくとも 1 か月間保存されるデータを格納するために最適化されています。 アーカイブ層は、アクセスされることはほとんどなく、少なくとも 6 か月間保存されるデータを格納するために最適化されており、柔軟な待機時間の要件があります。

rehydrate_priority
RehydratePriority

アーカイブされた BLOB をリハイドレートする優先度を示します

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

timeout
int

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

lease
BlobLeaseClient または str

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

の戻り値の型 :

stage_block

コミットする新しいブロックを BLOB の一部として作成します。

async stage_block(block_id: str, data: Iterable | IO, length: int | None = None, **kwargs) -> None

パラメーター

block_id
str
必須

ブロックを識別する文字列値。 文字列のサイズは 64 バイト以下にする必要があります。 特定の BLOB の場合、block_idはブロックごとに同じサイズである必要があります。

data
必須

BLOB データ。

length
int
必須

ブロックのサイズ。

validate_content
bool

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

lease
BlobLeaseClient または str

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

encoding
str

既定値は UTF-8 です。

cpk
CustomerProvidedEncryptionKey

指定したキーを使用してサービス側のデータを暗号化します。 顧客が指定したキーの使用は HTTPS 経由で行う必要があります。 暗号化キー自体が要求で提供されるため、キーを転送するにはセキュリティで保護された接続を確立する必要があります。

encryption_scope
str

サービス上のデータを暗号化するために使用される定義済みの暗号化スコープ。 暗号化スコープは、Management API を使用して作成し、ここで名前で参照できます。 コンテナーで既定の暗号化スコープが定義されている場合、コンテナー レベルのスコープがオーバーライドを許可するように構成されている場合、この値はオーバーライドされます。 それ以外の場合は、エラーが発生します。

バージョン 12.2.0 の新機能。

timeout
int

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

の戻り値の型 :

stage_block_from_url

コンテンツが URL から読み取られる BLOB の一部としてコミットされる新しいブロックを作成します。

async stage_block_from_url(block_id: str | int, source_url: str, source_offset: int | None = None, source_length: int | None = None, source_content_md5: bytes | bytearray | None = None, **kwargs) -> None

パラメーター

block_id
str
必須

ブロックを識別する文字列値。 文字列のサイズは 64 バイト以下にする必要があります。 特定の BLOB の場合、block_idはブロックごとに同じサイズである必要があります。

source_url
str
必須

URL。

source_offset
int
必須

ブロックに使用するバイト範囲の先頭。 ソースの長さが指定されている場合は、設定する必要があります。

source_length
int
必須

ブロックのサイズ (バイト単位)。

source_content_md5
bytearray
必須

コピー ソースから読み取る必要があるバイト範囲に対して計算される md5 を指定します。

lease
BlobLeaseClient または str

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

cpk
CustomerProvidedEncryptionKey

指定したキーを使用してサービス側のデータを暗号化します。 顧客が指定したキーの使用は HTTPS 経由で行う必要があります。 暗号化キー自体が要求で提供されるため、キーを転送するにはセキュリティで保護された接続を確立する必要があります。

encryption_scope
str

サービス上のデータを暗号化するために使用される定義済みの暗号化スコープ。 暗号化スコープは、Management API を使用して作成し、ここで名前で参照できます。 コンテナーで既定の暗号化スコープが定義されている場合、コンテナー レベルのスコープがオーバーライドを許可するように構成されている場合、この値はオーバーライドされます。 それ以外の場合は、エラーが発生します。

バージョン 12.2.0 の新機能。

timeout
int

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

source_authorization
str

クライアント シークレットを使用してサービス プリンシパルとして認証し、ソース BLOB にアクセスします。 "bearer" がsource_authorization文字列のプレフィックスであることを確認します。

の戻り値の型 :

start_copy_from_url

指定した URL から BLOB をコピーします。

この操作は、copy_statuscopy_idを含むディクショナリを返します。これは、コピー操作の状態をチェックまたは中止するために使用できます。 copy_status は、コピーが同期的に完了した場合は "成功"、コピーが非同期的に開始されている場合は "保留中" になります。 非同期コピーの場合、メソッドをポーリングしてコピーの状態を get_blob_properties 確認することで、状態を確認できます。 requires_syncを True に設定して、コピーを強制的に同期します。 BLOB サービスは、ベストエフォート方式で BLOB をコピーします。

コピー操作のソース BLOB は、ブロック BLOB、追加 BLOB、またはページ BLOB のいずれかです。 コピー先 BLOB が既に存在する場合、コピー元 BLOB と同じ BLOB の種類である必要があります。 既存のコピー先 BLOB はすべて上書きされます。 コピー先 BLOB は、コピー操作の進行中は変更できません。

ページ BLOB からコピーする場合、BLOB サービスは、ソース BLOB の長さのコピー先ページ BLOB を作成し、最初はすべてのゼロを含みます。 その後、コピー元ページの範囲が列挙され、空以外の範囲がコピーされます。

ブロック BLOB または追加 BLOB の場合、BLOB サービスは、この操作から戻る前に長さが 0 のコミット済み BLOB を作成します。 ブロック BLOB からコピーすると、コミットされたすべてのブロックとそのブロック ID がコピーされます。 コミットされていないブロックはコピーされません。 コピー操作の最後に、コピー先 BLOB のコミット済みブロック数はソースと同じになります。

追加 BLOB からコピーすると、コミットされたすべてのブロックがコピーされます。 コピー操作の最後に、コピー先 BLOB のコミット済みブロック数はソースと同じになります。

async start_copy_from_url(source_url: str, metadata: Dict[str, str] | None = None, incremental_copy: bool = False, **kwargs: Any) -> Dict[str, str | datetime]

パラメーター

source_url
str
必須

ファイルまたは BLOB を指定する最大 2 KB の長さの URL。 この値は要求 URI に含まれるため、URL でエンコードされる必要があります。 ソースが別のアカウントにある場合、ソースはパブリックであるか、共有アクセス署名を介して認証される必要があります。 ソースがパブリックの場合、認証は必要ありません。 例: https://myaccount.blob.core.windows.net/mycontainer/myblob

https://myaccount.blob.core.windows.net/mycontainer/myblob?スナップショット=

https://otheraccount.blob.core.windows.net/mycontainer/myblob?sastoken

metadata
dict(str, str)
必須

BLOB にメタデータとして関連付ける名前と値のペア。 名前と値のペアが指定されていない場合、操作によって、ソース BLOB またはファイルからコピー先 BLOB にメタデータがコピーされます。 1 つ以上の名前と値のペアを指定すると、指定したメタデータを使用して宛先 BLOB が作成され、メタデータはソース BLOB またはファイルからコピーされません。

incremental_copy
bool
必須

ソース ページ BLOB のスナップショットをコピー先ページ BLOB にコピーします。 前にコピーしたスナップショット間の差分変更のみが転送先に転送されるように、スナップショットがコピーされます。 コピーされたスナップショットは、元のスナップショットの完全なコピーであり、通常どおりに読み取りまたはコピーできます。 既定値は False です。

tags
dict(str, str) または Literal["COPY"]

タグとして BLOB に関連付けられている名前と値のペア。 タグでは大文字と小文字が区別されます。 タグ セットには、最大 10 個のタグを含めることができます。 タグ キーは 1 ~ 128 文字、タグ値は 0 ~ 256 文字である必要があります。 有効なタグ キーと値の文字には、小文字と大文字、数字 (0 から 9)、スペース ()、プラス ( >><<+)、マイナス (-)、ピリオド (.)、solidus (/)、コロン (:)、等しい (=)、アンダースコア (_) が含まれます。

(大文字と小文字を区別する) リテラル "COPY" は、代わりにソース BLOB からタグをコピーするために渡すことができます。 このオプションは、 incremental_copy=False および requires_sync=True の場合にのみ使用できます。

バージョン 12.4.0 の新機能。

immutability_policy
ImmutabilityPolicy

BLOB、BLOB スナップショット、または BLOB バージョンの不変ポリシーを指定します。

バージョン 12.10.0 の新機能: これは API バージョン '2020-10-02' で導入されました。

legal_hold
bool

BLOB に訴訟ホールドを設定する必要がある場合に指定します。

バージョン 12.10.0 の新機能: これは API バージョン '2020-10-02' で導入されました。

source_if_modified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 この条件ヘッダーを指定すると、コピー元 BLOB が指定した日付/時刻以降に変更された場合にのみ BLOB がコピーされます。

source_if_unmodified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 この条件ヘッダーを指定すると、コピー元 BLOB が指定した日付/時刻以降に変更されなかった場合にのみ BLOB がコピーされます。

source_etag
str

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

source_match_condition
MatchConditions

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

if_modified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 この条件ヘッダーを指定すると、コピー先 BLOB が指定した日付/時刻以降に変更された場合にのみ BLOB がコピーされます。 コピー先 BLOB が変更されていない場合、BLOB Service はステータス コード 412 (Precondition Failed) を返します。

if_unmodified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 この条件ヘッダーを指定すると、コピー先 BLOB が指定した日付/時刻以降に変更されなかった場合にのみ BLOB がコピーされます。 コピー先 BLOB が変更されている場合、BLOB サービスはステータス コード 412 (Precondition Failed) を返します。

etag
str

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

match_condition
MatchConditions

etag で使用する宛先の一致条件。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

destination_lease
BlobLeaseClient または str

このヘッダーに指定するリース ID は、コピー先 BLOB のリース ID と一致している必要があります。 要求にリース ID が含まれていないか、リース ID が無効な場合、操作はステータス コード 412 (Precondition Failed) で失敗します。

source_lease
BlobLeaseClient または str

指定されたリース ID がソース BLOB のアクティブなリース ID と一致する場合にのみ、BLOB のコピー操作を実行するには、これを指定します。

timeout
int

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

premium_page_blob_tier
PremiumPageBlobTier

BLOB を設定するページ BLOB 層の値。 層は、BLOB のサイズと許可される IOPS の数に関連付けます。 これは、Premium Storage アカウントのページ BLOB にのみ適用されます。

standard_blob_tier
StandardBlobTier

BLOB を設定する標準 BLOB 層の値。 このバージョンのライブラリでは、これは標準ストレージ アカウントのブロック BLOB にのみ適用されます。

rehydrate_priority
RehydratePriority

アーカイブされた BLOB をリハイドレートする優先度を示します

seal_destination_blob
bool

コピー先の追加 BLOB をシールします。 この操作は、追加 BLOB に対してのみ行われます。

バージョン 12.4.0 の新機能。

requires_sync
bool

コピーが完了するまでサービスが応答を返さないことを強制します。

source_authorization
str

クライアント シークレットを使用してサービス プリンシパルとして認証し、ソース BLOB にアクセスします。 "bearer" がsource_authorization文字列のプレフィックスであることを確認します。 このオプションは、 incremental_copy が False に設定され、 requires_sync が True に設定されている場合にのみ使用できます。

バージョン 12.9.0 の新機能。

encryption_scope
str

同期コピーされた BLOB 上のデータを暗号化するために使用される定義済みの暗号化スコープ。 暗号化スコープは、Management API を使用して作成し、ここで名前で参照できます。 コンテナーで既定の暗号化スコープが定義されている場合、コンテナー レベルのスコープがオーバーライドを許可するように構成されている場合、この値はオーバーライドされます。 それ以外の場合は、エラーが発生します。

バージョン 12.10.0 の新機能。

戻り値

コピー プロパティ (etag、last_modified、copy_id、copy_status) のディクショナリ。

の戻り値の型 :

undelete_blob

論理的に削除された BLOB またはスナップショットを復元します。

操作は、削除アイテム保持ポリシーで設定された指定した日数以内に使用された場合にのみ成功します。

BLOB のバージョン管理が有効になっている場合、このメソッドを使用してベース BLOB を復元することはできません。 代わりに、現在のバージョンに昇格させる BLOB バージョンの URL と共に を使用 start_copy_from_url します。

async undelete_blob(**kwargs: Any) -> None

パラメーター

timeout
int

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

の戻り値の型 :

upload_blob

自動チャンクを使用して、データ ソースから新しい BLOB を作成します。

async upload_blob(data: bytes | str | Iterable | AsyncIterable | IO, blob_type: str | BlobType = BlobType.BLOCKBLOB, length: int | None = None, metadata: Dict[str, str] | None = None, **kwargs) -> Dict[str, Any]

パラメーター

data
必須

アップロードする BLOB データ。

blob_type
BlobType
必須

BLOB の種類。 これには、BlockBlob、PageBlob、AppendBlob のいずれかを指定できます。 既定値は BlockBlob です。

length
int
必須

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

metadata
dict(str, str)
必須

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

tags
dict(str, str)

タグとして BLOB に関連付けられている名前と値のペア。 タグでは大文字と小文字が区別されます。 タグ セットには、最大 10 個のタグを含むことができます。 タグ キーは 1 ~ 128 文字、タグ値は 0 ~ 256 文字にする必要があります。 有効なタグ キーと値の文字には、小文字と大文字、数字 (0 から 9)、スペース ()、プラス ( >><<+)、マイナス (-)、ピリオド (.)、solidus (/)、コロン (:)、等しい (=)、アンダースコア (_) が含まれます。

バージョン 12.4.0 の新機能。

overwrite
bool

アップロードする BLOB が現在のデータを上書きするかどうか。 True の場合、upload_blobは既存のデータを上書きします。 False に設定すると、ResourceExistsError で操作が失敗します。 上記の例外は、追加 BLOB の種類です。False に設定されていて、データが既に存在する場合、エラーは発生せず、データは既存の BLOB に追加されます。 overwrite=True を設定すると、既存の追加 BLOB が削除され、新しい BLOB が作成されます。 既定値は False です。

content_settings
ContentSettings

BLOB プロパティの設定に使用される ContentSettings オブジェクト。 コンテンツ タイプ、エンコード、言語、処理、md5、およびキャッシュ制御を設定するために使用されます。

validate_content
bool

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

lease

指定した場合、upload_blobは BLOB のリースがアクティブで、この ID と一致する場合にのみ成功します。 BLOB にアクティブなリースが存在する場合は必須です。

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 で使用する一致条件。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

premium_page_blob_tier
PremiumPageBlobTier

BLOB を設定するページ BLOB 層の値。 層は、BLOB のサイズと許可される IOPS の数に関連付けられる。 これは、Premium Storage アカウントのページ BLOB にのみ適用されます。

immutability_policy
ImmutabilityPolicy

BLOB、BLOB スナップショット、または BLOB バージョンの不変ポリシーを指定します。 現在、upload_blob() API のこのパラメーターは BlockBlob 専用です。

バージョン 12.10.0 の新機能: これは API バージョン '2020-10-02' で導入されました。

legal_hold
bool

BLOB に訴訟ホールドを設定する必要がある場合に指定します。 現在、upload_blob() API のこのパラメーターは BlockBlob 専用です。

バージョン 12.10.0 の新機能: これは API バージョン '2020-10-02' で導入されました。

standard_blob_tier
StandardBlobTier

BLOB を設定する標準 BLOB 層の値。 このバージョンのライブラリでは、これは Standard ストレージ アカウントのブロック BLOB にのみ適用されます。

maxsize_condition
int

オプションの条件付きヘッダー。 追加 BLOB に許可される最大長 (バイト単位)。 ブロックの追加操作によって BLOB がこの制限を超える場合、または BLOB サイズがこのヘッダーで指定された値を既に超えている場合、要求は MaxBlobSizeConditionNotMet エラー (HTTP 状態コード 412 - 前提条件失敗) で失敗します。

max_concurrency
int

BLOB サイズが 64 MB を超える場合に使用する並列接続の最大数。

cpk
CustomerProvidedEncryptionKey

指定されたキーを使用して、サービス側のデータを暗号化します。 お客様から提供されたキーの使用は、HTTPS 経由で行う必要があります。 暗号化キー自体が要求で提供されるため、キーを転送するにはセキュリティで保護された接続を確立する必要があります。

encryption_scope
str

サービス上のデータを暗号化するために使用される定義済みの暗号化スコープ。 暗号化スコープは、Management API を使用して作成し、ここで名前で参照できます。 コンテナーで既定の暗号化スコープが定義されている場合、コンテナー レベルのスコープがオーバーライドを許可するように構成されている場合、この値によってオーバーライドされます。 そうしないと、エラーが発生します。

バージョン 12.2.0 の新機能。

encoding
str

既定値は UTF-8 です。

progress_hook
Callable[[int, Optional[int]], Awaitable[None]]

実行時間の長いアップロードの進行状況を追跡するための非同期コールバック。 シグネチャは function(current: int, total: Optional[int]) です。current はこれまでに転送されたバイト数で、total は BLOB のサイズ、サイズが不明な場合は None です。

timeout
int

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

戻り値

BLOB で更新されたプロパティの dict (Etag と最終更新日)

の戻り値の型 :

upload_blob_from_url

BLOB のコンテンツが特定の URL から読み取られた新しいブロック BLOB を作成します。 既存の BLOB の内容は、新しい BLOB で上書きされます。

async upload_blob_from_url(source_url: str, **kwargs: Any) -> Dict[str, Any]

パラメーター

source_url
str
必須

ファイルまたは BLOB を指定する最大 2 KB の URL。 この値は要求 URI に含まれるため、URL でエンコードされる必要があります。 ソースが別のアカウントにある場合、ソースはパブリックであるか、共有アクセス署名を介して認証される必要があります。 ソースがパブリックの場合、認証は必要ありません。 例: https://myaccount.blob.core.windows.net/mycontainer/myblob

https://myaccount.blob.core.windows.net/mycontainer/myblob?スナップショット=

https://otheraccount.blob.core.windows.net/mycontainer/myblob?sastoken

overwrite
bool

アップロードする BLOB が現在のデータを上書きするかどうか。 True の場合、upload_blobは既存のデータを上書きします。 False に設定すると、ResourceExistsError で操作が失敗します。

include_source_blob_properties
bool

ソース BLOB のプロパティをコピーするかどうかを示します。 既定値は True です。

tags
dict(str, str)

タグとして BLOB に関連付けられている名前と値のペア。 タグでは大文字と小文字が区別されます。 タグ セットには、最大 10 個のタグを含むことができます。 タグ キーは 1 ~ 128 文字、タグ値は 0 ~ 256 文字にする必要があります。 有効なタグ キーと値の文字には、小文字と大文字、数字 (0 から 9)、スペース ()、プラス ( >><<+)、マイナス (-)、ピリオド (.)、solidus (/)、コロン (:)、等しい (=)、アンダースコア (_) が含まれます。

source_content_md5
bytearray

ソース バイトの整合性を確認するために使用する md5 を指定します。

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 で使用するソース一致条件。

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 で使用する宛先の一致条件。

destination_lease
BlobLeaseClient または str

このヘッダーに指定するリース ID は、コピー先 BLOB のリース ID と一致している必要があります。 要求にリース ID が含まれていないか、リース ID が無効な場合、操作はステータス コード 412 (Precondition Failed) で失敗します。

timeout
int

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

content_settings
ContentSettings

BLOB プロパティの設定に使用される ContentSettings オブジェクト。 コンテンツ タイプ、エンコード、言語、処理、md5、およびキャッシュ制御を設定するために使用されます。

cpk
CustomerProvidedEncryptionKey

指定されたキーを使用して、サービス側のデータを暗号化します。 お客様から提供されたキーの使用は、HTTPS 経由で行う必要があります。 暗号化キー自体が要求で提供されるため、キーを転送するにはセキュリティで保護された接続を確立する必要があります。

encryption_scope
str

サービス上のデータを暗号化するために使用される定義済みの暗号化スコープ。 暗号化スコープは、Management API を使用して作成し、ここで名前で参照できます。 コンテナーで既定の暗号化スコープが定義されている場合、コンテナー レベルのスコープがオーバーライドを許可するように構成されている場合、この値によってオーバーライドされます。 そうしないと、エラーが発生します。

standard_blob_tier
StandardBlobTier

BLOB を設定する標準 BLOB 層の値。 このバージョンのライブラリでは、これは Standard ストレージ アカウントのブロック BLOB にのみ適用されます。

source_authorization
str

クライアント シークレットを使用してサービス プリンシパルとして認証し、ソース BLOB にアクセスします。 "bearer" がsource_authorization文字列のプレフィックスであることを確認します。

upload_page

ページのアップロード操作では、ページの範囲をページ BLOB に書き込みます。

async upload_page(page: bytes, offset: int, length: int, **kwargs) -> Dict[str, str | datetime]

パラメーター

page
bytes
必須

ページの内容。

offset
int
必須

BLOB のセクションへの書き込みに使用するバイト範囲の先頭。 ページは 512 バイトの境界に揃え、開始オフセットは 512 の剰余で、長さは 512 の剰余である必要があります。

length
int
必須

BLOB のセクションへの書き込みに使用するバイト数。 ページは 512 バイトの境界に揃え、開始オフセットは 512 の剰余で、長さは 512 の剰余である必要があります。

lease
BlobLeaseClient または str

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

validate_content
bool

true の場合、ページ コンテンツの MD5 ハッシュが計算されます。 ストレージ サービスは、送信されたハッシュで到着したコンテンツのハッシュをチェックします。 これは主に、https (既定値) が既に検証されるため、https ではなく http を使用する場合に、ネットワーク上のビットフラグを検出する場合に重要です。 この MD5 ハッシュは BLOB と共に保存されません。

if_sequence_number_lte
int

BLOB のシーケンス番号が指定された値以下の場合、要求は続行されます。それ以外の場合は失敗します。

if_sequence_number_lt
int

BLOB のシーケンス番号が指定された値より小さい場合、要求は続行されます。それ以外の場合は失敗します。

if_sequence_number_eq
int

BLOB のシーケンス番号が指定した値と等しい場合、要求は続行されます。それ以外の場合は失敗します。

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 で使用する一致条件。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

cpk
CustomerProvidedEncryptionKey

指定されたキーを使用して、サービス側のデータを暗号化します。 お客様から提供されたキーの使用は、HTTPS 経由で行う必要があります。 暗号化キー自体が要求で提供されるため、キーを転送するにはセキュリティで保護された接続を確立する必要があります。

encryption_scope
str

サービス上のデータを暗号化するために使用される定義済みの暗号化スコープ。 暗号化スコープは、Management API を使用して作成し、ここで名前で参照できます。 コンテナーで既定の暗号化スコープが定義されている場合、コンテナー レベルのスコープがオーバーライドを許可するように構成されている場合、この値はオーバーライドされます。 それ以外の場合は、エラーが発生します。

バージョン 12.2.0 の新機能。

encoding
str

既定値は UTF-8 です。

timeout
int

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

戻り値

BLOB で更新されたプロパティの dict (Etag と最終変更)。

の戻り値の型 :

upload_pages_from_url

ページのアップロード操作では、ページの範囲を URL から読み取るページ BLOB に書き込みます。

async upload_pages_from_url(source_url: str, offset: int, length: int, source_offset: int, **kwargs) -> Dict[str, Any]

パラメーター

source_url
str
必須

ソース データの URL。 パブリックまたは共有アクセス署名がアタッチされている任意の Azure BLOB またはファイルを指すことができます。

offset
int
必須

BLOB のセクションへの書き込みに使用するバイト範囲の先頭。 ページは 512 バイトの境界に揃え、開始オフセットは 512 の剰余で、長さは 512 の剰余である必要があります。

length
int
必須

BLOB のセクションへの書き込みに使用するバイト数。 ページは 512 バイトの境界に揃え、開始オフセットは 512 の剰余で、長さは 512 の剰余である必要があります。

source_offset
int
必須

これは、コピー ソースから取得する必要があるバイト範囲の開始を示します。 サービスは、宛先範囲 (長さオフセット) と同じバイト数を読み取ります。

source_content_md5
bytes

指定した場合、サービスはブロック コンテンツの MD5 ハッシュを計算し、この値と比較します。

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 で使用するソース一致条件。

lease
BlobLeaseClient または str

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

if_sequence_number_lte
int

BLOB のシーケンス番号が指定した値以下の場合、要求は続行されます。それ以外の場合は失敗します。

if_sequence_number_lt
int

BLOB のシーケンス番号が指定された値より小さい場合、要求は続行されます。それ以外の場合は失敗します。

if_sequence_number_eq
int

BLOB のシーケンス番号が指定した値と等しい場合、要求は続行されます。それ以外の場合は失敗します。

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 で使用する宛先の一致条件。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

cpk
CustomerProvidedEncryptionKey

指定したキーを使用してサービス側のデータを暗号化します。 顧客が指定したキーの使用は HTTPS 経由で行う必要があります。 暗号化キー自体が要求で提供されるため、キーを転送するにはセキュリティで保護された接続を確立する必要があります。

encryption_scope
str

サービス上のデータを暗号化するために使用される定義済みの暗号化スコープ。 暗号化スコープは、Management API を使用して作成し、ここで名前で参照できます。 コンテナーで既定の暗号化スコープが定義されている場合、コンテナー レベルのスコープがオーバーライドを許可するように構成されている場合、この値はオーバーライドされます。 それ以外の場合は、エラーが発生します。

バージョン 12.2.0 の新機能。

timeout
int

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

source_authorization
str

クライアント シークレットを使用してサービス プリンシパルとして認証し、ソース BLOB にアクセスします。 "bearer" がsource_authorization文字列のプレフィックスであることを確認します。

属性

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