Skip to content

Commit a810219

Browse files
Merge pull request #199533 from normesta/azcopy
AzCopy reference refresh for 10.1.5
2 parents aadd001 + 3100e09 commit a810219

20 files changed

+499
-569
lines changed

articles/storage/blobs/TOC.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -682,6 +682,8 @@ items:
682682
href: ../common/storage-ref-azcopy-list.md?toc=%2fazure%2fstorage%2fblobs%2ftoc.json
683683
- name: azcopy login
684684
href: ../common/storage-ref-azcopy-login.md?toc=%2fazure%2fstorage%2fblobs%2ftoc.json
685+
- name: azcopy login status
686+
href: ../common/storage-ref-azcopy-login-status.md?toc=%2fazure%2fstorage%2fblobs%2ftoc.json
685687
- name: azcopy logout
686688
href: ../common/storage-ref-azcopy-logout.md?toc=%2fazure%2fstorage%2fblobs%2ftoc.json
687689
- name: azcopy make

articles/storage/common/storage-ref-azcopy-bench.md

Lines changed: 43 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -4,120 +4,99 @@ description: This article provides reference information for the azcopy bench co
44
author: normesta
55
ms.service: storage
66
ms.topic: reference
7-
ms.date: 07/24/2020
7+
ms.date: 05/26/2022
88
ms.author: normesta
99
ms.subservice: common
1010
ms.reviewer: zezha-msft
1111
---
1212

13-
# azcopy benchmark
13+
# azcopy bench
1414

15-
Runs a performance benchmark by uploading or downloading test data to or from a specified destination.
16-
For uploads, the test data is automatically generated.
15+
Runs a performance benchmark by uploading or downloading test data to or from a specified destination. For uploads, the test data is automatically generated.
1716

1817
The benchmark command runs the same process as 'copy', except that:
1918

20-
- Instead of requiring both source and destination parameters, benchmark takes just one. This is the
21-
blob container, Azure Files Share, or Azure Data Lake Storage Gen2 file system that you want to upload to or download from.
19+
- Instead of requiring both source and destination parameters, benchmark takes just one. This is the blob container, Azure Files Share, or Azure Data Lake Storage Gen2 file system that you want to upload to or download from.
2220

