Kopírování dat a odesílání e-mailových oznámení o úspěchu a selhání

PLATÍ PRO: Azure Data Factory Azure Synapse Analytics

Tip

Vyzkoušejte si službu Data Factory v Microsoft Fabric, řešení pro analýzy typu all-in-one pro podniky. Microsoft Fabric zahrnuje všechno od přesunu dat až po datové vědy, analýzy v reálném čase, business intelligence a vytváření sestav. Přečtěte si, jak začít používat novou zkušební verzi zdarma.

V tomto kurzu vytvoříte kanál služby Data Factory, který prezentuje některé funkce řízení toku. Tento kanál provádí jednoduché kopírování z kontejneru ve službě Azure Blob Storage do jiného kontejneru ve stejném účtu úložiště. Pokud aktivita kopírování proběhne úspěšně, kanál odešle podrobnosti o úspěšném kopírování (jako je například množství zapsaných dat) v e-mailu informujícím o úspěchu. Pokud aktivita kopírování selže, kanál odešle podrobnosti o neúspěšném kopírování (jako je například chybová zpráva) v e-mailu informujícím o selhání. V rámci tohoto kurzu se dozvíte, jak předávat parametry.

Základní přehled scénáře: Diagram znázorňuje Službu Azure Blob Storage, což je cíl kopie, která při úspěchu odešle e-mail s podrobnostmi nebo při selhání odešle e-mail s podrobnostmi o chybě.

V tomto kurzu provedete následující kroky:

  • Vytvoření datové továrny
  • Vytvoření propojené služby Azure Storage
  • Vytvoření datové sady Azure Blob
  • Vytvoření kanálu obsahujícího aktivitu kopírování a aktivitu webu
  • Odeslání výstupů aktivit následným aktivitám
  • Využití předávání parametrů a systémových proměnných
  • Spuštění kanálu
  • Monitorování spuštění aktivit a kanálu

Tento kurz používá Azure Portal. K interakci s Azure Data Factory můžete použít další mechanismy – podívejte se v obsahu na téma Šablony Rychlý start.

Požadavky

  • Předplatné Azure. Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.
  • Účet služby Azure Storage. Úložiště objektů blob použijete jako zdrojové úložiště dat. Pokud nemáte účet úložiště Azure, přečtěte si článek Vytvoření účtu úložiště, kde najdete kroky pro jeho vytvoření.
  • Azure SQL Database Tuto databázi použijete jako úložiště dat jímky. Pokud ve službě Azure SQL Database nemáte databázi, přečtěte si článek Vytvoření databáze ve službě Azure SQL Database , kde najdete postup jeho vytvoření.

Vytvoření tabulky objektů blob

  1. Spusťte Poznámkový blok. Zkopírujte následující text a uložte ho na disk jako soubor input.txt.

    John,Doe
    Jane,Doe
    
  2. Pomocí nástroje, jako je například Průzkumník služby Azure Storage, proveďte následující kroky:

    1. Vytvořte kontejner adfv2branch.
    2. V kontejneru adfv2branch vytvořte vstupní složku.
    3. Nahrajte do kontejneru soubor input.txt.

Vytvoření koncových bodů pracovního postupu pro e-maily

K aktivaci odesílání e-mailů z kanálu použijete Azure Logic Apps k definování pracovního postupu. Další informace o vytvoření pracovního postupu aplikace logiky najdete v tématu Vytvoření ukázkového pracovního postupu aplikace logiky Consumption.

Pracovní postup pro e-maily s informací o úspěchu

Vytvořte pracovní postup aplikace logiky Consumption s názvem CopySuccessEmail. Přidejte trigger požadavku s názvem Při přijetí požadavku HTTP a přidejte akci Office 365 Outlook s názvem Odeslat e-mail. Pokud se zobrazí výzva, přihlaste se ke svému účtu Office 365 Outlook.

Zobrazuje snímek obrazovky pracovního postupu úspěšného e-mailu.

V případě triggeru požadavku vyplňte do pole Základní schéma JSON požadavku následující kód JSON:

{
    "properties": {
        "dataFactoryName": {
            "type": "string"
        },
        "message": {
            "type": "string"
        },
        "pipelineName": {
            "type": "string"
        },
        "receiver": {
            "type": "string"
        }
    },
    "type": "object"
}

Trigger požadavku v návrháři pracovního postupu by měl vypadat jako na následujícím obrázku:

Zobrazuje snímek obrazovky návrháře pracovního postupu s triggerem požadavku.

V případě akce Odeslat e-mail upravte způsob formátování e-mailu pomocí vlastností předaných ve schématu JSON textu požadavku. Zde je příklad:

Zobrazuje snímek obrazovky návrháře pracovního postupu s akcí s názvem Odeslat e-mail.

Uložte pracovní postup. Poznamenejte si adresu URL žádosti HTTP Post pro pracovní postup pro e-maily s informací o neúspěchu:

//Success Request Url
https://prodxxx.eastus.logic.azure.com:443/workflows/000000/triggers/manual/paths/invoke?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=000000

Pracovní postup pro e-maily s informací o úspěchu

Stejným postupem vytvořte jiný pracovní postup aplikace logiky s názvem CopyFailEmail. V triggeru požadavku je stejná hodnota schématu JSON textu požadavku. Změňte formát e-mailu, například Subject, tak, aby to odpovídalo neúspěchu. Zde je příklad:

Zobrazuje snímek obrazovky návrháře pracovního postupu s neúspěšným e-mailovým pracovním postupem.

Uložte pracovní postup. Poznamenejte si adresu URL žádosti HTTP Post pro pracovní postup pro e-maily s informací o neúspěchu:

//Fail Request Url
https://prodxxx.eastus.logic.azure.com:443/workflows/000000/triggers/manual/paths/invoke?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=000000

Teď byste měli mít dvě adresy URL pracovního postupu:

//Success Request Url
https://prodxxx.eastus.logic.azure.com:443/workflows/000000/triggers/manual/paths/invoke?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=000000

//Fail Request Url
https://prodxxx.eastus.logic.azure.com:443/workflows/000000/triggers/manual/paths/invoke?api-version=2016-10-01&sp=%2Ftriggers%2Fmanual%2Frun&sv=1.0&sig=000000

Vytvoření datové továrny

  1. Spusťte webový prohlížeč Microsoft Edge nebo Google Chrome. Uživatelské rozhraní služby Data Factory podporují v současnosti jenom webové prohlížeče Microsoft Edge a Google Chrome.

  2. Rozbalte nabídku vlevo nahoře a vyberte Vytvořit prostředek. Pak vyberte >Integration>Data Factory:

    Zobrazuje snímek obrazovky s

    Zobrazuje snímek obrazovky s výběrem služby Data Factory v části

  3. Na stránce Nová datová továrna jako název zadejte ADFTutorialDataFactory.

    Stránka Nová datová továrna

    Název objektu pro vytváření dat Azure musí být globálně jedinečný. Pokud se zobrazí následující chyba, změňte název objektu pro vytváření dat (třeba na váš_název_ADFTutorialDataFactory) a zkuste to znovu. Pravidla pojmenování artefaktů služby Data Factory najdete v článku Data Factory – pravidla pojmenování.

    Název datové továrny ADFTutorialDataFactory není k dispozici.

  4. Vyberte své předplatné Azure, ve kterém chcete vytvořit datovou továrnu.

  5. Pro Skupinu prostředků proveďte jeden z následujících kroků:

  6. Jako verzi vyberte V2.

  7. Vyberte umístění pro objekt pro vytváření dat. V rozevíracím seznamu se zobrazí pouze podporovaná umístění. Úložiště dat (Azure Storage, Azure SQL Database atd.) a výpočetní prostředí (HDInsight atd.) používané datovou továrnou mohou být v jiných oblastech.

  8. Zaškrtněte Připnout na řídicí panel.

  9. Klikněte na Vytvořit.

  10. Po vytvoření se zobrazí stránka Datová továrna, jak je znázorněno na obrázku.

    Zobrazuje snímek obrazovky domovské stránky datové továrny.

  11. Kliknutím na otevřít dlaždici Azure Data Factory Studio spusťte uživatelské rozhraní (UI) služby Azure Data Factory na samostatné kartě.

Vytvořit kanál

