Kurz: migrace dat na účet rozhraní API Cassandra

PLATÍ pro: rozhraní API Cassandra

Jako vývojář můžete mít stávající Cassandra úlohy, které běží místně nebo v cloudu, a můžete je chtít migrovat do Azure. Tyto úlohy můžete migrovat na účet rozhraní API Cassandra v Azure Cosmos DB. V tomto kurzu najdete informace o různých možnostech, které jsou k dispozici pro migraci dat Apache Cassandra do účtu rozhraní API Cassandra v Azure Cosmos DB.

Tento kurz se zabývá následujícími úkony:

  • Plánování migrace
  • Požadavky na migraci
  • Migrace dat pomocí cqlsh COPY příkazu
  • Migrace dat pomocí Sparku

Pokud ještě nemáte předplatné Azure, vytvořte si bezplatný účet před tím, než začnete.

Požadavky na migraci

  • Odhad vašich potřeb propustnosti: Před migrací dat na účet rozhraní API Cassandra v Azure Cosmos DB byste měli odhadnout nároky na propustnost vašich úloh. Obecně je třeba začít s průměrnou propustností požadovanou operacemi CRUD a pak zahrnout další propustnost vyžadovanou pro extrakci transformačního načtení nebo nárazové operace. K naplánování migrace budete potřebovat následující podrobnosti:

    • Velikost stávajících dat nebo odhadovanou velikost dat: Definuje minimální požadavky na velikost a propustnost databáze. Pokud odhaduje velikost dat pro novou aplikaci, můžete předpokládat, že data jsou rovnoměrně rozložena napříč řádky, a odhadnout hodnotu vynásobením velikosti dat.

    • Požadovaná propustnost: Přibližná míra propustnosti čtení (dotazů/získání) a zápis (aktualizace/odstranění/vložení) operací. Tato hodnota je nutná k výpočtu požadovaných jednotek žádosti spolu s velikostí dat ustáleného stavu.

    • Schéma: Připojte se ke stávajícímu clusteru Cassandra prostřednictvím cqlsh a exportujte schéma z Cassandra:

      cqlsh [IP] "-e DESC SCHEMA" > orig_schema.cql
      

      Až zjistíte požadavky na stávající zatížení, vytvořte účet Azure Cosmos DB, databázi a kontejnery podle shromážděných požadavků na propustnost.

    • Určení poplatků za ru za operaci: Ru můžete určit pomocí kterékoli sady SDK podporované rozhraní API Cassandra. Tento příklad ukazuje získání poplatků za RU pro verzi .NET.

      var tableInsertStatement = table.Insert(sampleEntity);
      var insertResult = await tableInsertStatement.ExecuteAsync();
      
      foreach (string key in insertResult.Info.IncomingPayload)
        {
           byte[] valueInBytes = customPayload[key];
           double value = Encoding.UTF8.GetString(valueInBytes);
           Console.WriteLine($"CustomPayload:  {key}: {value}");
        }
      
  • Přidělení požadované propustnosti: Azure Cosmos DB dokáže automaticky škálovat úložiště a propustnost podle vašich rostoucích požadavků. S odhadem vašich potřeb z hlediska propustnosti vám pomůže kalkulačka jednotek žádostí služby Azure Cosmos DB.

  • Vytvořte v účtu rozhraní API Cassandra tabulky: Před zahájením migrace dat Představte všechny tabulky z Azure Portal nebo z cqlsh . Pokud provádíte migraci na účet Azure Cosmos DB, který má propustnost na úrovni databáze, nezapomeňte při vytváření kontejnerů zadat klíč oddílu.

  • Zvýšená propustnost: Doba trvání migrace dat závisí na propustnosti, kterou pro tabulky v Azure Cosmos DB zřídíte. Po dobu trvání migrace propustnost zvyšte. Vyšší propustnost vám umožní zabránit omezování rychlosti a zkrátit dobu migrace. Po dokončení migrace propustnost snižte, abyste dosáhli nižších nákladů. Doporučujeme také, abyste měli účet Azure Cosmos DB ve stejné oblasti jako zdrojová databáze.

  • Povolit protokol TLS: Azure Cosmos DB má přísné požadavky na zabezpečení a standardy. Při interakci s vaším účtem Nezapomeňte povolit protokol TLS. Při použití CQL s protokolem SSH máte možnost zadat informace o protokolu TLS.

Možnosti migrace dat

Data z existujících úloh Cassandra můžete přesunout do Azure Cosmos DB pomocí cqlsh COPY příkazu nebo pomocí Sparku.

Migrace dat pomocí příkazu cqlsh COPY

Pomocí příkazu CQL Copy zkopírujte místní data do účtu rozhraní API Cassandra v Azure Cosmos DB.

  1. Získejte informace o připojovacím řetězci vašeho účtu rozhraní API Cassandra:

    • Přihlaste se k Azure Portala pokračujte na účet Azure Cosmos DB.

    • Otevřete podokno připojovací řetězec . Tady vidíte všechny informace, které potřebujete ke svému účtu rozhraní API Cassandra připojit z cqlsh .

  2. Přihlaste se k cqlsh pomocí informací o připojení z portálu.

  3. Pomocí CQL COPY příkazu zkopírujte místní data do účtu rozhraní API Cassandra.

    COPY exampleks.tablename FROM filefolderx/*.csv 
    

Migrace dat pomocí Sparku

Pomocí následujících kroků migrujte data na účet rozhraní API Cassandra pomocí Sparku:

  1. Zřídí cluster Azure Databricks nebo cluster Azure HDInsight.

  2. Přesuňte data do cílového koncového bodu rozhraní API Cassandra pomocí operace kopírování tabulky.

Migrace dat pomocí úloh Spark je doporučená možnost, pokud máte data umístěná v existujícím clusteru na virtuálních počítačích Azure nebo v jakémkoli jiném cloudu. Chcete-li to provést, musíte nastavit Spark jako prostředník pro jednorázovou nebo běžnou podobu příjmu. Tuto migraci můžete zrychlit pomocí připojení Azure ExpressRoute mezi místním prostředím a Azure.

Vyčištění prostředků

Pokud už je nepotřebujete, můžete odstranit skupinu prostředků, účet Azure Cosmos DB a všechny související prostředky. Pokud to chcete udělat, vyberte skupinu prostředků pro virtuální počítač, vyberte Odstranit a pak potvrďte název skupiny prostředků, která se má odstranit.

Další kroky

V tomto kurzu jste se naučili, jak migrovat data na účet rozhraní API Cassandra v Azure Cosmos DB. Nyní se můžete dozvědět o dalších konceptech v Azure Cosmos DB: