azcopy bench
Exécute un test d’évaluation des performances en chargeant ou téléchargeant les données de test vers ou depuis une destination spécifiée. Pour les chargements, les données de test sont générées automatiquement.
La commande benchmark exécute le même processus que « copy », à ceci près que :
Au lieu de demander des paramètres source et de destination, benchmark n’en prend qu’un. Il s’agit du conteneur d’objets blob, du partage Azure Files ou du système de fichiers Azure Data Lake Storage à partir duquel vous souhaitez effectuer le chargement ou le téléchargement.
Le paramètre « mode » indique si AzCopy doit tester les chargements vers ou téléchargements à partir de la cible donnée. Les valeurs valides sont « Upload » et « Download ». La valeur par défaut est « Upload ».
Pour les tests d’évaluation de chargement, la charge utile est décrite par les paramètres de ligne de commande, qui contrôlent le nombre de fichiers générés automatiquement et leur taille. Le processus de génération s’effectue entièrement en mémoire. Le disque n’est pas utilisé.
Pour les téléchargements, la charge utile est constituée par des fichiers qui existent déjà à la source. (Voir l’exemple ci-dessous illustrant la façon de générer des fichiers de test, si nécessaire).
Seuls quelques-uns des paramètres facultatifs qui sont disponibles pour la commande copy sont pris en charge.
Des diagnostics supplémentaires sont mesurés et signalés.
Pour les chargements, le comportement par défaut consiste à supprimer les données transférées à la fin de la série de tests. Pour les téléchargements, les données ne sont jamais réellement enregistrées localement.
Le mode « test d’évaluation » se règle automatiquement en fonction du nombre de connexions TCP parallèles qui fournit le débit maximal. Il affiche ce nombre à la fin. Pour empêcher le réglage automatique, affectez un nombre spécifique de connexions à la variable d’environnement COPY_CONCURRENCY_VALUE.
Tous les types d’authentification habituels sont pris en charge. Toutefois, l’approche la plus pratique pour le test d’évaluation de chargement vise généralement à créer un conteneur vide avec un jeton SAS, et à utiliser l’authentification SAS. (Le mode de téléchargement demande la présence d’un ensemble de données de test dans le conteneur cible.)
azcopy bench [destination] [flags]
Exemples
Exécutez un benchmark de chargement avec des paramètres par défaut (adapté aux réseaux de référence jusqu’à 1 Gbit/s).
azcopy bench "https://[account].blob.core.windows.net/[container]?<SAS>"
Exécutez un benchmark de chargement avec une taille de bloc spécifiée de 2 Mio et vérifiez la longueur des fichiers après le transfert.
azcopy bench "https://[account].blob.core.windows.net/[container]?<SAS>" --block-size-mb 2 --check-length
Exécutez un test d’évaluation qui charge 500 fichiers. Chaque fichier a une taille de 500 Mio et le niveau du journal est défini pour afficher uniquement les erreurs.
azcopy bench "https://[account].blob.core.windows.net/[container]?<SAS>" --file-count 500 --size-per-file 500M --log-level ERROR
Exécutez un test d’évaluation qui charge 100 fichiers. Chaque fichier est de 2 Gio de taille. Cela convient à l’évaluation sur un réseau rapide (par exemple : 10 Gbits/s).
azcopy bench "https://[account].blob.core.windows.net/[container]?<SAS>" --file-count 100 --size-per-file 2G
L’exemple suivant est le même que ci-dessus, mais avec 50 000 fichiers. Chaque fichier 8 Mio en taille. Cet exemple calcule également les hachages MD5 de chaque fichier de la façon dont l’indicateur --put-md5 calcule le MD5 dans la commande de copie azcopy. L’objectif de --put-md5 lors de l’évaluation consiste à tester si le calcul MD5 affecte le débit pour le nombre de fichiers et la taille sélectionnés.
azcopy bench --mode='Upload' "https://[account].blob.core.windows.net/[container]?<SAS>" --file-count 50000 --size-per-file 8M --put-md5
Exécutez un test d’évaluation qui charge 1 000 fichiers et crée des dossiers pour diviser les données. Chaque fichier a une taille de 100 Kib.
azcopy bench "https://[account].blob.core.windows.net/[container]?<SAS>" --file-count 1000 --size-per-file 100K --number-of-folders 5
Exécutez un test d’évaluation qui télécharge les fichiers existants à partir d’une cible.
azcopy bench --mode='Download' "https://[account].blob.core.windows.net/[container]?<SAS?"
Exécutez un benchmark de téléchargement avec les paramètres par défaut et limitez le taux de transfert à 500 Mbits/s.
azcopy bench --mode=Download "https://[account].blob.core.windows.net/[container]?<SAS>" --cap-mbps 500
Exécuter un chargement qui ne supprime pas les fichiers transférés. Ces fichiers peuvent ensuite servir de charge utile pour un test de téléchargement.
azcopy bench "https://[account].blob.core.windows.net/[container]?<SAS>" --file-count 100 --delete-test-data=false
Options
--blob-type string
définit le type d’objet blob au niveau de la destination. Permet d’effectuer un test d’évaluation de différents types d’objets blob. Identique au paramètre du même nom dans la commande copy (par défaut : « Detect »)
--block-size-mb float
Utiliser cette taille de bloc (spécifiée en Mio). La valeur par défaut est calculée automatiquement en fonction de la taille du fichier. Les fractions décimales sont autorisées, par exemple 0,25. Identique au paramètre du même nom dans la commande copy
--check-length
Vérifier la longueur d’un fichier sur la destination après le transfert. En cas d’incompatibilité entre la source et la destination, le transfert est marqué comme ayant échoué. (par défaut : true)
--delete-test-data
Si la valeur est true, les données du test d’évaluation sont supprimées à la fin de l’exécution du test. Affectez-lui la valeur false si vous souhaitez conserver les données dans la destination, par exemple afin de les utiliser pour des tests manuels en dehors du mode « test d’évaluation » (valeur par défaut : true)
--file-count
(uint) Nombre de fichiers de données générés automatiquement (valeur par défaut : 100)
-h
, --help
Aide pour la commande bench
--log-level
(string) Définir le niveau de détail pour le fichier journal. Niveaux disponibles : INFO (toutes les requêtes/réponses), WARNING (réponses lentes), ERROR (uniquement les requêtes ayant échoué) et NONE (aucun journal de sortie). (par défaut : « INFO »)
--mode
(string) Détermine si Azcopy doit tester les chargements ou les téléchargements à partir de cette cible. Les valeurs valides sont « upload » et « download ». L’option par défaut est « upload ». (par défaut : « upload »)
--number-of-folders
(uint) Si la valeur est supérieure à 0, créer des dossiers pour répartir les données.
--put-blob-size-mb
Utilisez cette taille (spécifiée en MiB) comme seuil pour déterminer s’il faut charger un objet blob en tant que requête PUT unique lors du chargement sur Stockage Azure. La valeur par défaut est calculée automatiquement en fonction de la taille du fichier. Les fractions décimales sont autorisées (par exemple : 0,25).
--put-md5
Créer un hachage MD5 de chaque fichier, puis enregistrer le hachage en tant que propriété Content-MD5 de l’objet blob/du fichier de destination. (Par défaut, le hachage n’est PAS créé.) Identique au paramètre du même nom dans la commande copy
--size-per-file
(string) Taille de chaque fichier de données généré automatiquement. Doit être un nombre immédiatement suivi de K, de M ou de G (par exemple, 12k ou 200G) (par défaut : « 250M »)
Options héritées des commandes parentes
--cap-mbps
(flottant) Limite la vitesse de transfert, en mégabits par seconde. Par moment, le débit peut dépasser légèrement cette limite. Si cette option est définie sur zéro ou si elle est omise, le débit n’est pas limité.
--output-type
(string) Met en forme la sortie de la commande. Les formats possibles sont « text » et « JSON ». La valeur par défaut est « text ». (par défaut : « text »).
--trusted-microsoft-suffixes
(chaîne) Spécifie des suffixes de domaine supplémentaires où les jetons de connexion Microsoft Entra peuvent être envoyés. La valeur par défaut est « .core.windows.net;.core.chinacloudapi.cn;.core.cloudapi.de;.core.usgovcloudapi.net ». Tous les éléments répertoriés ici sont ajoutés à la valeur par défaut. Pour la sécurité, vous devez placer uniquement des domaines Microsoft Azure ici. Séparez plusieurs entrées par des points-virgules.