Ingestion de streaming et changements de schéma
Les nœuds de cluster mettez en cache le schéma des bases de données qui obtiennent des données via l’ingestion en streaming, ce qui améliore les performances et l’utilisation des ressources. Toutefois, lorsqu’il y a des modifications de schéma, cela peut entraîner des retards dans les mises à jour.
Si les modifications de schéma et l’ingestion en 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 pour éviter les problèmes d’ingestion en streaming pendant ces modifications.
Modifications du schéma
La liste suivante présente des exemples clés de modifications de schéma :
- Création de tables
- Suppression de tables
- Ajout d’une colonne à une table
- Suppression d’une colonne d’une table
- Retypage des colonnes d’une table
- Renommer les colonnes d’une table
- Ajout de mappages d’ingestion précréés
- Suppression des mappages d’ingestion précréés
- Ajout, suppression ou modification de stratégies
Modifications de schéma de coordonnées avec l’ingestion en streaming
Le cache de schéma est conservé pendant que le cluster est en ligne. En cas de modifications de schéma, le système actualise automatiquement le cache, mais cette actualisation peut prendre plusieurs minutes. Si vous comptez sur l’actualisation automatique, vous pouvez rencontrer des échecs d’ingestion non coordonnés.
Vous pouvez réduire les effets du retard de propagation en effaçant explicitement le cache de schéma sur les nœuds du cluster. Si le flux d’ingestion en streaming et les modifications de schéma sont coordonnés, vous pouvez éliminer complètement les défaillances et la distorsion des données associée.
Pour coordonner le flux d’ingestion de streaming avec les modifications de schéma :
- Suspendez l’ingestion en streaming.
- Attendez que toutes les demandes d’ingestion de streaming en cours soient terminées.
- Modifiez le schéma.
- Émettez une ou plusieurs commandes de schéma d’ingestion de streaming de cache .clear .
- Répétez cette opération jusqu’à ce que toutes les lignes de la sortie de la commande indiquent la réussite
- Reprendre l’ingestion en streaming.
Notes
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 effectuant une nouvelle tentative pendant une durée définie ou en redirigeant les données des demandes ayant échoué à l’aide de méthodes d’ingestion mises en file d’attente.
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour