Meilleures pratiques pour l’utilisation des tâches de stockage

Cet article fournit des recommandations de bonnes pratiques pour l’utilisation des tâches de stockage.

Composition

Des conditions de conception qui s’appliquent à plusieurs comptes de stockage. Envisagez d’activer la suppression réversible d’objets blob avant d’utiliser des opérations de suppression dans vos conditions et examinez attentivement l’impact des regroupements de conditions. Cette section décrit chacune de ces recommandations.

Définir des conditions de tâche de stockage pour permettre la réutilisation sur plusieurs comptes de stockage

En rendant les conditions réutilisables, vous éliminez le besoin de créer des conditions individuelles de tâches de stockage pour chaque compte de stockage. Moins de définitions de tâches simplifient la gestion d’un grand nombre de comptes de stockage.

Créez des conditions de tâche de stockage qui fonctionnent sur plusieurs conteneurs blob et comptes de stockage. Paramétrez les valeurs via les métadonnées du conteneur, les métadonnées blob ou les tags index blob au lieu de les coder en dur dans vos conditions. Par exemple, si vous avez différents conteneurs de blobs chacun ayant des durées de conservation différentes pour leurs données par rapport au temps de création d’un blob, définissez la durée de conservation de chaque conteneur comme une valeur de métadonnées du conteneur. Créez une tâche de stockage unique qui utilise cette valeur de métadonnées conteneur dans la condition pour n’importe quel conteneur, au lieu de créer des tâches séparées pour chaque conteneur avec une valeur fixe.

Configurez les métadonnées du conteneur sur n’importe quel conteneur blob dans plusieurs comptes de stockage et créez plusieurs affectations de tâches de stockage en utilisant l’option de menu Affectations d’une tâche de stockage dans le portail Azure.

De même, vous pouvez personnaliser le traitement des blobs individuels en utilisant une tâche de stockage unique avec des métadonnées de blob ou des balises d’index de blob pour définir, pour chaque blob, la durée ou la date personnalisée.

Capture d’écran montrant l’emplacement de l’option affectations.

Lorsque vous activez ces assignations de tâches, l’exécution de la tâche de stockage fonctionne simultanément sur les blobs dans leurs comptes respectifs, permettant ainsi une mise à l’échelle horizontale.

Valider les modifications de tâches avec des attributions de tâches existantes pour tous les types de comptes de stockage applicables

Les modifications que vous apportez à une tâche de stockage existante sont automatiquement propagées à ses affectations de tâches associées. Si vous introduisez une dépendance à une nouvelle fonctionnalité dans votre modification, les attributions de tâches associées peuvent devenir invalides si la fonctionnalité n’est pas prise en charge sur ce compte de stockage. Par exemple, si une modification d’une condition de tâche introduit une clause dépendant du versionnement blob, toute assignation de tâche existante sur des comptes de stockage avec un espace de noms hiérarchique (HNS) peut devenir invalide car elle ne supporte pas les versions blob.

Pour éviter de telles perturbations, validez toute modification des assignations de tâches sur tous les types de comptes de stockage concernés.

Pensez à activer la suppression douce des objets blob dans un compte de stockage avant d'utiliser l'opération de suppression

Pour une protection améliorée des données, Microsoft recommande d’activer la suppression réversible d’objets blob sur votre compte de stockage. La suppression réversible d’objets blob fournit une couche supplémentaire de rétention et de tranquillité d’esprit en vous permettant de récupérer des objets blob supprimés accidentellement. En activant la suppression réversible d’objets blob, il est possible d'annuler la suppression de ces objets pendant la période de rétention, réduisant ainsi le risque de perte de données due à des suppressions accidentelles. Si des objets blob sont supprimés accidentellement sur un compte de stockage supprimé de manière réversible, une opération d’annulation de suppression dans une tâche de stockage peut être utilisée pour récupérer l’objet blob.

Comprendre l’impact de l’affectation d’une tâche de stockage à un compte sur lequel une stratégie de gestion du cycle de vie est activée

Une opération de suppression peut échouer si une stratégie de gestion du cycle de vie tente de supprimer le même objet blob. Par conséquent, si une tâche de stockage contient une opération de suppression et que la tâche est affectée à un compte disposant d’une stratégie de gestion de cycle de vie active qui définit une action de suppression, vous risquez d’avoir des taux d’échec élevés s’ils ciblent le même ensemble d’objets blob.

Comprendre l’impact des regroupements de conditions de tâche de stockage

Vérifiez que la façon dont vous regroupez des conditions conduit au résultat souhaité. Un regroupement incorrect peut entraîner des opérations inattendues. Testez soigneusement les conditions groupées à l’aide de la fonctionnalité d’aperçu. Vérifiez que les conditions correspondent aux objets blob comme prévu.

Vérification

Validez les conditions à mesure que vous les composez, puis une fois de plus avant d’activer une attribution de tâche de stockage. Cette section décrit chacune de ces recommandations.

Valider les conditions à mesure que vous les composez

Vous devez valider chaque condition que vous composez à l’aide de la fonctionnalité d’aperçu de condition. Cette fonctionnalité offre une expérience interactive qui montre quels objets blob sélectionnés répondent au prédicat de condition que vous avez configuré. L’expérience d’aperçu de condition n’apporte aucune modification aux données. Vous pouvez valider la condition en fonction de divers ensembles d’objets blob en spécifiant différents comptes de stockage ou préfixes de chemin des objets blob. Les conditions incorrectement composées peuvent affecter négativement vos données, ce qui rend cette étape cruciale pour vous assurer que la condition est composée correctement.

Afficher l’aperçu de l’effet des conditions

Valider les conditions avant de valider une attribution de tâche de stockage

La fonctionnalité d’aperçu des conditions s’affiche également dans le volet Ajouter une affectation. Avant de valider une tâche, utilisez cette fonctionnalité pour vérifier que la tâche de stockage fonctionne sur le bon ensemble d’objets blob dans le compte de stockage. Si la tâche de stockage est utilisée dans d’autres attributions de compte de stockage, aucun objet blob inattendu n’est affecté.

Capture d’écran du volet Ajouter une affectation.

Utiliser des exécutions fictifs pour valider avant l’exécution à grande échelle

Avant d’activer une attribution de tâche qui cible un grand nombre d’objets blob, envisagez d’exécuter d’abord une exécution simulée . Bien que la fonctionnalité d’aperçu des conditions soit utile pour vérifier ponctuellement vos conditions sur un petit échantillon, une exécution simulée permet une simulation complète sur tous les blobs concernés.

Une exécution simulée :

  • Analyse et évalue chaque blob correspondant à vos filtres par préfixe, et non pas seulement un échantillon limité.
  • Génère un rapport détaillé répertoriant chaque blob qui correspond aux conditions, ainsi que les opérations qui auraient été effectuées.
  • Ne modifie aucune donnée, ce qui permet d’utiliser sans risque dans les comptes de stockage de production.

Cette approche est particulièrement importante lorsque votre tâche inclut des opérations irréversibles. L’exécution d’une exécution fictive permet d’abord d’empêcher les mauvaises configurations involontaires.

Flux de travail recommandé :

  1. Concevez et affichez un aperçu de vos conditions à l’aide de la fonctionnalité d’aperçu des conditions dans le portail Azure.
  2. Créez une attribution d’exécution simulée pour valider les conditions par rapport à l’ensemble complet de blobs.
  3. Passez en revue le rapport d’exécution simulée pour confirmer que les blobs appropriés seraient ciblés.
  4. Si les résultats sont satisfaisants, convertissez l’affectation de simulation en affectation d’exécution réelle (ponctuelle ou récurrente), ou créez une nouvelle affectation d’exécution réelle.

Pour obtenir des instructions pas à pas, consultez Créer et utiliser une exécution fictive.

Scalabilité et performances

Activez les tâches de stockage une par une. Appliquez des techniques pour optimiser les conditions et la planification des affectations de tâches.

Activer une attribution de tâche de stockage à la fois

Les actions de stockage prennent actuellement en charge l’exécution d’une attribution de tâche de stockage à la fois sur un compte de stockage. Si vous affectez et activez deux tâches de stockage simultanément à un compte, la première tâche s’exécute pendant que la deuxième tâche attend la fin de la première tâche. Cette règle s’applique aux affectations de tâches planifiées à exécution unique et récurrentes.

Pour les affectations de tâches planifiées, si l’itération de tâche précédente est toujours en cours, les nouvelles itérations sont ignorées. La tâche planifiée suivante s’exécute au moment de son déclencheur désigné une fois la tâche précédente terminée. Lors de la planification des tâches récurrentes, tenez compte des implications de mise à l’échelle lorsque les affectations de tâches appliquées à des comptes de stockage volumineux peuvent prendre plus de temps. Par conséquent, planifiez-les de sorte que chaque exécution de tâche se termine avant l’itération suivante pour éviter d’ignorer les itérations suivantes.

Pour les attributions de tâches à exécution unique, si une tâche parallèle est déjà en cours, la nouvelle exécution de la tâche est différée pendant 60 minutes plus des minutes supplémentaires aléatoires avant de réessayer. En général, pour éviter toute confusion quant à l’exécution de l’affectation de tâche, activez une seule affectation de tâche à la fois.

Solutions de contournement pour les limites de mise à l’échelle

Storage Actions définit des limites d’échelle. Consultez l’article Limites des ressources.

