azcopy bench

指定したコピー先との間でテスト データをアップロードまたはダウンロードすることで、パフォーマンス ベンチマークを実行します。 アップロードの場合、テスト データは自動的に生成されます。

ベンチマーク コマンドでは、以下を除き、"copy" と同じプロセスが実行されます。

  • コピー元とコピー先の両方のパラメーターを必要とするのではなく、ベンチマークでは 1 つだけを受け取ります。 これは、アップロード先またはダウンロード元にする BLOB コンテナー、Azure Files 共有、または Azure Data Lake Storage Gen2 ファイル システムです。

  • "mode" パラメーターは、指定されたターゲットに対して AzCopy がアップロードとダウンロードのどちらをテストする必要があるかを示します。 有効な値は、"Upload" と "Download" です。 既定値は "Upload" です。

  • アップロード ベンチマークの場合、ペイロードは、自動生成されるファイルの数とサイズを制御するコマンド ライン パラメーターによって記述されます。 生成プロセスは、すべてメモリ内で行われます。 ディスクは使用されません。

  • ダウンロードの場合、ペイロードは、ダウンロード元に既に存在するいずれかのファイルで構成されます。 (必要な場合は、テスト ファイルを生成する方法に関する下記の例を参照してください)。

  • copy コマンドで使用できるオプションのパラメーターの一部のみがサポートされています。

  • 追加の診断が測定および報告されます。

  • アップロードの場合、既定の動作では、テスト実行の最後に、転送されたデータが削除されます。 ダウンロードの場合、データは実際にはローカルに一切保存されません。

ベンチマーク モードは、最大スループットを提供する並列 TCP 接続の数に自動的に調整されます。 最後にその数値が表示されます。 自動チューニングを行わないようにするには、COPY_CONCURRENCY_VALUE 環境変数を特定の数の接続に設定します。

一般的な認証の種類がすべてサポートされています。 ただし、アップロードのベンチマークを行う最も便利な方法は、一般に、SAS トークンを指定して空のコンテナーを作成し、SAS 認証を使用することです。 (ダウンロード モードでは、テスト データのセットがターゲット コンテナーに存在する必要があります。)

azcopy bench [destination] [flags]

既定のパラメーターを使用してアップロード ベンチマークを実行します (最大 1 Gbps のネットワークのベンチマークに適しています)。

azcopy bench "https://[account].blob.core.windows.net/[container]?<SAS>"

指定したブロック サイズが 2 MiB のアップロード ベンチマークを実行し、転送後のファイルの長さをチェックします。

azcopy bench "https://[account].blob.core.windows.net/[container]?<SAS>" --block-size-mb 2 --check-length

500 個のファイルをアップロードするベンチマーク テストを実行します。 各ファイルのサイズは 500 MiB で、ログ レベルはエラーのみを表示するように設定されています。

azcopy bench "https://[account].blob.core.windows.net/[container]?<SAS>" --file-count 500 --size-per-file 500M --log-level ERROR

100 個のファイルをアップロードするベンチマーク テストを実行します。 各ファイルのサイズは 2 GiB です。 これは、高速ネットワーク (10 Gbps など) でのベンチマークに適しています。

azcopy bench "https://[account].blob.core.windows.net/[container]?<SAS>" --file-count 100 --size-per-file 2G

次の例は上記と同じですが、50,000 個のファイルがあります。 各ファイルのサイズは 8 MiB です。 この例では、azcopy copy コマンドで --put-md5 フラグが MD5 を計算する方法と同様に、各ファイルの MD5 ハッシュも計算します。 ベンチマーク時の --put-md5 の目的は、MD5 計算が選択したファイル数とサイズのスループットに影響するかどうかをテストすることです。

azcopy bench --mode='Upload' "https://[account].blob.core.windows.net/[container]?<SAS>" --file-count 50000 --size-per-file 8M --put-md5

1000 個のファイルをアップロードし、データを分割するフォルダーを作成するベンチマーク テストを実行します。 各ファイルのサイズは 100 KiB です。

azcopy bench "https://[account].blob.core.windows.net/[container]?<SAS>" --file-count 1000 --size-per-file 100K --number-of-folders 5

ターゲットから既存のファイルをダウンロードするベンチマーク テストを実行します。

azcopy bench --mode='Download' "https://[account].blob.core.windows.net/[container]?<SAS?"

既定のパラメーターでダウンロード ベンチマークを実行し、転送速度を 500 Mbps に制限します。

azcopy bench --mode=Download "https://[account].blob.core.windows.net/[container]?<SAS>" --cap-mbps 500

転送されたファイルを削除しないアップロードを実行します。 これらのファイルは、ダウンロード テストのペイロードとして機能します。

azcopy bench "https://[account].blob.core.windows.net/[container]?<SAS>" --file-count 100 --delete-test-data=false

[オプション]

--blob-type string コピー先の BLOB の種類を定義します。 さまざまな種類の BLOB のベンチマークを許可するために使用されます。 copy コマンドの同一の名前のパラメーターと同じです (既定値は "Detect")

--block-size-mb float このブロック サイズ (MiB で指定) を使用します。 既定値は、ファイル サイズに基づいて自動的に計算されます。 小数を使用できます (例: 0.25)。 copy コマンドの同一の名前のパラメーターと同じです

--check-length 転送後にコピー先のファイルの長さを確認します。 コピー元とコピー先の間に不一致がある場合は、転送に失敗のマークが付けられます。 (既定値は true)

--delete-test-data true の場合、ベンチマーク実行の最後にベンチマーク データが削除されます。 転送先でデータを保持する場合は false に設定します (既定値は true)。たとえば、ベンチマーク モード以外の手動テストに使用します

--file-count (uint) 使用するために自動生成されるデータ ファイルの数 (既定値は 100)

-h--help bench のヘルプ

--log-level (string) ログ ファイルのログの詳細度を定義します。使用できるレベルは次のとおりです。INFO (すべての要求/応答)、WARNING (遅い応答)、ERROR (失敗した要求のみ)、NONE (出力ログなし)。 (既定値は "INFO")

--mode (string) Azcopy で、このターゲットに対してアップロードまたはダウンロードをテストする必要があるかどうかを定義します。 有効な値は、"upload" と "download" です。 既定で設定されるオプションは "upload" です。 (既定値は "upload")

--number-of-folders (uint) 0 より大きい場合は、データを分割するためのフォルダーを作成します。

--put-blob-size-mb このサイズ (MiB で指定) をしきい値として使用して、Azure Storage にアップロードするときに BLOB を 1 つの PUT 要求としてアップロードするかどうかを判断します。 既定値は、ファイル サイズに基づいて自動的に計算されます。 小数を使用できます (例:0.25)。

--put-md5 各ファイルの MD5 ハッシュを作成し、ハッシュをコピー先の BLOB/ファイルの Content-MD5 プロパティとして保存します。 (既定では、ハッシュは作成されません)。copy コマンドの同一の名前のパラメーターと同じです

--size-per-file (string) 自動生成される各データ ファイルのサイズ。 数値の直後に K、M、または G を指定する必要があります。例: 12k または 200G (既定値は "250M")

親コマンドから継承されるオプション

--cap-mbps (float) 転送速度をメガビット/秒で制限します。 瞬間的なスループットは、上限と若干異なる場合があります。 このオプションを 0 に設定した場合や省略した場合は、スループットは制限されません。

--output-type (string) コマンドの出力の形式。 選択肢には、text、json などがあります。 既定値は "text" です。 (既定値は "text")

--trusted-microsoft-suffixes (文字列) Microsoft Entra ログイン トークンを送信できる追加のドメイン サフィックスを指定します。 既定値は ".core.windows.net;.core.chinacloudapi.cn;.core.cloudapi.de;.core.usgovcloudapi.net;*.storage.azure.net" です。 ここに記載されているすべてが既定値に追加されます。 セキュリティのために、Microsoft Azure のドメインのみをここに入力してください。 複数のエンティティは、セミコロンで区切ります。

関連項目