Sdílet prostřednictvím


Začínáme se zachytáváním dat změn v analytickém úložišti pro službu Azure Cosmos DB

PLATÍ PRO: NoSQL MongoDB

Pomocí funkce Change Data Capture (CDC) v analytickém úložišti Azure Cosmos DB jako zdroje pro Azure Data Factory nebo Azure Synapse Analytics zachytávejte konkrétní změny vašich dat.

Poznámka:

Upozorňujeme, že propojené rozhraní služby pro rozhraní API služby Azure Cosmos DB pro MongoDB ještě není v toku dat k dispozici. Koncový bod dokumentu účtu ale budete moct používat s propojeným rozhraním propojené služby Azure Cosmos DB for NoSQL jako alternativní řešení, dokud se propojená služba Mongo nepodporuje. V propojené službě NoSQL zvolte Enter Manually (Zadat ručně) a zadejte informace o účtu Cosmos DB a místo koncového bodu MongoDB (např. ) použijte koncový bod dokumentu účtu (např. https://[your-database-account-uri].documents.azure.com:443/mongodb://[your-database-account-uri].mongo.cosmos.azure.com:10255/)

Požadavky

Povolení analytického úložiště

Nejprve povolte Azure Synapse Link na úrovni účtu a pak povolte analytické úložiště pro kontejnery, které jsou vhodné pro vaši úlohu.

  1. Povolení Azure Synapse Linku: Povolení Azure Synapse Linku pro účet služby Azure Cosmos DB

  2. Povolení analytického úložiště pro kontejnery:

    Možnost Průvodce
    Povolení pro konkrétní nový kontejner Povolení Azure Synapse Linku pro nové kontejnery
    Povolení pro konkrétní existující kontejner Povolení Azure Synapse Linku pro existující kontejnery

Vytvoření cílového prostředku Azure pomocí toků dat

Funkce zachytávání dat změn analytického úložiště je dostupná prostřednictvím funkce toku dat Azure Data Factory nebo Azure Synapse Analytics. Pro tuto příručku použijte Azure Data Factory.

Důležité

Alternativně můžete použít Azure Synapse Analytics. Nejprve vytvořte pracovní prostor Azure Synapse, pokud ho ještě nemáte. V nově vytvořeném pracovním prostoru vyberte kartu Vývoj , vyberte Přidat nový prostředek a pak vyberte Tok dat.

  1. Pokud ji ještě nemáte, vytvořte službu Azure Data Factory.

    Tip

    Pokud je to možné, vytvořte datovou továrnu ve stejné oblasti, ve které se nachází váš účet služby Azure Cosmos DB.

  2. Spusťte nově vytvořenou datovnu.

  3. V datové toku vyberte kartu Toky dat a pak vyberte Nový tok dat.

  4. Dejte nově vytvořenému toku dat jedinečný název. V tomto příkladu je tok dat pojmenován cosmoscdc.

    Screnshot nového toku dat s názvem cosmoscdc.

Konfigurace nastavení zdroje pro kontejner analytického úložiště

Teď vytvořte a nakonfigurujte zdroj pro tok dat z analytického úložiště účtu služby Azure Cosmos DB.

  1. Vyberte Vybrat zdroj.

    Snímek obrazovky s možností přidat zdroj

  2. Do pole Název výstupního datového proudu zadejte cosmos.

    Snímek obrazovky s pojmenováním nově vytvořené zdrojové služby Cosmos

  3. V části Typ zdroje vyberte Vložit.

    Snímek obrazovky s výběrem vloženého typu zdroje

  4. V poli Datová sada vyberte Azure – Azure Cosmos DB for NoSQL.

    Snímek obrazovky s výběrem azure Cosmos DB for NoSQL jako typu datové sady

  5. Vytvořte novou propojenou službu pro svůj účet s názvem cosmoslinkedservice. V automaticky otevírané dialogovém okně Nová propojená služba vyberte existující účet Služby Azure Cosmos DB for NoSQL a pak vyberte OK. V tomto příkladu vybereme existující účet Azure Cosmos DB for NoSQL s názvem msdocs-cosmos-source a databází s názvem cosmicworks.

    Snímek obrazovky s dialogovým oknem Nová propojená služba s vybraným účtem služby Azure Cosmos DB

  6. Jako typ úložiště vyberte Analytické .

    Snímek obrazovky s vybranou analytickou možností pro propojenou službu

  7. Vyberte kartu Možnosti zdroje.

  8. V možnostech zdroje vyberte cílový kontejner a povolte ladění toku dat. V tomto příkladu je kontejner pojmenován products.

    Snímek obrazovky se zdrojovým kontejnerem vybraným pojmenovanými produkty

  9. Vyberte ladění toku dat. V automaticky otevírané dialogovém okně Zapnout ladění toku dat zachovejte výchozí možnosti a pak vyberte OK.

    Snímek obrazovky s možností přepnutí pro povolení ladění toku dat

  10. Karta Možnosti zdroje obsahuje také další možnosti, které můžete povolit. Tato tabulka popisuje tyto možnosti:

Možnost Popis
Zachycení průběžných aktualizací Tuto možnost povolte, pokud chcete zaznamenat historii změn položek, včetně přechodných změn mezi čteními dat změn.
Zachytávání odstranění Tuto možnost povolte, pokud chcete zaznamenat uživatelem odstraněné záznamy a použít je na jímce. Odstranění nejde použít v Azure Data Exploreru a jímkách Azure Cosmos DB.
Zachytávání TTL transakčního úložiště Tuto možnost povolte, pokud chcete zachytit odstraněné záznamy TTL služby Azure Cosmos DB (time-to-live) a použít je na jímce. V Azure Data Exploreru a jímkách Azure Cosmos DB není možné použít hodnoty TTL-delete.
Batchsize in bytes Toto nastavení je ve skutečnosti gigabajty. Zadejte velikost v gigabajtech, pokud chcete dávkot informační kanály pro zachytávání dat změn.
Další konfigurace Extra konfigurace analytického úložiště Azure Cosmos DB a jejich hodnoty (např.: spark.cosmos.allowWhiteSpaceInFieldNames -> true)

Práce s možnostmi zdroje

Když zkontrolujete některou z Capture intermediate updatesCapture Deltesmožností , a Capture Transactional store TTLs možnosti, proces CDC vytvoří a naplní __usr_opType pole v jímce následujícími hodnotami:

Hodnota Popis Možnost
0 UPDATE Zachycení průběžných aktualizací
2 INSERT Možnost vložení není dostupná, ve výchozím nastavení je zapnutá.
3 USER_DELETE Zachytávání odstranění
4 TTL_DELETE Zachytávání TTL transakčního úložiště

Pokud potřebujete odlišit odstraněné záznamy TTL od dokumentů odstraněných uživateli nebo aplikacemi, zkontrolujte obě Capture intermediate updates možnosti a Capture Transactional store TTLs možnosti. Pak musíte přizpůsobit procesy CDC nebo aplikace nebo dotazy tak, aby se používaly __usr_opType podle toho, co je nezbytné pro vaše obchodní potřeby.

Tip

Pokud je potřeba, aby podřízení spotřebitelé obnovili pořadí aktualizací se zaškrtnutou možností zachytit zprostředkující aktualizace, lze jako pole řazení použít pole časového razítka _ts systému.

Vytvoření a konfigurace nastavení jímky pro operace aktualizace a odstranění

Nejprve vytvořte jednoduchou jímku služby Azure Blob Storage a pak nakonfigurujte jímku tak, aby filtruje data pouze na konkrétní operace.

  1. Pokud ho ještě nemáte, vytvořte účet a kontejner Azure Blob Storage . V dalších příkladech použijeme účet s názvem msdocsblobstorage a kontejner s názvem output.

    Tip

    Pokud je to možné, vytvořte účet úložiště ve stejné oblasti, ve které se nachází váš účet služby Azure Cosmos DB.

  2. Zpátky ve službě Azure Data Factory vytvořte novou jímku pro data změn zachycená z vašeho cosmos zdroje.

    Snímek obrazovky s přidáním nové jímky, která je připojená k existujícímu zdroji

  3. Pojmenujte jímku jedinečný název. V tomto příkladu je jímka pojmenována storage.

    Snímek obrazovky s pojmenováním nově vytvořeného úložiště jímky

  4. V části Typ jímky vyberte Vložit. V poli Datová sada vyberte Delta.

    Snímek obrazovky s výběrem typu vložené datové sady Delta pro jímku

  5. Pomocí služby Azure Blob Storage s názvem storagelinkedservice vytvořte pro svůj účet novou propojenou službu. V automaticky otevírané dialogovém okně Nová propojená služba vyberte existující účet služby Azure Blob Storage a pak vyberte OK. V tomto příkladu vybereme předem existující účet služby Azure Blob Storage s názvem msdocsblobstorage.

    Snímek obrazovky s možnostmi typu služby pro novou propojenou službu Delta

    Snímek obrazovky s dialogovým oknem Nová propojená služba s vybraným účtem Azure Blob Storage

  6. Vyberte kartu Nastavení.

  7. V nastavení nastavte cestu ke složce na název kontejneru objektů blob. V tomto příkladu je outputnázev kontejneru .

    Snímek obrazovky kontejneru objektů blob s názvem output set as the sink target

  8. Vyhledejte část Metoda Update a změňte výběry tak, aby povolte pouze operace odstranění a aktualizace. Pomocí pole jako jedinečného identifikátoru také zadejte klíčové sloupce jako seznam sloupců.{_rid}

    Snímek obrazovky s metodami aktualizace a klíčovými sloupci zadanými pro jímku

  9. Vyberte Ověřit, abyste se ujistili, že jste neprovedli žádné chyby nebo vynechání. Pak vyberte Publikovat a publikujte tok dat.

    Snímek obrazovky s možností ověření a publikováním aktuálního toku dat

Naplánování provádění zachytávání dat změn

Po publikování toku dat můžete přidat nový kanál pro přesun a transformaci dat.

  1. Vytvoření nového kanálu. Dejte kanálu jedinečný název. V tomto příkladu se kanál jmenuje cosmoscdcpipeline.

    Snímek obrazovky s novou možností kanálu v oddílu prostředků

  2. V části Aktivity rozbalte možnost Přesunout a transformovat a pak vyberte Tok dat.

    Snímek obrazovky s možností aktivity toku dat v části aktivity

  3. Dejte aktivitě toku dat jedinečný název. V tomto příkladu je aktivita pojmenována cosmoscdcactivity.

  4. Na kartě Nastavení vyberte tok dat, cosmoscdc který jste vytvořili dříve v této příručce. Pak vyberte velikost výpočetních prostředků na základě objemu dat a požadované latence pro vaši úlohu.

    Snímek obrazovky s nastavením konfigurace pro tok dat i velikost výpočetních prostředků pro aktivitu

    Tip

    Pro přírůstkové velikosti dat větší než 100 GB doporučujeme vlastní velikost s počtem jader 32 (+16 jader ovladačů).

  5. Vyberte Přidat aktivační událost. Naplánujte spuštění tohoto kanálu v tempu, které dává smysl pro vaši úlohu. V tomto příkladu je kanál nakonfigurovaný tak, aby se spustil každých pět minut.

    Snímek obrazovky s tlačítkem pro přidání triggeru pro nový kanál

    Snímek obrazovky s konfigurací triggeru na základě plánu počínaje rokem 2023, který se spouští každých pět minut

    Poznámka:

    Minimální interval opakování pro provádění zachytávání dat změn je jedna minuta.

  6. Vyberte Ověřit, abyste se ujistili, že jste neprovedli žádné chyby nebo vynechání. Pak vyberte Publikovat a publikujte kanál.

  7. Prohlédněte si data umístěná do kontejneru Azure Blob Storage jako výstup toku dat pomocí zachytávání dat analytického úložiště Azure Cosmos DB.

    Screnshot výstupních souborů z kanálu v kontejneru Azure Blob Storage.

    Poznámka:

    Počáteční doba spuštění clusteru může trvat až tři minuty. Pokud se chcete vyhnout času spuštění clusteru v následných spuštěních dat změn, nakonfigurujte hodnotu Time toku dat naživo. Další informace o modulu runtime itegration a hodnotě TTL najdete v tématu Prostředí Integration Runtime ve službě Azure Data Factory.

Souběžné úlohy

Velikost dávky ve zdrojových možnostech nebo situacích, kdy je jímka pomalá na příjem datového proudu změn, může způsobit provádění více úloh najednou. Pokud se chcete této situaci vyhnout, nastavte možnost Souběžnost na hodnotu 1 v nastavení kanálu, abyste měli jistotu, že se do dokončení aktuálního spuštění neaktivují nové spuštění.

Další kroky