23-
- The 'mode' parameter describes whether AzCopy should test uploads to or downloads from given target. Valid values are 'Upload'
21+
- The 'mode' parameter describes whether AzCopy should test uploads to or downloads from given target. Valid values ar`e 'Upload'
2422
and 'Download'. Default value is 'Upload'.
2523

26-
- For upload benchmarks, the payload is described by command-line parameters, which control how many files are autogenerated and
27-
how significant the files are. The generation process takes place entirely in memory. Disk is not used.
24+
- For upload benchmarks, the payload is described by command line parameters, which control how many files are auto-generated and
25+
how big they are. The generation process takes place entirely in memory. Disk isn't used.
2826

29-
- For downloads, the payload consists of whichever files already exist at the source. (See example below about how to generate
27+
- For downloads, the payload consists of whichever files already exist at the source. (See example below about how to generate
3028
test files if needed).
29+
30+
- Only a few of the optional parameters that are available to the copy command are supported.
31+
32+
- Additional diagnostics are measured and reported.
33+
34+
- For uploads, the default behavior is to delete the transferred data at the end of the test run. For downloads, the data is never actually saved locally.
3135

32-
- Only a few of the optional parameters that are available to the copy command are supported.
33-
34-
- Additional diagnostics are measured and reported.
35-
36-
- For uploads, the default behavior is to delete the transferred data at the end of the test run. For downloads, the data
37-
is never saved locally.
38-
39-
Benchmark mode will automatically tune itself to the number of parallel TCP connections that gives
40-
the maximum throughput. It will display that number at the end. To prevent autotuning, set the
41-
AZCOPY_CONCURRENCY_VALUE environment variable to a specific number of connections.
36+
Benchmark mode will automatically tune itself to the number of parallel TCP connections that gives the maximum throughput. It will display that number at the end. To prevent auto-tuning, set the COPY_CONCURRENCY_VALUE environment variable to a specific number of connections.
4237

4338
All the usual authentication types are supported. However, the most convenient approach for benchmarking upload is typically
4439
to create an empty container with a SAS token and use SAS authentication. (Download mode requires a set of test data to be
4540
present in the target container.)
46-
47-
## Related conceptual articles
48-
49-
- [Get started with AzCopy](storage-use-azcopy-v10.md)
50-
- [Optimize the performance of AzCopy v10 with Azure Storage](storage-use-azcopy-optimize.md)
51-
52-
## Examples
53-
41+
5442
```azcopy
55-
azcopy benchmark [destination] [flags]
43+
azcopy bench [destination] [flags]
5644
```
5745

58-
Run a benchmark test with default parameters (suitable for benchmarking networks up to 1 Gbps):'
46+
## Examples
5947

60-
```azcopy
61-
azcopy bench "https://[account].blob.core.windows.net/[container]?<SAS>"
62-
```
48+
Run an upload benchmark with default parameters (suitable for benchmarking networks up to 1 Gbps):
6349

64-
Run a benchmark test that uploads 100 files, each 2 GiB in size: (suitable for benchmarking on a fast network, for example, 10 Gbps):'
50+
`azcopy bench "https://[account].blob.core.windows.net/[container]?<SAS>"`
6551

66-
```azcopy
67-
azcopy bench "https://[account].blob.core.windows.net/[container]?<SAS>"--file-count 100 --size-per-file 2G
68-
```
52+
Run a benchmark test that uploads 100 files, each 2 GiB in size: (suitable for benchmarking on a fast network, e.g. 10 Gbps):'
6953

70-
Run a benchmark test but use 50,000 files, each 8 MiB in size and compute their MD5 hashes (in the same way that the `--put-md5` flag does this
71-
in the copy command). The purpose of `--put-md5` when benchmarking is to test whether MD5 computation affects throughput for the
72-
selected file count and size:
54+
`azcopy bench "https://[account].blob.core.windows.net/[container]?<SAS>" --file-count 100 --size-per-file 2G`
7355

74-
```azcopy
75-
azcopy bench --mode='Upload' "https://[account].blob.core.windows.net/[container]?<SAS>" --file-count 50000 --size-per-file 8M --put-md5
76-
```
56+
Same as above, but use 50,000 files, each 8 MiB in size and compute their MD5 hashes (in the same way that the --put-md5 flag does this
57+
in the copy command). The purpose of --put-md5 when benchmarking is to test whether MD5 computation affects throughput for the selected file count and size:
58+
59+
`azcopy bench --mode='Upload' "https://[account].blob.core.windows.net/[container]?<SAS>" --file-count 50000 --size-per-file 8M --put-md5`
7760

7861
Run a benchmark test that downloads existing files from a target
7962

80-
```azcopy
81-
azcopy bench --mode='Download' "https://[account].blob.core.windows.net/[container]?<SAS?"
82-
```
63+
`azcopy bench --mode='Download' "https://[account].blob.core.windows.net/[container]?<SAS?"`
8364

84-
Run an upload that does not delete the transferred files. (These files can then serve as the payload for a download test)
65+
Run an upload that doesn't delete the transferred files. (These files can then serve as the payload for a download test)
8566

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

9069
## Options
9170

92-
**--blob-type** string Defines the type of blob at the destination. Used to allow benchmarking different blob types. Identical to the same-named parameter in the copy command (default "Detect").
71+
`--blob-type string` defines the type of blob at the destination. Used to allow benchmarking different blob types. Identical to the same-named parameter in the copy command (default "Detect")
9372

94-
**--block-size-mb** float Use this block size (specified in MiB). Default is automatically calculated based on file size. Decimal fractions are allowed - for example, 0.25. Identical to the same-named parameter in the copy command.
73+
`--block-size-mb float` Use this block size (specified in MiB). Default is automatically calculated based on file size. Decimal fractions are allowed - for example, 0.25. Identical to the same-named parameter in the copy command
9574

96-
**--check-length** Check the length of a file on the destination after the transfer. If there is a mismatch between source and destination, the transfer is marked as failed. (default true)
75+
`--check-length` Check the length of a file on the destination after the transfer. If there's a mismatch between source and destination, the transfer is marked as failed. (default true)
9776

98-
**--delete-test-data** If true, the benchmark data will be deleted at the end of the benchmark run. Set it to false if you want to keep the data at the destination - for example, to use it for manual tests outside benchmark mode (default true).
77+
`--delete-test-data` If true, the benchmark data will be deleted at the end of the benchmark run. Set it to false if you want to keep the data at the destination - for example, to use it for manual tests outside benchmark mode (default true)
9978

100-
**--file-count** uint. The number of autogenerated data files to use (default 100).
79+
`--file-count` (uint) number of auto-generated data files to use (default 100)
10180

102-
**--help** Help for bench
81+
`-h`, `--help` help for bench
10382

104-
**--log-level** string Define the log verbosity for the log file, available levels: INFO(all requests/responses), WARNING(slow responses), ERROR(only failed requests), and NONE(no output logs). (default "INFO")
83+
`--log-level` (string) define the log verbosity for the log file, available levels: INFO(all requests/responses), WARNING(slow responses), ERROR(only failed requests), and NONE(no output logs). (default "INFO")
10584

106-
**--mode** string Defines if Azcopy should test uploads or downloads from this target. Valid values are 'upload' and 'download'. Defaulted option is 'upload'. (default 'upload')
85+
`--mode` (string) Defines if Azcopy should test uploads or downloads from this target. Valid values are 'upload' and 'download'. Defaulted option is 'upload'. (default "upload")
10786

108-
**--number-of-folders** uint If larger than 0, create folders to divide up the data.
87+
`--number-of-folders` (uint) If larger than 0, create folders to divide up the data.
10988

110-
**--put-md5** Create an MD5 hash of each file, and save the hash as the Content-MD5 property of the destination blob/file. (By default the hash is NOT created.) Identical to the same-named parameter in the copy command.
89+
`--put-md5` Create an MD5 hash of each file, and save the hash as the Content-MD5 property of the destination blob/file. (By default the hash is NOT created.) Identical to the same-named parameter in the copy command
11190

112-
**--size-per-file** string Size of each autogenerated data file. Must be a number immediately followed by K, M, or G. E.g. 12k or 200G (default "250M").
91+
`--size-per-file` (string) Size of each auto-generated data file. Must be a number immediately followed by K, M or G. E.g. 12k or 200G (default "250M")
11392

11493
## Options inherited from parent commands
11594

116-
**--cap-mbps float** Caps the transfer rate, in megabits per second. Moment-by-moment throughput might vary slightly from the cap. If this option is set to zero, or it is omitted, the throughput isn't capped.
95+
`--cap-mbps` (float) Caps the transfer rate, in megabits per second. Moment-by-moment throughput might vary slightly from the cap. If this option is set to zero, or it's omitted, the throughput isn't capped.
11796

118-
**--output-type** string Format of the command's output. The choices include: text, json. The default value is 'text'. (default "text").
97+
`--output-type` (string) Format of the command's output. The choices include: text, json. The default value is 'text'. (default "text")
11998

120-
**--trusted-microsoft-suffixes** string Specifies additional domain suffixes where Azure Active Directory login tokens may be sent. The default is '*.core.windows.net;*.core.chinacloudapi.cn;*.core.cloudapi.de;*.core.usgovcloudapi.net'. Any listed here are added to the default. For security, you should only put Microsoft Azure domains here. Separate multiple entries with semi-colons.
99+
`--trusted-microsoft-suffixes` (string) Specifies additional domain suffixes where Azure Active Directory login tokens may be sent. The default is '*.core.windows.net;*.core.chinacloudapi.cn;*.core.cloudapi.de;*.core.usgovcloudapi.net;*.storage.azure.net'. Any listed here are added to the default. For security, you should only put Microsoft Azure domains here. Separate multiple entries with semi-colons.
121100

122101
## See also
123102

articles/storage/common/storage-ref-azcopy-configuration-settings.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ description: This article provides reference information for AzCopy V10 configur
44
author: normesta
55
ms.service: storage
66
ms.topic: reference
7-
ms.date: 04/02/2021
7+
ms.date: 05/26/2022
88
ms.author: normesta
99
ms.subservice: common
1010
ms.reviewer: zezha-msft

0 commit comments

Comments
 (0)