Comment nettoyer un conteneur Blob Azure storage?
je veux juste de la nettoyer (vidage, zap, del .<!-(2) un récipient Blob D'Azur. Comment puis-je le faire?
Note: Le conteneur est utilisé par IIS (course Webrole) journaux (wad-iis-logfiles).
9 réponses
Une seule ligne à l'aide de l'Azur de la CLI 2.0:
az storage blob delete-batch --account-name <storage_account_name> --source <container_name>
Remplacer <storage_account_name>
et <container_name>
par les valeurs appropriées dans votre cas.
vous pouvez voir l'aide du commnand en exécutant:
az storage blob delete-batch -h
Il n'y a qu'un seul moyen de supprimer les blobs et c'est en supprimant le conteneur entier. Comme vous l'avez dit, il y a un délai entre la suppression du conteneur et le moment où vous pouvez utiliser à nouveau ce nom de conteneur.
Votre seul autre choix est de supprimer l'un à la fois. Si vous pouvez effectuer la suppression à partir du même centre de données où les blobs sont stockés, ce sera plus rapide que d'exécuter la suppression localement. Cela signifie probablement écrire du code (ou vous pourriez RDP dans l'une de vos instances et installer cloud explorer). Si vous écrivez du code, alors vous pouvez accélérer l'ensemble du processus en supprimant les éléments en parallèle. Quelque chose de semblable pourrait fonctionner:
Parallel.ForEach(myCloudBlobClient.GetContainerReference(myContainerName).ListBlobs(), x => ((CloudBlob) x).Delete());
mise à Jour: la façon la plus facile de le faire maintenant (en 2018) est d'utiliser L'Azure CLI. Vérifier la réponse de joanlofe:)
la façon la plus facile de le faire en 2016 est D'utiliser Microsoft Explorateur De Stockage Windows Azure de l'OMI.
- téléchargez Azure Storage Explorer et installez-le
- ouvrez une session avec le compte Microsoft approprié
- recherchez le conteneur à vide
- cliquez sur Sélectionner Tous les bouton
- Cliquez sur le bouton Supprimer
Essayez d'utiliser la chicouté de produit pour windows azure
c'est le lien: http://www.cloudberrylab.com/free-microsoft-azure-explorer.aspx
vous pouvez rechercher dans le blob une extension spécifique. sélectionnez plusieurs gouttes et les supprimer
si vous voulez dire supprimer un conteneur. I would like to suggest you to check http://msdn.microsoft.com/en-us/library/windowsazure/dd179408.aspx pour voir si supprimer le fonctionnement du conteneur (le conteneur et tous les blobs qu'il contient sont ensuite supprimés pendant le ramassage des ordures) pourrait répondre à l'exigence.
si vous êtes intéressé par une voie CLI, alors le morceau de code suivant vous aidera:
for i in `az storage blob list -c "Container-name" --account-name "Storage-account-name" --account-key "Storage-account-access-key" --output table | awk {'print '} | sed '1,2d' | sed '/^$/d'`; do az storage blob delete --name $i -c "Container-name" --account-name "Storage-account-name" --account-key "Storage-account-access-key" --output table; done
il récupère d'abord la liste des blobs dans le container et les efface un par un.
si vous utilisez un cluster spark (HDInsight) qui a accès à ce compte de stockage, alors vous pouvez utiliser des commandes HDFS sur la ligne de commande;
hdfs dfs -rm -r wasbs://container_name@account_name.blob.core.windows.net/path_goes_here
le véritable avantage est que le cluster est peu probable de descendre, et si vous avez l'écran qui tourne dessus, alors vous ne perdrez pas votre session pendant que vous supprimez.
Vous pouvez utiliser Combinaison De Nuages pour supprimer tous les blobs dans votre conteneur D'Azur.
Pour Ce cas, la meilleure option est d'identifier la liste de l'élément trouvé dans le conteneur. puis supprimer chaque élément du conteneur. C'est la meilleure option. Si vous supprimez le conteneur, vous devriez avoir une erreur sur la prochaine fois...