Sdílet prostřednictvím


Ingestování dat ze služby Event Hubs do Azure Synapse Data Exploreru

Azure Synapse Data Explorer je rychlá a vysoce škálovatelná služba pro zkoumání dat protokolů a telemetrie. Azure Synapse Data Explorer nabízí příjem dat (načítání dat) ze služby Event Hubs, IoT Hubs a objektů blob zapsaných do kontejnerů objektů blob.

Azure Synapse Data Explorer nabízí příjem dat (načítání dat) ze služby Event Hubs, platformu pro streamování velkých objemů dat a službu pro příjem událostí. Event Hubs může zpracovávat miliony událostí za sekundu téměř v reálném čase. V tomto článku vytvoříte službu Event Hubs, připojíte se k ní z Průzkumníka dat Azure Synapse a zobrazíte tok dat v systému.

Požadavky

  • Předplatné Azure. Vytvořte bezplatný účet Azure.

  • Vytvoření fondu Průzkumníka dat pomocí nástroje Synapse Studio nebo webu Azure Portal

  • Vytvořte databázi Průzkumníka dat.

    1. V nástroji Synapse Studio v levém podokně vyberte Data.

    2. Vyberte + fond Průzkumníka dat (přidat nový zdroj) >a použijte následující informace:

      Nastavení Navrhovaná hodnota Popis
      Název fondu contosodataexplorer Název fondu Průzkumníka dat, který se má použít
      Název TestDatabase Název databáze musí být v rámci clusteru jedinečný.
      Výchozí doba uchovávání 365 Časové období (ve dnech), pro které je zaručeno, že jsou data k dispozici pro dotazování. Časový rozsah se začíná měřit od okamžiku, kdy jsou data ingestována.
      Výchozí období mezipaměti 31 Časové období (ve dnech), pro které se mají uchovávat často dotazovaná data dostupná v úložišti SSD nebo paměti RAM, a ne v dlouhodobějším úložišti.
    3. Výběrem možnosti Vytvořit vytvořte databázi. Vytvoření obvykle trvá méně než minutu.

  • Vytvoření cílové tabulky, do které služba Event Hubs bude odesílat data

    1. V nástroji Synapse Studio v levém podokně vyberte Vývoj.

    2. V části Skripty KQL vyberte + (přidat nový prostředek) >skript KQL. V pravém podokně můžete svůj skript pojmenovat.

    3. V nabídce Připojit k vyberte contosodataexplorer.

    4. V nabídce Použít databázi vyberte TestDatabase.

    5. Vložte následující příkaz a výběrem příkazu Spustit vytvořte tabulku.

      .create table TestTable (TimeStamp: datetime, Name: string, Metric: int, Source:string)
      

      Tip

      Ověřte, že se tabulka úspěšně vytvořila. V levém podokně vyberte Data, vyberte další nabídku contosodataexplorer a pak vyberte Aktualizovat. V části contosodataexplorer rozbalte tabulky a ujistěte se, že se v seznamu zobrazuje tabulka TestTable.

    6. Zkopírujte následující příkaz do okna a výběrem možnosti Spustit namapujte příchozí data JSON na názvy sloupců a datové typy tabulky (TestTable).

      .create table TestTable ingestion json mapping 'TestMapping' '[{"column":"TimeStamp", "Properties": {"Path": "$.timeStamp"}},{"column":"Name", "Properties": {"Path":"$.name"}} ,{"column":"Metric", "Properties": {"Path":"$.metric"}}, {"column":"Source", "Properties": {"Path":"$.source"}}]'
      
  • Doporučujeme použít spravovanou identitu přiřazenou uživatelem nebo spravovanou identitu přiřazenou systémem pro datové připojení (volitelné).

  • Ukázková aplikace , která generuje data a odesílá je do centra událostí. Stáhněte si ukázkovou aplikaci do systému.

  • Visual Studio 2019 pro spuštění ukázkové aplikace

Přihlaste se k portálu Azure Portal.

Přihlaste se k portálu Azure.

Vytvoření centra událostí

Vytvořte centrum událostí pomocí šablony Azure Resource Manageru na webu Azure Portal.

  1. Pokud chcete vytvořit centrum událostí, spusťte nasazení pomocí následujícího tlačítka. Klikněte pravým tlačítkem myši a vyberte Otevřít v novém okně, abyste mohli postupovat podle zbývajících kroků v tomto článku.

    Tlačítko pro nasazení šablony Resource Manageru do Azure

    Tlačítko Nasadit do Azure vás přejde na web Azure Portal.

  2. Vyberte předplatné, ve kterém chcete centrum událostí vytvořit, a vytvořte skupinu prostředků s názvem test-hub-rg.

    Vytvoření skupiny zdrojů

  3. Do formuláře zadejte následující informace.

    Pro všechna nastavení, která nejsou uvedená v následující tabulce, použijte výchozí hodnoty.

    Nastavení Navrhovaná hodnota Popis pole
    Předplatné Vaše předplatné Vyberte předplatné Azure, které chcete použít pro službu Event Hubs.
    Skupina prostředků test-hub-rg Vytvoříte novou skupinu prostředků.
    Umístění USA – západ V tomto článku vyberte USA – západ. Pro produkční systém vyberte oblast, která nejlépe vyhovuje vašim potřebám. Vytvořte obor názvů služby Event Hubs ve stejném umístění jako cluster Azure Synapse Data Explorer pro zajištění nejlepšího výkonu (nejdůležitější pro obory názvů služby Event Hubs s vysokou propustností).
    Název oboru názvů Jedinečný název oboru názvů Zvolte jedinečný název, který identifikuje váš obor názvů. Například mytestnamespace. K názvu, který zadáte, bude připojen název domény servicebus.windows.net. Název může obsahovat pouze písmena, číslice a pomlčky. Musí začínat písmenem a končit písmenem nebo číslicí. Počet znaků musí být mezi 6 a 50.
    Název služby Event Hubs test-hub Služba Event Hubs se nachází pod oborem názvů, který poskytuje jedinečný kontejner oborů. Název služby Event Hubs musí být jedinečný v rámci oboru názvů.
    Název skupiny uživatelů test-group Skupiny uživatelů umožňují, aby měla každá z aplikací samostatné zobrazení streamu událostí.
  4. Vyberte Zkontrolovat a vytvořit.

  5. Projděte si souhrn vytvořených prostředků. Vyberte Vytvořit, což potvrzuje, že vytváříte prostředky ve vašem předplatném.

    Snímek obrazovky webu Azure Portal pro kontrolu a vytvoření oboru názvů služby Event Hubs, služby Event Hubs a skupiny příjemců

  6. Pokud chcete proces zřizování monitorovat, vyberte na panelu nástrojů Oznámení. Úspěšné nasazení může trvat několik minut, můžete teď ale přejít na další krok.

    Ikona Oznámení

Důležité informace o ověřování

V závislosti na typu identity se používáte k ověřování ve službě Event Hubs, možná budete potřebovat některé další konfigurace.

  • Pokud se ve službě Event Hubs ověřujete pomocí spravované identity přiřazené uživatelem, přejděte do služby Event Hubs >Networking a pak v části Povolit přístup vyberte Všechny sítě a uložte změny.

    Snímek obrazovky se stránkou sítě služby Event Hubs zobrazující výběr povolení přístupu ke všem sítím

  • Pokud se ve službě Event Hubs ověřujete pomocí spravované identity přiřazené systémem, přejděte do sítě služby Event Hubs> a pak povolte přístup ze všech sítí nebo v části Povolit přístup, vyberte Vybrané sítě, vyberte Povolit důvěryhodné služby Microsoft obejít tuto bránu firewall a uložit změny.

    Snímek obrazovky se stránkou sítě služby Event Hubs zobrazující výběr povolení přístupu k důvěryhodným službám

Připojení ke službě Event Hubs

Teď se připojíte ke službě Event Hubs z fondu Průzkumníka dat. Když je toto připojení na místě, data, která proudí do streamů služby Event Hubs do testovací tabulky, kterou jste vytvořili dříve v tomto článku.

  1. Výběrem možnosti Oznámení na panelu nástrojů ověřte, že nasazení služby Event Hubs proběhlo úspěšně.

  2. Ve fondu Průzkumníka dat, který jste vytvořili, vyberte Databázi>TestDatabase.

    Snímek obrazovky fondu testovacích databází zobrazující výběr testovací databáze

  3. Vyberte Datová připojení a Přidejte datové připojení.

    Vyberte příjem dat a přidejte datové připojení.

