Migrace dat z Cassandra do účtu Azure Cosmos DB for Apache Cassandra pomocí služby Arcion
PLATÍ PRO: Cassandra
Rozhraní API pro Cassandra ve službě Azure Cosmos DB se stalo skvělou volbou pro podnikové úlohy běžící na Apache Cassandře z mnoha důvodů, například:
Bez režijních nákladů na správu a monitorování: Eliminuje režii při správě a monitorování řadu nastavení v souborech OS, JVM a yaml a jejich interakcích.
Výrazné úspory nákladů: Náklady můžete ušetřit pomocí služby Azure Cosmos DB, která zahrnuje náklady na virtuální počítač, šířku pásma a všechny příslušné licence. Kromě toho nemusíte spravovat datacentra, servery, úložiště SSD, sítě a náklady na elektřinu.
Možnost využívat stávající kód a nástroje: Azure Cosmos DB poskytuje kompatibilitu na úrovni přenosového protokolu se stávajícími sadami SDK a nástroji Cassandra. Tato kompatibilita zajišťuje, že můžete použít stávající základ kódu se službou Azure Cosmos DB pro Apache Cassandra s triviálními změnami.
Existují různé způsoby migrace databázových úloh z jedné platformy do jiné. Arcion je nástroj, který nabízí bezpečný a spolehlivý způsob, jak provádět migraci nulového výpadku z jiných databází do služby Azure Cosmos DB. Tento článek popisuje kroky potřebné k migraci dat z databáze Apache Cassandra do služby Azure Cosmos DB pro Apache Cassandra pomocí arcionu.
Poznámka:
Tato nabídka z Arcion je aktuálně v beta verzi. Pokud potřebujete další informace, obraťte se na ně na podporu arcionu.
Výhody využívající Arcion pro migraci
Řešení migrace Arcion se řídí podrobným přístupem k migraci složitých provozních úloh. Tady jsou některé z klíčových aspektů plánu migrace s nulovými výpadky arcionu:
Nabízí automatickou migraci obchodní logiky (tabulek, indexů, zobrazení) z databáze Apache Cassandra do služby Azure Cosmos DB. Schémata nemusíte vytvářet ručně.
Arcion nabízí replikaci velkých objemů a paralelních databází. Umožňuje synchronizaci zdrojových i cílových platforem během migrace pomocí techniky označované jako Change-Data-Capture (CDC). Pomocí CDC arcion průběžně načítá datový proud změn ze zdrojové databáze (Apache Cassandra) a použije ho na cílovou databázi (Azure Cosmos DB).
Je odolný proti chybám a poskytuje přesně jednou doručení dat i během selhání hardwaru nebo softwaru v systému.
Data během přenosu zabezpečuje pomocí metodologií zabezpečení, jako je TLS, šifrování.
Postup migrace dat
Tato část popisuje kroky potřebné k nastavení služby Arcion a migraci dat z databáze Apache Cassandra do služby Azure Cosmos DB.
Z počítače, do kterého plánujete nainstalovat repliknt Arcion, přidejte certifikát zabezpečení. Tento certifikát vyžaduje replikátor Arcion k navázání připojení TLS se zadaným účtem služby Azure Cosmos DB. Certifikát můžete přidat pomocí následujícího postupu:
wget https://cacert.omniroot.com/bc2025.crt mv bc2025.crt bc2025.cer keytool -keystore $JAVA_HOME/lib/security/cacerts -importcert -alias bc2025ca -file bc2025.cer
Instalaci Arcion a binární soubory můžete získat buď vyžádáním ukázky na webu Arcion. Případně můžete týmu poslat e-mail .
V terminálu rozhraní příkazového řádku nastavte konfiguraci zdrojové databáze. Otevřete konfigurační soubor pomocí
vi conf/conn/cassandra.yml
příkazu a přidejte čárkami oddělený seznam IP adres uzlů Cassandra, čísla portu, uživatelského jména, hesla a dalších požadovaných podrobností. Následuje příklad obsahu v konfiguračním souboru:type: CASSANDRA host: 172.17.0.2 port: 9042 username: 'cassandra' password: 'cassandra' max-connections: 30
Po vyplnění podrobností o konfiguraci soubor uložte a zavřete.
Volitelně můžete nastavit soubor filtru zdrojové databáze. Soubor filtru určuje, která schémata nebo tabulky se mají migrovat. Otevřete konfigurační soubor pomocí
vi filter/cassandra_filter.yml
příkazu a zadejte následující podrobnosti o konfiguraci:allow: - schema: “io_arcion” Types: [TABLE]
Po vyplnění podrobností filtru databáze soubor uložte a zavřete.
Dále nastavíte konfiguraci cílové databáze. Před definováním konfigurace vytvořte účet Azure Cosmos DB for Apache Cassandra a pak vytvořte prostor klíčů a tabulku pro uložení migrovaných dat. Vzhledem k tomu, že migrujete z Apache Cassandra do rozhraní API pro Cassandra ve službě Azure Cosmos DB, můžete použít stejný klíč oddílu, který jste použili s Apache cassandra.
Před migrací dat zvyšte propustnost kontejneru na množství potřebné k rychlé migraci vaší aplikace. Propustnost můžete například zvýšit na 1 00000 RU. Škálování propustnosti před zahájením migrace vám pomůže migrovat data za kratší dobu.
Po dokončení migrace snižte propustnost. Na základě množství uložených dat a RU požadovaných pro každou operaci můžete odhadnout požadovanou propustnost po migraci dat. Další informace o odhadu požadovaných RU najdete v tématu Zřízení propustnosti pro kontejnery a databáze a odhad RU/s pomocí článků o plánovači kapacity služby Azure Cosmos DB.
Získejte kontaktní bod, port, uživatelské jméno a primární heslo účtu služby Azure Cosmos DB z podokna Připojovací řetězec. Tyto hodnoty použijete v konfiguračním souboru.
V terminálu rozhraní příkazového řádku nastavte konfiguraci cílové databáze. Otevřete konfigurační soubor pomocí
vi conf/conn/cosmosdb.yml
příkazu a přidejte čárkami oddělený seznam identifikátorů URI hostitele, číslo portu, uživatelské jméno, heslo a další požadované parametry. Následující příklad ukazuje obsah konfiguračního souboru:type: COSMOSDB host: '<Azure Cosmos DB account’s Contact point>' port: 10350 username: 'arciondemo' password: '<Your Azure Cosmos DB account’s primary password>' max-connections: 30
Pak migrujte data pomocí arcionu. Repliknt Arcion můžete spustit v režimu úplného nebo snímku :
Úplný režim – V tomto režimu replikant po migraci pokračuje v provozu a naslouchá všem změnám ve zdrojovém systému Apache Cassandra. Pokud zjistí nějaké změny, replikují se v cílovém účtu služby Azure Cosmos DB v reálném čase.
Režim snímku – V tomto režimu můžete provést migraci schématu a jednorázovou replikaci dat. Tato možnost nepodporuje replikaci v reálném čase.
Pomocí výše uvedených dvou režimů je možné migraci provést s nulovým výpadkem.
Pokud chcete migrovat data, spusťte z terminálu rozhraní příkazového řádku Arcion repliknt následující příkaz:
./bin/replicant full conf/conn/cassandra.yaml conf/conn/cosmosdb.yaml --filter filter/cassandra_filter.yaml --replace-existing
V uživatelském rozhraní replikntu se zobrazuje průběh replikace. Po dokončení migrace schématu a operace snímku se průběh zobrazí na 100 %. Po dokončení migrace můžete ověřit data v cílové databázi Azure Cosmos DB.
Vzhledem k tomu, že jste k migraci použili plný režim, můžete provádět operace, jako je vložení, aktualizace nebo odstranění dat ve zdrojové databázi Apache Cassandra. Později ověřte, že se replikují v reálném čase do cílové databáze Azure Cosmos DB. Po migraci nezapomeňte snížit propustnost nakonfigurovanou pro kontejner Azure Cosmos DB.
Replikovaný bod můžete zastavit a restartovat ho přepínačem --resume . Replikace se obnoví z bodu, který se zastavil, aniž by došlo k ohrožení konzistence dat. Následující příkaz ukazuje, jak použít přepínač životopisu.
./bin/replicant full conf/conn/cassandra.yaml conf/conn/cosmosdb.yaml --filter filter/cassandra_filter.yaml --replace-existing --resume
Další informace o migraci dat do cíle v reálném čase najdete v ukázce replikntu arcionu.
Další kroky
- Zřízení propustnosti u kontejnerů a databází
- Odhad RU/s pomocí článků o plánovači kapacity služby Azure Cosmos DB