AzCopyについては、MSエヴァの佐々木さんのBlog「azcopy – BLOB へファイルをやったり取ったり」や自分の過去の投稿「AzCopy–Windows Azure Blob用のファイルアップロード・ダウンロードツールがリリース」で紹介しています。
今回の投稿は、Windows Azure Storage Team Blogに投稿されたCTP2のリリースを知らせる「AzCopy – Using Cross Account Copy Blob」をざっくり意訳した投稿です。
AzCopy CTP2は、ここからダウンロードできます。参考用にAzCopy CTP1について説明したブログはここ(英語)です。
CTP2で追加された新機能
- アカウント間のBlobのコピーをサポートしました。
AzCopyは同一ストレージアカウント間、異なるストレージアカウント間のBlobコピーを可能にします(アカウント間のBlobコピーの詳細については、このBlog(英語)を参照してください)。アカウントから別のアカウントへBlobを移動する際のコストと時間を効率的にします。ストレージサービスがデータ転送を実施するので、あなたが転送元からBlobをダウンロードし、転送先にアップロードする必要はありません。
/Z を使用して、再開可能モードで転送することができます。 - /MOV を追加しました。
このオプションは、コピー後、転送元から移動したファイルを削除します。 - /NC を追加しました。
ネットワーク並列度を指定することができます。デフォルトでは、ローカルコンピューターからWindows Azure Storageにファイルをアップロードするとき、AzCopyは並列タスクを実行するためにコンピューターがもっているコア数の8倍をネットワーク並列処理に使用します。たとえば、4コアのPCの場合、AzCopyは32個のネットワーク並列処理を実行します。CPUやネットワーク帯域使用量を制限したい場合は、/NCを使用して制限することができます。
この値は、絶対値を指定するもので、コアごとの使用数を指定するものではありません。上の例で半分にしたい場合は、/NC:16 を指定します。 - /SNAPSHOT を追加しました。
スナップショットでBlobを転送できるようにします。
AzCopy CTP1では、デフォルトでBlobのスナップショットを転送していました。今回のバージョンからは、Blobをコピーしている間、AzCopyはスナップショットを転送しません。
/SNAPSHOTオプションを指定した場合のみ、AzCopyはBlobのスナップショットをすべて転送します。しかし、転送先ではオリジナルのBlobのスナップショットの代わりに複数のBlboに分かれています。転送されたBlobのスナップショットは次のような名前に変更されます。[blob名](スナップショット日時)[拡張子]。
たとえば、転送しようとしたrename.txtファイルが3回スナップショットされていた場合、転送先では次のようなファイル名で格納されます。readme (2013-02-25 080757).txt / readme (2012-12-23 120657).txt / readme (2012-09-12 090521).txt - /@:response-file: を追加しました。
ファイルにパラメーターを格納し、コマンドラインで指定した場合、AzCopyによって実行されます。パラメーターファイルは、1パラメーターにつき1行で記載し、複数行記載することができます。
使用例
異なるストレージアカウントへのコピー
AzCopy https://<sourceaccount>.blob.core.windows.net/<sourcecontainer>/ https://<destaccount>.blob.core.windows.net/<destcontainer>/ /sourcekey:<key> /destkey:<key> /S
スナップショットをコピーする場合
AzCopy https://<sourceaccount>.blob.core.windows.net/<sourcecontainer>/ https://<destaccount>.blob.core.windows.net/<destcontainer>/ /sourcekey:<key> /destkey:<key> /S /SNAPSHOT
コピー元からファイルを消したい場合
AzCopy https://<sourceaccount>.blob.core.windows.net/<sourcecontainer>/ https://<destaccount>.blob.core.windows.net/<destcontainer>/ /sourcekey:<key> /destkey:<key> /MOV /S
次のような応答ファイル「myAzCopy.txt」を作成し、実行する場合。
#URI of Source Container
https://<sourceaccount>.blob.core.windows.net/<sourcecontainer>/
#URI of Destination Container
https://<destaccount>.blob.core.windows.net/<destcontainer>/
AzCopy /@:C:\myAzCopy.txt /sourcekey:<key> /destkey:<key> /MOV /S
あああ