Vytvoření datového připojení (Preview)

Vyplňte formulář následujícími informacemi a pak vyberte Vytvořit.

Snímek obrazovky s podoknem datového připojení ve službě Event Hubs

Nastavení Navrhovaná hodnota Popis pole
Název datového připojení test-hub-connection Název připojení, které chcete vytvořit v Průzkumníku dat Azure Synapse.
Předplatné ID předplatného, ve kterém se nachází prostředek služby Event Hubs. Toto pole je automaticky vyplněné.
Obor názvů služby Event Hubs Jedinečný název oboru názvů Název, který jste zvolili dříve a který identifikuje váš obor názvů
Event Hubs test-hub Služba Event Hubs, kterou jste vytvořili.
Skupina uživatelů test-group Skupina příjemců definovaná ve službě Event Hubs, kterou jste vytvořili.
Vlastnosti systému událostí Výběr relevantních vlastností Systémové vlastnosti služby Event Hubs. Pokud existuje více záznamů na zprávu události, vlastnosti systému se přidají do prvního záznamu. Při přidávání systémových vlastností vytvořte nebo aktualizujte schéma tabulky a mapování tak, aby zahrnovalo vybrané vlastnosti.
Komprese Nic Typ komprese datové části zpráv služby Event Hubs. Podporované typy komprese: None, Gzip.
Spravovaná identita Přiřazeno systémem Spravovaná identita používaná clusterem Průzkumníka dat pro přístup ke čtení ze služby Event Hubs.

Poznámka:
Po vytvoření datového připojení:
- Identity přiřazené systémem se automaticky vytvoří, pokud neexistují.
– Spravovaná identita se automaticky přiřadí roli příjemce dat služby Azure Event Hubs a přidá se do clusteru Průzkumníka dat. Doporučujeme ověřit, jestli byla role přiřazená a že se identita přidala do clusteru.

Cílová tabulka

Existují dvě možnosti směrování přijatých dat: statická a dynamická. V tomto článku použijete statické směrování, kde zadáte název tabulky, formát dat a mapování jako výchozí hodnoty. Pokud zpráva služby Event Hubs obsahuje informace o směrování dat, tyto informace o směrování přepíší výchozí nastavení.

  1. Vyplňte následující nastavení směrování:

    Výchozí nastavení směrování pro příjem dat do služby Event Hubs – Azure Synapse Data Explorer.

    Nastavení Navrhovaná hodnota Popis pole
    Název tabulky TestTable Tabulka, kterou jste vytvořili v databázi TestDatabase
    Formát dat JSON Podporované formáty jsou Avro, CSV, JSON, MULTILINE JSON, ORC, PARQUET, PSV, SCSV, SOHSV, TSV, TXT, TSVE, APACHEAVRO a W3CLOG.
    mapování. TestMapping Mapování, které jste vytvořili v TestDatabase, které mapuje příchozí data na názvy sloupců a datové typy TestTable. Povinné pro JSON, MULTILINE JSON a AVRO a volitelné pro jiné formáty.

    Poznámka:

    • Nemusíte zadávat všechna výchozí nastavení směrování. Jsou také přijata částečná nastavení.
    • Po vytvoření datového připojení se ingestují pouze události, které se zařadí do fronty.
  2. Vyberte Vytvořit.

Mapování vlastností systému událostí

Poznámka:

  • Systémové vlastnosti jsou podporovány pro json a tabulkové formáty (tsvcsvatd.) a nejsou podporovány u komprimovaných dat. Při použití nepodporovaného formátu budou data stále ingestována, ale vlastnosti budou ignorovány.
  • U tabulkových dat jsou systémové vlastnosti podporovány pouze pro zprávy událostí s jedním záznamem.
  • U dat JSON jsou pro zprávy událostí s více záznamy podporovány také systémové vlastnosti. V takových případech se systémové vlastnosti přidají pouze k prvnímu záznamu zprávy události.
  • Pro csv mapování se vlastnosti přidají na začátek záznamu v pořadí uvedeném v tabulce Vlastností systému.
  • Pro json mapování se vlastnosti přidají podle názvů vlastností v tabulce Vlastností systému.

