Datenerfassung ändern (CDC)
Macht Daten schneller, effizienter und ohne Einbußen bei der Datengenauigkeit verfügbar.
Von Siddharth Pal DevOps Team, Hike
Erkenntnisse aus Daten sind einer der wichtigsten Teile eines jeden Produkts, aber wenn Sie eine Gaming-App erstellen, ist es noch wichtiger, Datenänderungen aus der Quelldatenbank abzurufen und sie nahezu in Echtzeit in das Data Warehouse zu übertragen.
CDC ist effizienter und schneller als die Batch-Datenerfassung und damit die Lösung der Wahl für Daten- und BI-Teams, die Daten schnell in das System übertragen und analysieren müssen.
Wir hatten einen interessanten Anwendungsfall, bei dem wir im August 21 begannen, über CDC für alle unsere Primärdatensätze nachzudenken und es umzusetzen. Wir arbeiten seit mehr als einem Jahr an der CDC-Pipeline mit den neuesten Softwareänderungen und der Quelldatenmigration, die ich gerne in diesem Blog mit Ihnen teile. In dieser Zeit haben wir eine Reihe von Datenbanken hinzugefügt und für kritischere Geschäftsanwendungen auf Datenbank-Sharding umgestellt.
Warum haben wir uns für die Einführung von CDC entschieden?
Anwendungsfälle wie der Status einer Ein- oder Auszahlung, der Status einer Spielsitzung für ein bestimmtes Spiel, das Erkennen von Anomalien, Echtzeitkampagnen, Modelle für maschinelles Lernen, Betriebsanalysen und mehr benötigen Daten nahezu in Echtzeit und müssen dies auch tun Zeichnen Sie jede Änderung der Daten auf.
CDC-Pipeline-Setup
Wo fangen Sie also an, wenn Sie eine CDC-Pipeline einrichten möchten?
- Starten Sie den Kafka-Cluster mit mindestens 3 Knoten.
- Laden Sie einen stabilen Debezium-Connector herunter, der mit Ihrer Datenbankversion kompatibel ist, und installieren Sie ihn auf Ihren Broker-Servern oder dedizierten Knoten.
- Stellen Sie eine Netzwerkkonnektivität zwischen der bereitgestellten Infrastruktur her.
- Erstellen Sie einen schreibgeschützten Benutzer in der Quelldatenbank.
- MongoDB:
- MySQL:
- MySQL:
- Periodische Lastspitzen : Große Abfragen wirken sich auf die Latenz und letztendlich auf das Benutzererlebnis aus. Deshalb richten wir einen zusätzlichen sekundären Server ein, um Batch-Jobs zu planen.
- Verzögerte Geschäftsentscheidungen : Geschäftsentscheidungen auf der Grundlage der Daten werden durch unsere Abfragehäufigkeit verzögert.
- CDC kann als Tool zum Sichern von Daten dienen, um Verluste zu vermeiden.
- Weitere Untersuchungen mit BI-Tools oder als Eingabeprozess in eine KI-/Machine-Learning-Pipeline.
Was haben wir erreicht?
Der Übergang vom traditionellen ETL zum Steaming löst für uns diese beiden großen Probleme:
Führen Sie den Curl-Aufruf aus, um den Connector-Status in Ihrem Überwachungstool zu überwachen.
Nächste Schritte
CDC erwies sich für uns als effektive Plattform und wir wussten, dass wir damit mehr erreichen konnten.
Als nächsten Schritt arbeiten wir an weiteren Möglichkeiten, um Folgendes zu erreichen:

![Was ist überhaupt eine verknüpfte Liste? [Teil 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































