Les pipelines d'intégration de données d'entreprise font face à un défi critique : mettre à l'échelle le débit sans compromettre la correction des données. Ce témoignage détaille la mise à l'échelle de 500 à 8 000 événements par seconde tout en maintenant deux garanties imprescriptibles.
La première garantie empêche les états ultérieurs des entités d'être écrasés par des versions antérieures. Chaque entité porte un numéro de version appartenant à la source, et les écritures rejettent les données obsolètes via un mécanisme de dernière écriture gagne, où 'dernière' signifie le numéro de version le plus élevé, pas l'heure d'arrivée. Cela permet un parallélisme agressif sans préoccupations d'ordonnancement.
La deuxième garantie assure une détection précise des doublons. Chaque enregistrement accepté écrit son entrée de journal de déduplication et ses données métier dans la même transaction de base de données, les engageant ensemble ou pas du tout. Le passage des vérifications au niveau de l'application aux contraintes de clé primaire de la base de données a éliminé les glissements de doublons pendant la forte concurrence.
La mise à l'échelle du débit utilise un partitionnement stratégique. Les événements pour la même entité sont acheminés vers la même partition via le hachage de l'ID d'entité, maintenant l'ordre naturel. Cependant, lorsqu'un grand compte a généré 100 fois le trafic normal, le sous-partitionnement a réparti les entités chaudes à travers les partitions en utilisant l'ID d'entité plus le type d'événement comme clé. Un travail en arrière-plan surveille en continu les taux d'entité, promeut et dégrade les entités entre le partitionnement régulier et fin. Le système de vérification des versions absorbe tout traitement hors ordre que le sous-partitionnement introduit.
Le micro-batch livre des améliorations réelles de vitesse en éliminant les allers-retours réseau par événement et en réduisant les frais de transactions de base de données séparées.
Entités Clés : Entreprises : Vers la Science des Données
Source: Towards Data Science · Résumé par HeadlinesBriefing