V tomto kroku vytvoříte kanál s jednou aktivitou kopírování a dvěma aktivitami webu. K vytvoření kanálu použijete následující funkce:

  • Parametry pro kanál, ke kterým přistupují datové sady.
  • Webová aktivita, která vyvolá pracovní postupy aplikace logiky pro odeslání e-mailů informujících o úspěchu nebo selhání.
  • Připojení jedné aktivity k jiné aktivitě (v případ úspěchu a selhání)
  • Použití výstupu aktivity jako vstupu pro další aktivitu
  1. Na domovské stránce uživatelského rozhraní služby Data Factory klikněte na dlaždici Orchestrate .

    Zobrazuje snímek obrazovky domovské stránky datové továrny se zvýrazněnou dlaždicí Orchestrate.

  2. V okně Vlastnosti kanálu přepněte na kartu Parametry a pomocí tlačítka Nový přidejte následující tři parametry typu řetězec: sourceBlobContainer, sinkBlobContainer a receiver.

    • sourceBlobContainer – parametr kanálu využívaný zdrojovou datovou sadou objektů blob.
    • sinkBlobContainer – parametr v kanálu spotřebovaném datovou sadou objektů blob jímky
    • receiver – tento parametr se používá ve dvou webových aktivitách v kanálu, které odesílají příjemci e-maily o úspěchu nebo selhání, jejichž e-mailová adresa je určena tímto parametrem.

    Zobrazuje snímek obrazovky s nabídkou Nový kanál.

  3. Na panelu nástrojů Aktivity vyhledejte možnost Kopírovat a přetáhněte aktivitu kopírování na plochu návrháře kanálu.

    Ukazuje snímek obrazovky ukazující, jak přetáhnout aktivitu kopírování do návrháře kanálu.

  4. Vyberte aktivitu kopírování, kterou jste přetáhli na plochu návrháře kanálu. V okně Vlastnosti aktivity Kopírování přepněte v dolní části na kartu Zdroj a klikněte na + Nový. V tomto kroku vytvoříte zdrojovou datovou sadu pro aktivitu kopírování.

    Snímek obrazovky, který ukazuje, jak vytvořit zdrojovou datovou sadu pro aktivitu kopírování

  5. V okně Nová datová sada vyberte v horní části kartu Azure a pak zvolte Azure Blob Storage a pak vyberte Pokračovat.

    Zobrazuje snímek obrazovky s tlačítkem Azure Blob Storage.

  6. V okně Vybrat formát zvolte Oddělovač a vyberte Pokračovat.

    Zobrazuje snímek obrazovky s

  7. Zobrazí se nová karta s názvem Nastavit vlastnosti. Změňte název datové sady na SourceBlobDataset. Vyberte rozevírací seznam Propojená služba a zvolte +Nový a vytvořte novou propojenou službu se zdrojovou datovou sadou.

    Zobrazuje snímek obrazovky s

  8. Zobrazí se okno Nová propojená služba , kde můžete vyplnit požadované vlastnosti propojené služby.

    Zobrazuje snímek obrazovky s oknem připojení datové sady se zvýrazněným tlačítkem nová propojená služba.

  9. V okně Nová propojená služba proveďte následující kroky:

    1. Jako Název zadejte AzureStorageLinkedService.
    2. Jako Název účtu úložiště vyberte svůj účet úložiště Azure.
    3. Klikněte na Vytvořit.
  10. V okně Nastavit vlastnosti, které se zobrazí dále, vyberte Otevřít tuto datovou sadu a zadejte parametrizovanou hodnotu názvu souboru.

    Zobrazuje snímek obrazovky s datovou sadou

  11. Jako složku zadejte @pipeline().parameters.sourceBlobContainer a jako název souboru zadejte emp.txt.

    Zobrazuje snímek obrazovky s nastavením zdrojové datové sady.

  12. Přepněte zpět na kartu kanálu (nebo klikněte na kanál ve stromovém zobrazení vlevo) a vyberte aktivitu kopírování v návrháři. Ověřte, že je pro zdrojovou datovou sadu vybraná nová datová sada.

    Zobrazuje snímek obrazovky se zdrojovou datovou sadou.

  13. V okně Vlastnosti přepněte na kartu Jímka a klikněte na + Nová v části Datová sada jímky. V tomto kroku pro aktivitu kopírování vytvoříte datovou sadu jímky podobným způsobem, jako jste vytvořili zdrojovou datovou sadu.

    Zobrazuje snímek obrazovky s tlačítkem nová datová sada jímky.

  14. V okně Nová datová sada vyberte Azure Blob Storage a klikněte na Pokračovat a pak znovu v okně Vybrat formát vyberte Oddělovač a znovu klikněte na Pokračovat.

  15. Na stránce Nastavit vlastnosti datové sady zadejte SinkBlobDataset pro Název a vyberte AzureStorageLinkedService pro LinkedService.

  16. Rozbalte část Upřesnit na stránce vlastností a vyberte Otevřít tuto datovou sadu.

  17. Na kartě Připojení datové sady upravte cestu k souboru. Zadejte @pipeline().parameters.sinkBlobContainer složku a @concat(pipeline().RunId, '.txt') název souboru. Tento výraz jako název souboru používá ID aktuálního spuštění kanálu. Seznam podporovaných systémových proměnných a výrazů najdete v tématech Systémové proměnné a Jazyk výrazů.

    Zobrazuje snímek obrazovky s nastavením datové sady jímky.

  18. Přepněte zpět na kartu kanálu v horní části. Vyhledejte web ve vyhledávacím poli a přetáhněte webovou aktivitu na plochu návrháře kanálu. Nastavte název aktivity na SendSuccessEmailActivity. Aktivita webu umožňuje volání libovolného koncového bodu REST. Další informace o této aktivitě najdete v tématu věnovaném aktivitě webu. Tento kanál používá aktivitu webu pro volání pracovního postupu pro e-maily Logic Apps.

    Ukazuje snímek obrazovky ukazující, jak přetáhnout první webovou aktivitu.

  19. Z karty Obecné přepněte na kartu Nastavení a proveďte následující kroky:

    1. Jako Adresa URL zadejte adresu URL pracovního postupu aplikace logiky, který odešle e-mail informující o úspěchu.

    2. Jako Metoda vyberte POST.

    3. V části Záhlaví klikněte na odkaz + Přidat záhlaví.

    4. Přidejte záhlaví Content-Type a nastavte ho na hodnotu application/json.

    5. Jako Text zadejte následující kód JSON.

      {
          "message": "@{activity('Copy1').output.dataWritten}",
          "dataFactoryName": "@{pipeline().DataFactory}",
          "pipelineName": "@{pipeline().Pipeline}",
          "receiver": "@pipeline().parameters.receiver"
      }
      

      Text zprávy obsahuje následující vlastnosti:

      • Message - Passing value of @{activity('Copy1').output.dataWritten. Má přístup k vlastnosti předchozí aktivity kopírování a předává hodnotu dataWritten. V případě neúspěchu předejte výstup chyby místo @{activity('CopyBlobtoBlob').error.message.

      • Název služby Data Factory – Předání hodnoty @{pipeline().DataFactory} Toto je systémová proměnná, která umožňuje přístup k odpovídajícímu názvu objektu pro vytváření dat. Seznam systémových proměnných najdete v článku Systémové proměnné.

      • Název kanálu – Předání hodnoty @{pipeline().Pipeline}. Toto je také systémová proměnná, která umožňuje přístup k názvu odpovídajícího kanálu.

      • Receiver – Předání hodnoty "@pipeline().parameters.receiver"). Má přístup k parametrům kanálu.

        Zobrazuje snímek obrazovky s nastavením první webové aktivity.

  20. Připojte aktivitu kopírování k webové aktivitě přetažením zeleného tlačítka zaškrtávacího políčka vedle aktivita Copy a přetažením na webovou aktivitu.

    Ukazuje snímek obrazovky ukazující, jak připojit aktivita Copy k první webové aktivitě.

  21. Přetáhněte z panelu nástrojů Aktivity na plochu návrháře kanálu další aktivitu Web a nastavte její název na SendFailureEmailActivity.

    Zobrazuje snímek obrazovky s názvem druhé webové aktivity.

  22. Přepněte na kartu Nastavení a proveďte následující kroky:

    1. Jako Adresa URL zadejte adresu URL pracovního postupu aplikace logiky, který odešle e-mail informující o selhání.

    2. Jako Metoda vyberte POST.

    3. V části Záhlaví klikněte na odkaz + Přidat záhlaví.

    4. Přidejte záhlaví Content-Type a nastavte ho na hodnotu application/json.

    5. Jako Text zadejte následující kód JSON.

      {
          "message": "@{activity('Copy1').error.message}",
          "dataFactoryName": "@{pipeline().DataFactory}",
          "pipelineName": "@{pipeline().Pipeline}",
          "receiver": "@pipeline().parameters.receiver"
      }
      

      Zobrazuje snímek obrazovky s nastavením druhé webové aktivity.

  23. Vyberte červené tlačítko X na pravé straně aktivity kopírování v návrháři kanálu a přetáhněte ho na SendFailureEmailActivity, který jste právě vytvořili .

    Snímek obrazovky znázorňující výběr možnosti Chyba v aktivita Copy v návrháři kanálu

  24. Pokud chcete kanál ověřit, klikněte na tlačítko Ověřit na panelu nástrojů. Zavřete okno Výstup ověření kanálu kliknutím na tlačítko >>.

    Zobrazuje snímek obrazovky s tlačítkem Ověřit kanál.

  25. Pokud chcete publikovat entity (datové sady, kanály atd.) do služby Data Factory, vyberte Publikovat vše. Počkejte, dokud se nezobrazí zpráva Publikování proběhlo úspěšně.

    Zobrazuje snímek obrazovky s tlačítkem Publikovat na portálu datové továrny.

Aktivace spuštění kanálu, které proběhne úspěšně

  1. Pokud chcete aktivovat spuštění kanálu, klikněte na Aktivační událost na panelu nástrojů a pak klikněte na Aktivovat.

    Zobrazuje snímek obrazovky s tlačítkem Aktivovat.

  2. V okně Spuštění kanálu proveďte následující kroky:

    1. Jako hodnotu parametru sourceBlobContainer zadejte adftutorial/adfv2branch/input.

    2. Jako hodnotu parametru sinkBlobContainer zadejte adftutorial/adfv2branch/output.

    3. Zadejte e-mailovou adresupříjemce.

    4. Klikněte na Dokončit.

      Parametry spuštění kanálu

Monitorování úspěšného spuštění kanálu

  1. Pokud chcete monitorovat spuštění kanálu, přepněte na kartu Monitorování na levé straně. Zobrazí se spuštění kanálu, které jste ručně aktivovali. Pomocí tlačítka Aktualizovat seznam aktualizujte.

    Úspěšné spuštění kanálu

  2. Pokud chcete zobrazit spuštění aktivit související se spuštěním kanálu, klikněte na první odkaz ve sloupci Akce. Zpět na předchozí zobrazení můžete přepnout kliknutím na Kanály v horní části. Pomocí tlačítka Aktualizovat seznam aktualizujte.

    Snímek obrazovky znázorňující, jak zobrazit seznam spuštění aktivit

Aktivace spuštění kanálu, které selže

  1. Vlevo přepněte na kartu Upravit.

  2. Pokud chcete aktivovat spuštění kanálu, klikněte na Aktivační událost na panelu nástrojů a pak klikněte na Aktivovat.

  3. V okně Spuštění kanálu proveďte následující kroky:

    1. Jako hodnotu parametru sourceBlobContainer zadejte adftutorial/dummy/input. Ujistěte se, že v kontejneru adftutorial neexistuje složka dummy.
    2. Jako hodnotu parametru sinkBlobContainer zadejte adftutorial/dummy/output.
    3. Zadejte e-mailovou adresupříjemce.
    4. Klikněte na Finish (Dokončit).

Monitorování neúspěšného spuštění kanálu

  1. Pokud chcete monitorovat spuštění kanálu, přepněte na kartu Monitorování na levé straně. Zobrazí se spuštění kanálu, které jste ručně aktivovali. Pomocí tlačítka Aktualizovat seznam aktualizujte.

    Neúspěšné spuštění kanálu

  2. Kliknutím na odkaz Chyba pro spuštění kanálu zobrazíte podrobnosti o chybě.

    Chyba kanálu

  3. Pokud chcete zobrazit spuštění aktivit související se spuštěním kanálu, klikněte na první odkaz ve sloupci Akce. Pomocí tlačítka Aktualizovat seznam aktualizujte. Všimněte si, že aktivita kopírování v kanálu selhala. Aktivita webu úspěšně odeslala zadanému příjemci e-mail informující o chybě.

    Spuštění aktivit

  4. Kliknutím na odkaz Chyba ve sloupci Akce zobrazte podrobnosti o chybě.

    Chyba spuštění aktivit

V tomto kurzu jste provedli následující kroky:

  • Vytvoření datové továrny
  • Vytvoření propojené služby Azure Storage
  • Vytvoření datové sady Azure Blob
  • Vytvoření kanálu, který obsahuje aktivitu kopírování a aktivitu webu
  • Odeslání výstupů aktivit následným aktivitám
  • Využití předávání parametrů a systémových proměnných
  • Spuštění kanálu
  • Monitorování spuštění aktivit a kanálu

Teď můžete přejít k části Koncepty, která obsahuje další informace o Azure Data Factory.