View a markdown version of this page

Migrieren Sie Daten mithilfe von Change Data Capture (CDC) - Amazon Keyspaces (für Apache Cassandra)

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Migrieren Sie Daten mithilfe von Change Data Capture (CDC)

Wenn Sie bereits mit der Konfiguration einer Change Data Capture (CDC) -Pipeline mit Debezium vertraut sind, können Sie diese Option verwenden, um Daten als Alternative zur Verwendung von CQLReplicator zu Amazon Keyspaces zu migrieren. Debezium ist eine verteilte Open-Source-Plattform für CDC, die darauf ausgelegt ist, eine Datenbank zu überwachen und Änderungen auf Zeilenebene zuverlässig zu erfassen.

Der Debezium-Connector für Apache Cassandra lädt Änderungen auf Amazon Managed Streaming for Apache Kafka (Amazon MSK) hoch, sodass sie von nachgeschalteten Verbrauchern konsumiert und verarbeitet werden können, die wiederum die Daten in Amazon Keyspaces schreiben. Weitere Informationen finden Sie unter Anleitung zur kontinuierlichen Datenmigration von Apache Cassandra zu Amazon Keyspaces.

Um potenzielle Probleme mit der Datenkonsistenz zu lösen, können Sie mit Amazon MSK einen Prozess implementieren, bei dem ein Verbraucher die Schlüssel oder Partitionen in Cassandra mit denen in Amazon Keyspaces vergleicht.

Um diese Lösung erfolgreich zu implementieren, empfehlen wir, Folgendes zu berücksichtigen.

  • Wie man das CDC-Commit-Log analysiert, zum Beispiel, wie man doppelte Ereignisse entfernt.

  • Wie man das CDC-Verzeichnis verwaltet, zum Beispiel wie man alte Logs löscht.

  • Wie man mit Teilfehlern in Apache Cassandra umgeht, zum Beispiel, wenn ein Schreibvorgang nur in einem von drei Replikaten erfolgreich ist.

  • Wie mit der Ressourcenzuweisung umgegangen wird, z. B. durch Erhöhen der Größe der Instanz, um zusätzlichen CPU-, Speicher-, DISK- und I/O-Anforderungen für den CDC-Prozess auf einem Knoten Rechnung zu tragen.

Dieses Muster behandelt Änderungen von Cassandra als „Hinweis“ darauf, dass sich ein Schlüssel gegenüber seinem vorherigen Zustand geändert haben könnte. Um festzustellen, ob Änderungen an die Zieldatenbank weitergegeben werden müssen, müssen Sie zuerst aus dem Cassandra-Quell-Cluster lesen, indem Sie eine LOCAL_QUORUM Operation ausführen, um die neuesten Datensätze zu empfangen, und sie dann in Amazon Keyspaces schreiben.

Bei Bereichslöschungen oder Bereichsaktualisierungen müssen Sie möglicherweise einen Vergleich mit der gesamten Partition durchführen, um festzustellen, welche Schreib- oder Aktualisierungsereignisse in Ihre Zieldatenbank geschrieben werden müssen.

In Fällen, in denen Schreibvorgänge nicht idempotent sind, müssen Sie Ihre Schreibvorgänge auch mit dem vergleichen, was sich bereits in der Zieldatenbank befindet, bevor Sie in Amazon Keyspaces schreiben.

Das folgende Diagramm zeigt die typische Architektur einer CDC-Pipeline mit Debezium und Amazon MSK.

Verwenden einer Pipeline zur Erfassung von Change Data Capture zur Migration von Daten von Apache Cassandra zu Amazon Keyspaces.