5

あるストレージ アカウントから別のストレージ アカウントにいくつかの BLOB ファイルをコピーしようとしています。この目標を達成するために、AzCopy を使用しています。

このプロセスは、同じストレージ アカウント内のコンテナー間でファイルをコピーする場合には機能しますが、異なるストレージ アカウント間では機能しません。

私が発行しているコマンドは次のとおりです。

AzCopy /Source:https://<storage_account1>.blob.core.windows.net/<container_name1>/<path_to_desired_blobs> /Dest:https://<storage_account2>.blob.core.windows.net/<container_name2>/<path_to_store>/ /SourceKey:<source_key> /DestKey:<dest_key> /Pattern:<some_pattern> /S

私が得ているエラーは次のとおりです。

リモート サーバーがエラーを返しました: (400) 不正な要求。

指定時間内にコピー元を確認できませんでした。

リクエストID:

時間:2016-04-01T19:33:01.0527460Z

2 つのストレージ アカウントの唯一の違いは、一方がStandardで、もう一方がPremiumであることです。

どんな助けでも大歓迎です!

4

3 に答える 3

2

説明から、ブロック BLOB をコピー元アカウントからコピー先アカウントのページ BLOB にコピーしようとしていますが、これは Azure Storage Service と AzCopy ではサポートされていません。

これを回避するには、最初に AzCopy を使用してソース アカウントからローカル ファイル システムにブロック BLOB をダウンロードし、次にオプション /BlobType:Page を使用してローカル ファイル システムから宛先アカウントにアップロードします (このオプションは、ローカルからアップロードする場合にのみ有効です)。ブロブに)。

于 2016-04-04T01:53:05.117 に答える
1

Premium Storage は、ページ BLOB のみをサポートします。標準ストレージ アカウントからプレミアム ストレージ アカウントにページ BLOB をコピーしていることを確認してください。また、BlobType パラメーターを "page" に指定して、データをページ BLOB としてコピー先の Premium Storage アカウントにコピーします。

于 2016-04-01T23:47:52.537 に答える
0

説明から、ソース BLOB がブロック BLOB であると想定しています。Azure の "Async Copy Blob" プロセス (AzCopy で既定の方法として使用される) では、BLOB の種類が保持されます。つまり、非同期コピー BLOB を使用して BLOB 型をブロックからページに変換することはできません。

代わりに、"/SyncCopy" オプションと "/BlobType:page" パラメーターを指定して、AzCopy を再試行できますか? これは、宛先 BLOB の種類をページに変更するのに役立つ場合があります。

(それがうまくいかない場合、最初に BLOB をダウンロードしてから "/BlobType:page" でアップロードするという他の解決策しかありません)

于 2016-04-02T21:59:42.153 に答える