azcopy bench

Executa um benchmark de desempenho carregando ou baixando dados de teste de ou para um destino especificado. Para uploads, os dados de teste são gerados automaticamente.

O comando benchmark executa o mesmo processo que 'copy', exceto que:

  • Em vez de exigir parâmetros de origem e destino, o benchmark leva apenas um. Este é o contêiner de blob, o Compartilhamento de Arquivos do Azure ou o sistema de arquivos do Armazenamento do Azure Data Lake que você deseja carregar ou baixar.

  • O parâmetro 'mode' descreve se o AzCopy deve testar uploads ou downloads de determinado destino. Valores válidos ar'e 'Upload' e 'Download'. O valor padrão é 'Upload'.

  • Para benchmarks de upload, a carga útil é descrita por parâmetros de linha de comando, que controlam quantos arquivos são gerados automaticamente e quão grandes eles são. O processo de geração ocorre inteiramente na memória. O disco não é usado.

  • Para downloads, a carga útil consiste em todos os arquivos já existentes na origem. (Veja o exemplo abaixo sobre como gerar arquivos de teste, se necessário).

  • Apenas alguns dos parâmetros opcionais que estão disponíveis para o comando copy são suportados.

  • Diagnósticos adicionais são medidos e relatados.

  • Para uploads, o comportamento padrão é excluir os dados transferidos no final da execução do teste. Para downloads, os dados nunca são salvos localmente.

O modo de referência irá ajustar-se automaticamente ao número de ligações TCP paralelas que fornecem o débito máximo. Ele exibirá esse número no final. Para evitar o ajuste automático, defina a variável de ambiente COPY_CONCURRENCY_VALUE para um número específico de conexões.

Todos os tipos de autenticação usuais são suportados. No entanto, a abordagem mais conveniente para o carregamento de benchmarking é normalmente criar um contêiner vazio com um token SAS e usar a autenticação SAS. (O modo de download requer que um conjunto de dados de teste esteja presente no contêiner de destino.)

azcopy bench [destination] [flags]

Exemplos

Execute um benchmark de upload com parâmetros padrão (adequado para benchmarking de redes de até 1 Gbps).

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

Execute um benchmark de upload com um tamanho de bloco especificado de 2 MiB e verifique o comprimento dos arquivos após a transferência.

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

Execute um teste de benchmark que carregue 500 arquivos. Cada arquivo tem 500 MiB de tamanho e o nível de log é definido para exibir apenas erros.

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

Execute um teste de benchmark que carregue 100 arquivos. Cada ficheiro tem 2 GiB de tamanho. Isso é adequado para benchmarking em uma rede rápida (por exemplo: 10 Gbps).

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

O próximo exemplo é o mesmo acima, mas com 50.000 arquivos. Cada ficheiro tem 8 MiB de tamanho. Este exemplo também calcula os hashes MD5 de cada arquivo de forma semelhante à maneira como o sinalizador --put-md5 calcula o MD5 no comando azcopy copy. O objetivo do --put-md5 quando o benchmarking é testar se a computação MD5 afeta a taxa de transferência para a contagem e o tamanho do arquivo selecionado.

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

Execute um teste de benchmark que carrega 1000 arquivos e cria pastas para dividir os dados. Cada ficheiro tem um tamanho de 100 KiB.

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

Execute um teste de benchmark que baixa arquivos existentes de um destino.

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

Execute um benchmark de download com os parâmetros padrão e limite a taxa de transferência em 500 Mbps.

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

Execute um upload que não exclua os arquivos transferidos. Esses arquivos podem então servir como carga útil para um teste de download.

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

Opções

--blob-type string Define o tipo de blob no destino. Usado para permitir benchmarking de diferentes tipos de blob. Idêntico ao parâmetro de mesmo nome no comando copy (padrão "Detect")

--block-size-mb float Use este tamanho de bloco (especificado em MiB). O padrão é calculado automaticamente com base no tamanho do arquivo. Frações decimais são permitidas - por exemplo, 0,25. Idêntico ao parâmetro de mesmo nome no comando copy

--check-length Verifique o comprimento de um arquivo no destino após a transferência. Se houver uma incompatibilidade entre origem e destino, a transferência será marcada como falha. (padrão true)

--delete-test-data Se verdadeiro, os dados do benchmark serão excluídos no final da execução do benchmark. Defina-o como false se quiser manter os dados no destino - por exemplo, para usá-lo para testes manuais fora do modo de benchmark (padrão true)

--file-count (uint) número de ficheiros de dados gerados automaticamente a utilizar (predefinição 100)

-h, --help ajuda para bancada

--log-level (string) define a verbosidade do log para o arquivo de log, níveis disponíveis: INFO(todas as solicitações/respostas), WARNING(respostas lentas), ERROR(somente solicitações com falha) e NONE(sem logs de saída). (padrão "INFO")

--mode (string) Define se o Azcopy deve testar uploads ou downloads desse destino. Os valores válidos são 'upload' e 'download'. A opção padrão é 'upload'. (padrão "upload")

--number-of-folders (uint) Se maior que 0, crie pastas para dividir os dados.

--put-blob-size-mb Use esse tamanho (especificado em MiB) como um limite para determinar se um blob deve ser carregado como uma única solicitação PUT ao carregar no Armazenamento do Azure. O valor padrão é calculado automaticamente com base no tamanho do arquivo. Frações decimais são permitidas (Por exemplo: 0,25).

--put-md5 Crie um hash MD5 de cada arquivo e salve o hash como a propriedade Content-MD5 do blob/arquivo de destino. (Por padrão, o hash NÃO é criado.) Idêntico ao parâmetro de mesmo nome no comando copy

--size-per-file (string) Tamanho de cada arquivo de dados gerado automaticamente. Deve ser um número imediatamente seguido por K, M ou G. Por exemplo, 12k ou 200G (padrão "250M")

Opções herdadas dos comandos pai

--cap-mbps (flutuar) Limita a taxa de transferência, em megabits por segundo. A taxa de transferência momento a momento pode variar ligeiramente do limite. Se essa opção estiver definida como zero ou for omitida, a taxa de transferência não será limitada.

--output-type (string) Formato da saída do comando. As opções incluem: texto, json. O valor padrão é 'text'. (padrão "texto")

--trusted-microsoft-suffixes (string) Especifica sufixos de domínio adicionais para onde os tokens de login do Microsoft Entra podem ser enviados. O padrão é '.core.windows.net;. core.chinacloudapi.cn;. core.cloudapi.de;. core.usgovcloudapi.net;*.storage.azure.net'. Qualquer listado aqui é adicionado ao padrão. Por segurança, você só deve colocar domínios do Microsoft Azure aqui. Separe várias entradas com ponto-e-vírgula.

Consulte também