Pokud jste v části Zdroj dat tabulky vybrali systémové vlastnosti událostí, musíte do schématu tabulky a mapování zahrnout systémové vlastnosti.

Zkopírování připojovacího řetězce

Když spustíte ukázkovou aplikaci uvedenou v části Požadavky, potřebujete připojovací řetězec pro obor názvů služby Event Hubs.

  1. V oboru názvů služby Event Hubs, který jste vytvořili, vyberte zásady sdíleného přístupu a pak RootManageSharedAccessKey.

    Zásady sdíleného přístupu

  2. Zkopírujte připojovací řetězec – primární klíč. Tuto hodnotu vložíte v další části.

    Připojovací řetězec.

Generování ukázkových dat

K vygenerování dat použijte ukázkovou aplikaci, kterou jste stáhli.

Upozorňující

Tato ukázka používá pro zjednodušení příkladu ověřování připojovací řetězec pro připojení ke službě Event Hubs. Pevné kódování připojovací řetězec do skriptu však vyžaduje velmi vysoký stupeň důvěryhodnosti v aplikaci a nese bezpečnostní rizika.

Pro dlouhodobá zabezpečená řešení použijte jednu z těchto možností:

  1. Otevřete řešení ukázkové aplikace v sadě Visual Studio.

  2. V souboru program.cs aktualizujte konstantu eventHubName na název služby Event Hubs a aktualizujte konstantu connectionString na připojovací řetězec jste zkopírovali z oboru názvů služby Event Hubs.

    const string eventHubName = "test-hub";
    // Copy the connection string ("Connection string-primary key") from your Event Hub namespace.
    const string connectionString = @"<YourConnectionString>";
    
  3. Sestavte a spusťte aplikaci. Aplikace odesílá zprávy do služby Event Hubs a každých 10 sekund vytiskne její stav.

  4. Jakmile aplikace odešle několik zpráv, přejděte k dalšímu kroku: zkontrolujte tok dat do služby Event Hubs a testovací tabulku.

Kontrola toku dat

S aplikací, která generuje data, teď uvidíte tok těchto dat ze služby Event Hubs do tabulky ve vašem clusteru.

  1. Na webu Azure Portal se v rámci služby Event Hubs zobrazuje špička v aktivitě, když je aplikace spuštěná.

    Graf centra událostí

  2. Pokud chcete zkontrolovat, kolik zpráv se zatím dostalo do databáze, spusťte v testovací databázi následující dotaz.

    TestTable
    | count
    
  3. Pokud chcete zobrazit obsah zpráv, spusťte následující dotaz:

    TestTable
    

    Sada výsledků by měla vypadat jako na následujícím obrázku:

    Sada výsledků zprávy

    Poznámka:

    • Azure Synapse Data Explorer má zásadu agregace (dávkování) pro příjem dat, která je navržená k optimalizaci procesu příjmu dat. Výchozí zásada dávkování je nakonfigurovaná tak, aby zapečetila dávku jednou z následujících podmínek: maximální doba zpoždění 5 minut, celková velikost 1G nebo 1000 objektů blob. Proto může docházet k latenci. Další informace najdete v tématu Zásady dávkování.
    • Příjem dat centra událostí zahrnuje dobu odezvy centra událostí 10 sekund nebo 1 MB.
    • Pokud chcete zkrátit dobu odezvy, nakonfigurujte tabulku tak, aby podporovala streamování. Viz zásady streamování.

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

Pokud nechcete službu Event Hubs znovu používat, vyčistěte test-hub-rg, abyste se vyhnuli účtování nákladů.

  1. Úplně nalevo na webu Azure Portal vyberte Skupiny prostředků a pak vyberte skupinu prostředků, kterou jste vytvořili.

    Pokud je nabídka vlevo sbalená, vyberte Tlačítko Rozbalit. ji a rozbalte ji.

    Vyberte skupinu prostředků, která se má odstranit.

  2. Ve skupině prostředků test-resource-group vyberte Odstranit skupinu prostředků.

  3. V novém okně zadejte název skupiny prostředků, kterou chcete odstranit (test-resource-group), a pak vyberte Odstranit.

Další kroky