Pour optimiser la gestion des limites de mise à l’échelle, envisagez d’implémenter les solutions de contournement suivantes :

  1. Segmentation des tâches par préfixe : au lieu d’affecter une seule tâche pour traiter tous les objets blob d’un compte de stockage, créez plusieurs tâches, chacune responsable d’un sous-ensemble filtré spécifique d’objets blob en fonction de leurs préfixes. Cette approche de segmentation distribue la charge de travail de manière plus uniforme et vous aide à rester dans les limites de mise à l’échelle. Vous pouvez ajouter des filtres pendant l’attribution de tâche, comme indiqué :

    Capture d’écran montrant la section d’objets de filtre du volet Ajouter une attribution.

  2. Planification échelonnée : planifiez des tâches à exécuter à différents moments, en particulier pour les opérations à grande échelle. En échelonnant les temps d'exécution, vous évitez les tâches concurrentes susceptibles de violer les limites de concurrence et d'entraîner une concurrence pour l'exécution des tâches.

  3. Traitement incrémentiel : décomposez les tâches volumineuses en étapes plus petites et incrémentielles. Cette méthode garantit que chaque segment de tâche se termine dans les limites données, ce qui réduit le risque d’opérations incomplètes.

  4. Surveillance et ajustement : surveillez régulièrement les performances et la progression des tâches. Ajustez les conditions de tâche, les préfixes et les planifications si nécessaire pour garantir un traitement efficace dans les limites de mise à l’échelle.

En utilisant ces stratégies, vous pouvez gérer et contourner efficacement les limites de mise à l’échelle imposées, en garantissant des exécutions de tâches lisses et efficaces.

Fiabilité

Les actions de stockage fonctionnent de manière plus fiable dans les comptes avec des configurations de stockage géoredondant (GRS) ou de stockage géoredondant interzone (GZRS).

Utiliser la géoredondance pour la continuité des activités

Les comptes de stockage avec GRS et GZRS répliquent les données dans une région secondaire en cas de basculement de compte de stockage. La continuité d’activité des actions de stockage dépend considérablement de la configuration de redondance du compte de stockage cible. Les comptes de stockage configurés avec la géoredondance bénéficient d’un processus de basculement automatisé. Cette gestion automatique garantit que les futures itérations d’attribution de tâches, qu’elles soient uniques ou récurrentes, s’exécutent dans la région secondaire sans problème. Toutefois, les tâches de stockage en cours au moment du basculement peuvent rencontrer des échecs. Les nouvelles tâches de stockage et les affectations de tâches de stockage continuent de fonctionner comme prévu.

La surveillance cohérente du compte de stockage est cruciale. Avec un basculement, vous devez examiner soigneusement les rapports et la surveillance des tâches pour vérifier la réussite de toutes les opérations d’objet blob et identifier les différences qui nécessitent une attention particulière.

Supervision

Surveillez régulièrement les exécutions des tâches de stockage et évitez de supprimer le conteneur de rapports dans lequel les rapports d’exécution des tâches sont stockés.

Surveiller régulièrement les tâches

Les graphiques sur la Overview page du portail Actions de stockage résument l’exécution des assignations de tâches. Surveillez régulièrement cette page pour vous assurer que les tâches s’exécutent comme prévu. Utilisez le filtre ou cliquez sur les tuiles respectives pour analyser d’éventuelles anomalies ou défaillances, et examinez les rapports d’exécution.

Vérifiez que le conteneur de rapports de résultats n’est pas supprimé

Les actions de stockage génèrent des rapports détaillés au format CSV, qui sont écrits dans le conteneur de rapports configuré lors de l’attribution des tâches. Ces rapports fournissent des informations sur les opérations effectuées lors d’une exécution de tâche, chaque ligne du fichier CSV incluant des informations sur les opérations effectuées, le statut de chaque opération et les éventuelles erreurs rencontrées. Assurez-vous que le conteneur de rapports n’est pas supprimé du compte de stockage tant que l’attribution des tâches est activée. Si le conteneur de rapports de résultats est supprimé pendant l’exécution de la tâche, l’exécution de la tâche peut échouer.

Cycle de vie des actions de stockage

Consolidez vos définitions de tâches dans un groupe de ressources ou un abonnement

Pour gérer efficacement les tâches liées à Storage Actions, envisagez d’utiliser un seul groupe de ressources ou un abonnement comme dépôt pour vos ressources de tâches. Cette approche vous permet de créer des tâches et de les réutiliser sur de nombreux comptes de stockage à travers différents abonnements et régions, sans duplication. En centralisant la gestion des tâches, vous pouvez rationaliser les politiques de gestion des données, garantir la cohérence dans l’exécution des tâches et réduire la charge administrative.

Voir aussi