azcopy 工作台

透過將測試資料上傳至指定目的地或從中下載來執行效能評定。 針對上傳,會自動產生測試資料。

benchmark 命令會執行與 'copy' 相同的流程,但下列情況除外:

  • benchmark 不需要同時採用來源和目的地參數,只會採用一個。 這是您想要上傳至其中或從中下載的 Blob 容器、Azure 檔案儲存體共用或 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>"

執行上傳 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,並計算其 MD5 雜湊 (與 --put-md5 旗標在 copy 命令中執行此作業的方式相同)。 在執行效能評定時,--put-md5 的目的是測試 MD5 計算是否會影響所選檔案計數和大小的輸送量:

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

執行效能評定測試,以從目標下載現有檔案

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

執行不會刪除已傳輸檔案的上傳。 (這些檔案接著可作為下載測試的承載)

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 (單位) 要使用的自動產生資料檔案數目 (預設值:100)

-h--help bench 的說明

--log-level (字串) 定義記錄檔的記錄詳細程度、可用層級:INFO (所有要求/回應)、WARNING (回應緩慢)、ERROR (僅限失敗的要求),以及 NONE (沒有輸出記錄)。 (預設值:"INFO")

--mode (字串) 定義 Azcopy 應該測試從目標上傳或下載。 有效值為 'upload' 和 'download'。 預設選項為 'upload'。 (預設值 "upload")

--number-of-folders (單位) 如果大於 0,則建立資料夾來分割資料。

--put-md5:為每個檔案建立一個 MD5 雜湊,並將該雜湊儲存為目的地 Blob/檔案的 Content-MD5 屬性。 (預設「不會」建立雜湊。) 與 copy 命令中相同名稱的參數相同

--size-per-file (字串) 每個自動產生的資料檔案大小。 必須是數字,後面緊接著 K、M 或 G。例如 12k 或 200G (預設值為 "250M")

繼承自父命令的選項

--cap-mbps (float):限制傳輸速率的上限 (以每秒百萬位元數為單位)。 不同時間的輸送量可能會與上限稍有差異。 如果將此選項設為零或省略,則不會限制輸送量。

--output-type (string):命令輸出的格式。 選項包括:text、json。 預設值為 "text"。 (預設為 "text")

--trusted-microsoft-suffixes (string):指定可能會在其中傳送 Azure Active Directory 登入權杖的其他網域尾碼。 預設值為 '.core.windows.net;.core.chinacloudapi.cn;.core.cloudapi.de;.core.usgovcloudapi.net;*.storage.azure.net'。 此處所列的所有項目都會新增至預設值。 基於安全考量,應該只將 Microsoft Azure 網域放在此處。 請以分號分隔多個項目。

另請參閱