Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Migrazione online ad Amazon Keyspaces: strategie e best practice
Se hai bisogno di mantenere la disponibilità delle applicazioni durante una migrazione da Apache Cassandra ad Amazon Keyspaces, puoi preparare una strategia di migrazione online personalizzata implementando i componenti chiave discussi in questo argomento. Seguendo queste best practice per le migrazioni online, puoi garantire che la disponibilità delle applicazioni e la coerenza della lettura dopo la scrittura siano mantenute durante l'intero processo di migrazione, riducendo al minimo l'impatto sugli utenti.
Quando si progetta una strategia di migrazione online da Apache Cassandra ad Amazon Keyspaces, è necessario considerare i seguenti passaggi chiave.
Scrittura di nuovi dati
Proxy ZDM Dual Write per la migrazione di Amazon Keyspaces: utilizza il proxy ZDM Dual Write disponibile su Github per eseguire una migrazione senza tempi di inattività da Apache
Cassandra ad Amazon Keyspaces. Il proxy ZDM esegue due scritture senza la necessità di rifattorizzare le applicazioni esistenti ed esegue una doppia lettura per la convalida delle query. Doppia scrittura dell'applicazione: è possibile implementare la doppia scrittura nell'applicazione utilizzando le librerie e i driver client Cassandra esistenti. Designate un database come leader e l'altro come follower. Gli errori di scrittura nel database dei follower vengono registrati in una coda di lettere morte (DLQ) per l'analisi.
Doppia scrittura a livello di messaggistica: in alternativa, puoi configurare la tua piattaforma di messaggistica esistente per inviare scritture sia a Cassandra che ad Amazon Keyspaces utilizzando un consumatore aggiuntivo. Questo crea alla fine visualizzazioni coerenti su entrambi i database.
Migrazione dei dati storici
Copia dei dati storici: puoi migrare i dati storici da Cassandra ad Amazon Keyspaces utilizzando AWS Glue o script di estrazione, trasformazione e caricamento (ETL) personalizzati. Gestisci la risoluzione dei conflitti tra doppie scritture e carichi in blocco utilizzando tecniche come transazioni leggere o timestamp.
Uso Time-To-Live (TTL): per periodi di conservazione dei dati più brevi, puoi utilizzare il TTL sia in Cassandra che in Amazon Keyspaces per evitare di caricare dati storici non necessari. Man mano che i vecchi dati scadono in Cassandra e i nuovi dati vengono scritti tramite doppia scrittura, Amazon Keyspaces alla fine recupera il ritardo.
Convalida dei dati
Doppie letture: implementa la doppia lettura dai database Cassandra (primario) e Amazon Keyspaces (secondario), confrontando i risultati in modo asincrono. Le differenze vengono registrate o inviate a un DLQ.
Letture di esempio: utilizzate le funzioni λ per campionare e confrontare periodicamente i dati su entrambi i sistemi, registrando eventuali discrepanze in un DLQ.
Migrazione dell'applicazione
Blue-green strategia: cambia la tua applicazione per trattare Amazon Keyspaces come archivio dati principale e Cassandra come archivio dati secondario in un solo passaggio. Monitora le prestazioni ed esegui il rollback in caso di problemi.
Implementazione Canary: implementa gradualmente la migrazione prima a un sottoinsieme di utenti, aumentando in modo incrementale il traffico verso Amazon Keyspaces come principale fino alla migrazione completa.
Smantellamento di Cassandra
Una volta completata la migrazione dell'applicazione su Amazon Keyspaces e convalidata la coerenza dei dati, puoi pianificare lo smantellamento del cluster Cassandra in base alle politiche di conservazione dei dati.
Pianificando una strategia di migrazione online con questi componenti, puoi passare senza problemi al servizio Amazon Keyspaces completamente gestito con tempi di inattività o interruzioni minimi. Le sezioni seguenti descrivono ogni componente in modo più dettagliato.