Migrace dat z Cassandry do účtu Azure Cosmos DB pro Apache Cassandra pomocí Arcion
PLATÍ PRO: Cassandra
Rozhraní API pro Cassandra ve službě Azure Cosmos DB se stalo skvělou volbou pro podnikové úlohy spuštěné v Apache Cassandře z mnoha důvodů, například:
Žádné režijní náklady na správu a monitorování: Eliminuje režijní náklady na správu a monitorování nesčetných nastavení v souborech OS, JVM a yaml a jejich interakcích.
Významné úspory nákladů: Díky službě Azure Cosmos DB můžete ušetřit náklady, které zahrnují náklady na virtuální počítače, šířku pásma a všechny příslušné licence. Navíc nemusíte spravovat datacentra, servery, úložiště SSD, sítě a náklady na elektřinu.
Schopnost používat existují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žívat stávající základ kódu se službou Azure Cosmos DB for Apache Cassandra s triviálními změnami.
Existují různé způsoby migrace databázových úloh z jedné platformy na jinou. Arcion je nástroj, který nabízí bezpečný a spolehlivý způsob, jak provést migraci bez výpadků 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 for Apache Cassandra pomocí Arcion.
Poznámka
Tato nabídka od Arcion je v současné době v beta verzi. Pokud potřebujete další informace, kontaktujte ho na webu Arcion Support.
Výhody použití Arcion pro migraci
Řešení migrace arcion se řídí podrobným přístupem k migraci složitých provozních úloh. Níže jsou uvedeny 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í velkoobsádovou a paralelní replikaci databáze. Umožňuje synchronizaci zdrojové i cílové platformy během migrace pomocí techniky s názvem Change-Data-Capture (CDC). Pomocí CDC arcion průběžně načítá stream změn ze zdrojové databáze (Apache Cassandra) a aplikuje 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.
Zajišťuje zabezpečení dat během přenosu pomocí metodologií zabezpečení, jako je TLS nebo šifrování.
Postup migrace dat
Tato část popisuje kroky potřebné k nastavení Služby Arcion a migruje data z databáze Apache Cassandra do služby Azure Cosmos DB.
Z počítače, na který plánujete nainstalovat replikátor 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ích kroků:
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 tak, že si vyžádáte ukázku 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, číslo portu, uživatelské jméno, heslo a další požadované podrobnosti. 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 pro Apache Cassandra a pak vytvořte prostor klíčů a tabulku pro uložení migrovaných dat. Vzhledem k tomu, že migrujete z Apache Cassandra na rozhraní API for 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 úroveň potřebnou k rychlé migraci vaší aplikace. Propustnost můžete například zvýšit na 100000 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 jednotek 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 článcích o zřizování propustnosti pro kontejnery a databáze aOdhad RU/s pomocí plánovače kapacity služby Azure Cosmos DB .
Z podokna Připojovací řetězec získejte kontaktní bod, port, uživatelské jméno a primární heslo účtu služby Azure Cosmos DB. 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átoru URI hostitele, čísla portu, uživatelského jména, hesla a dalších požadovaných parametrů. 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
Dále migrujte data pomocí arcionu. Replikátor Arcion můžete spustit v úplném režimu nebo v režimu snímku :
Plný režim – V tomto režimu se replikátor po migraci dál spouští a naslouchá všem změnám ve zdrojovém systému Apache Cassandra. Pokud zjistí nějaké změny, replikují se do cílového úč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ými výpadky.
Pokud chcete migrovat data, spusťte z terminálu rozhraní příkazového řádku repliky Arcion následující příkaz:
./bin/replicant full conf/conn/cassandra.yaml conf/conn/cosmosdb.yaml --filter filter/cassandra_filter.yaml --replace-existing
Uživatelské rozhraní replikátoru zobrazuje průběh replikace. Po dokončení migrace schématu a operace vytvoření 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 pro 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.
Replikátor můžete zastavit libovolný bod a restartovat ho pomocí přepínače --resume . Replikace se obnoví od bodu, kdy se zastavila, 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 a migraci v reálném čase najdete v ukázce repliky Arcion.