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.

  1. 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
    
  2. 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 .

    Stažení nástroje replikátoru Arcion

    Soubory replikátoru Arcion

  3. 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
    
    

    Otevření editoru připojení Cassandra

    Konfigurace připojení Cassandra

    Po vyplnění podrobností o konfiguraci soubor uložte a zavřete.

  4. 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.

  5. 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.

  6. 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.

    Škálování kontejneru Azure Cosmos DB v rámci celého

    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 .

  7. 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.

  8. 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
    
  9. 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.

  10. 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.

    Výstup migrace dat Cassandra

  11. 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.

  12. 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.

Další kroky