2011-10-12 2 views
3

Un blob azur est-il disponible au téléchargement alors qu'il est remplacé par une nouvelle version? De mes tests avec Cloud Storage Studio, le téléchargement est bloqué jusqu'à ce que l'écrasement soit terminé, mais mes tests proviennent de la même machine, donc je ne suis pas sûr que ce soit correct.Disponibilité de blob Azure lors d'un remplacement

Si ce n'est pas disponible lors d'un remplacement, alors je suppose que la solution (pour maintenir la disponibilité) serait de télécharger en utilisant un nom de blob différent, puis de le renommer une fois terminé. Est-ce que quelqu'un a une meilleure solution que celle-ci?

Répondre

2

Le blob est disponible pendant l'écrasement. Ce que vous verrez dépendra si vous utilisez un blob de bloc ou un blob de page. Pour les blobs de blocs, vous téléchargerez l'ancienne version jusqu'à la validation finale du bloc. Cette dernière opération PutBlockList mettra à jour atomiquement le blob vers la nouvelle version. Cependant, je ne suis pas sûr que pour les gros blobs, vous êtes en train de télécharger ce qui se passe quand un PutBlockList met à jour atomiquement le blob. Les choix sont les suivants: a.) La requête se poursuit avec un blob plus ancien, b.) La connexion est interrompue, ou c :) vous commencez à télécharger des octets de nouveau blob. Quelle chose amusante à tester!

Si vous utilisez des blobs de page (sans bail), vous lirez des données incohérentes lorsque les plages de pages sont mises à jour en dessous de vous. Chaque mise à jour de la plage de pages est atomique, mais elle aura l'air étrange à moins que vous ne louiez le blob et que vous n'ayez pas d'autres lecteurs (les lecteurs peuvent prendre un instantané d'un blob loué et lire l'état).

Je pourrais essayer de tester la mise à jour de blob de bloc au milieu du scénario de lecture pour voir ce qui se passe. Cependant, votre question de base devrait être répondue: le blob est disponible.

+0

Merci pour la réponse complète, je pense que je vais m'amuser à tester le scénario de mise à jour de bloc blob. –

Questions connexes