Partager via


Ingestion de streaming et changements de schéma

S’applique à : ✅Microsoft Fabric✅Azure Data Explorer

Les nœuds de cluster utilisent en cache le schéma des bases de données qui obtiennent des données par le biais de l’ingestion de streaming, ce qui améliore les performances et l’utilisation des ressources. Toutefois, lorsqu’il existe des modifications de schéma, cela peut entraîner des retards dans les mises à jour.

Les nœuds Eventhouse utilisent en cache le schéma des bases de données qui obtiennent des données par le biais de l’ingestion de streaming, ce qui améliore les performances et l’utilisation des ressources. Toutefois, lorsqu’il existe des modifications de schéma, cela peut entraîner des retards dans les mises à jour.

Si les modifications de schéma et l’ingestion de streaming ne sont pas synchronisées, vous pouvez rencontrer des échecs tels que des erreurs liées au schéma ou des données incomplètes et déformées dans la table.

Cet article décrit les modifications de schéma classiques et fournit des conseils sur l’évitement des problèmes d’ingestion de streaming pendant ces modifications.

Modifications de schéma

La liste suivante présente des exemples clés de modifications de schéma :

Coordonner les modifications de schéma avec l’ingestion de streaming

Le cache de schéma est conservé pendant que la base de données est en ligne. S’il existe des modifications de schéma, le système actualise automatiquement le cache, mais cette actualisation peut prendre plusieurs minutes. Si vous vous appuyez sur l’actualisation automatique, vous pouvez rencontrer des échecs d’ingestion non coordonnés.

Vous pouvez réduire les effets du délai de propagation en désactivant explicitement le cache de schéma sur les nœuds. Si le flux d’ingestion de streaming et les modifications de schéma sont coordonnés, vous pouvez éliminer complètement les défaillances et leur distorsion de données associée.

Pour coordonner le flux d’ingestion de streaming avec les modifications de schéma :

  1. Suspendez l’ingestion de streaming.
  2. Attendez que toutes les demandes d’ingestion de streaming en attente soient terminées.
  3. Effectuez des modifications de schéma.
  4. Émettez une ou plusieurs commandes de schéma d’ingestion de streaming du cache .clear.
    • Répéter jusqu’à ce que toutes les lignes de la sortie de commande indiquent la réussite
  5. Reprendre l’ingestion de streaming.

Remarque

Si vous avez créé une application pour l’ingestion personnalisée, nous vous recommandons de gérer les échecs liés au schéma en retenant une durée définie ou en redirigeant les données à partir de requêtes ayant échoué à l’aide de méthodes d’ingestion mises en file d’attente.