Go を使用して BLOB をコピーする
この記事では、Go 用 Azure Storage クライアント ライブラリを使ったコピー操作の概要について説明します。
コピー操作について
コピー操作を使用して、ストレージ アカウント内で、ストレージ アカウント間で、または Azure 外部のソースからストレージ アカウントにデータを移動できます。 Blob Storage クライアント ライブラリを使用してデータ リソースをコピーする場合は、クライアント ライブラリ メソッドの背後での REST API 操作を理解することが重要です。 次の表に、ストレージ アカウントにデータ リソースをコピーするために使用できる REST API 操作を一覧表示します。 この表には、Go 用 Azure Storage クライアント モジュールを使ってこれらの操作を実行する方法に関する詳細なガイダンスへのリンクも含まれています。
REST API の操作 | 使用する場合 | クライアント ライブラリ メソッド | ガイダンス |
---|---|---|---|
Put Blob From URL | この操作は、ストレージ アカウントにデータを移動する必要があり、ソース オブジェクトの URL がわかっているシナリオに適しています。 この操作は同期的に完了します。 | UploadBlobFromURL | Go を使ってソース オブジェクト URL から BLOB をコピーする |
Put Block From URL | ラージ オブジェクトの場合は、Put Block From URL を使用して Blob Storage に個々のブロックを書き込んでから、Put Block List を呼び出してブロック BLOB にそれらのブロックをコミットできます。 この操作は同期的に完了します。 | StageBlockFromURL | Go を使ってソース オブジェクト URL から BLOB をコピーする |
Copy Blob | この操作は、コピー操作の非同期スケジュールが必要な場合に使用できます。 | StartCopyFromURL | Go を使って非同期スケジュールで BLOB をコピーする |
追加 BLOB の場合は、Append Block From URL 操作を使用して、データの新しいブロックを既存の追加 BLOB の末尾にコミットできます。 次のクライアント ライブラリ メソッドにはこの操作がラップされています。
ページ BLOB の場合、Put Page From URL 操作を使用して、コンテンツが URL から読み取られているページ BLOB に一定範囲のページを書き込むことができます。 次のクライアント ライブラリ メソッドにはこの操作がラップされています。