Använda beräkningsomvandlar i Azure Data Factory

Slutförd

I vissa fall kanske den kodfria transformeringen i stor skala inte uppfyller dina krav. Du kan använda Azure Data Factory för att mata in rådata som samlats in från olika källor och arbeta med en mängd beräkningsresurser som Azure Databricks, Azure HDInsight eller andra beräkningsresurser för att strukturera om dem enligt dina behov.

ADF och Azure Databricks

Integreringen av Azure Databricks med ADF gör till exempel att du kan lägga till Databricks-anteckningsböcker i en ADF-pipeline för att utnyttja funktionerna för analys och datatransformering i Databricks. Du kan lägga till en notebook-fil i arbetsflödet för att strukturera och transformera rådata som läses in till ADF från olika källor. När data har transformerats med Databricks kan du sedan läsa in dem till valfritt informationslager.

Inmatningen och transformeringen av data med funktionerna i ADF och Azure Databricks går i stora drag till så här:

  1. Skapa Ett Azure-lagringskonto – Det första steget är att skapa ett Azure Storage-konto där du lagrar indata som matas in och transformeras.

  2. Skapa en Azure Data Factory – när du har ett lagringskonto måste du skapa en Azure Data Factory via Azure Portal.

  3. Skapa en pipeline i arbetsflödet – när du har ordnat med lagring och en ADF börjar du med att skapa en pipeline, där det första steget är att kopiera data från källan med kopieringsaktiviteterna i ADF. Du kan kopiera data från olika lokala och molnbaserade källor.

  4. Lägga till en notebook-fil för Databricks i pipelinen – när data kopieras till ADF lägger du sedan till en notebook-fil för Databricks i pipelinen, efter kopieringsaktiviteten. Den här notebook-filen kan innehålla syntax och kod för att transformera och rensa rådata efter behov.

  5. Analysera data – nu när dina data är rensade och strukturerade i önskat format kan du använda notebook-filer för Databricks till att ytterligare träna eller analysera dem så att du får den utdata som behövs.

Du har lärt dig vad Azure Data Factory är och hur integreringen med Azure Databricks hjälper dig att läsa in och transformera dina data. Nu skapar vi ett heltäckande arbetsflöde för några exempeldata.

Integrera Azure Databricks notebook-datorer med Azure Data Factory pipeline

Det finns ett antal uppgifter som måste utföras för att integrera Azure Databricks med en Azure Data Factory-pipeline enligt följande:

  1. Generera en Databricks-åtkomsttoken.

  2. Generera en Databricks Notebook

  3. Skapa länkade tjänster

  4. Skapa en pipeline som använder Databricks Notebook-aktivitet.

  5. Utlösning av en pipelinekörning.

    Anteckning

    Följande steg förutsätter att det redan finns ett Azure Databricks redan har etablerats

Uppgift 1: Generera en Databricks-åtkomsttoken.

  1. I Azure Portal klickar du på Resursgrupper och sedan på awrgstudxx och sedan på awdbwsstudxx där xx är initialerna för ditt namn.

  2. Klicka på Starta arbetsyta

  3. Klicka på användarprofilikonen i det övre högra hörnet på Databricks-arbetsytan.

  4. Klicka på Inställningar.

  5. Gå till fliken Åtkomsttoken och klicka på knappen Generera ny token.

  6. Ange en beskrivning i kommentaren "For ADF Integration" (För ADF-integrering) och ange livslängden på 10 dagar och klicka på Generera

  7. Kopiera den genererade token och lagra i Anteckningar och klicka sedan på Klar.

Uppgift 2: Generera en Databricks Notebook

  1. Till vänster på skärmen klickar du på ikonen Arbetsyta och sedan på pilen bredvid ordet Arbetsyta. Klicka sedan på Skapa och sedan på Mapp. Ge mappen namnet adftutorial och klicka på Skapa mapp. Mappen adftutorial visas i arbetsytan.

  2. Klicka på listrilen bredvid adftutorial och klicka sedan på Skapa och sedan på Notebook.

  3. I dialogrutan Skapa anteckningsbok skriver du namnet på mynotebook och ser till att språket anger Python och klickar sedan på Skapa. Anteckningsboken med rubriken mynotebook visas/

  4. I din nyligen skapade notebook, ”mynotebook”, lägger du till följande kod:

    # Creating widgets for leveraging parameters, and printing the parameters
    
    dbutils.widgets.text("input", "","")
    dbutils.widgets.get("input")
    y = getArgument("input")
    print ("Param -\'input':")
    print (y)
    

    Anteckning

    att notebook-sökvägen är /adftutorial/mynotebook

Uppgift 3: Skapa länkade tjänster

  1. I Microsoft Edge klickar du på fliken för portalen i Azure Portal och återgår till Azure Data Factory.

  2. På skärmen xx-data-factory klickar du på Författare och & Övervaka. En annan flik öppnas för att skapa en Azure Data Factory lösning.

  3. Till vänster på skärmen klickar du på ikonen Författare. Då öppnas Data Factory designern.

  4. Längst ned på skärmen klickar du på Anslutningar och sedan på + Ny.

  5. I New Linked Service (Ny länkad tjänst) klickar du på Compute överst på skärmen och sedan på Azure Databricks och sedan på Fortsätt.

  6. På skärmen New Linked Service (Azure Databricks) (Ny länkad tjänst (Azure Databricks) fyller du i följande information och klickar på Slutför

    • Namn: xx_dbls, där xx är dina initialer
    • Databricks-arbetsyta: awdbwsstudxx, där xx är dina initialer
    • Välj kluster: använd befintligt
    • Domän/region: ska fyllas i
    • Åtkomsttoken: Kopiera åtkomsttoken från Anteckningar och klistra in den i det här fältet
    • Välj från befintligt kluster: awdbclstudxx, där xx är dina initialer
    • Lämna standardinställningarna för andra alternativ

    Anteckning

    När du klickar på Slutför kommer du tillbaka till skärmen Författare & Monitor där xx_dbls har skapats, med de andra länkade tjänsterna som skapades i föregående exercize.

Uppgift 4: Skapa en pipeline som använder Databricks Notebook-aktivitet.

  1. Till vänster på skärmen, under Fabriksresurser, klickar du på + ikonen och klickar sedan på Pipeline. Då öppnas en flik med en pipelinedesigner.

  2. Längst ned i pipelinedesignern klickar du på fliken Parametrar och sedan på + Ny

  3. Skapa en parameter med namnnamnet, med en typ av sträng

  4. Under menyn Aktiviteter expanderar du Databricks.

  5. Klicka och dra Notebook till arbetsytan.

  6. Utför följande steg i egenskaperna för notebook1-fönstret längst ned:

    • Växla till fliken Azure Databricks.

    • Välj xx_dbls som du skapade i föregående procedur.

    • Växla till fliken Inställningar och placera /adftutorial/mynotebook i Notebook-sökvägen.

    • Expandera Basparametrar och klicka sedan på + Ny

    • Skapa en parameter med namnet på indata, med värdet @pipeline ().parameters.name

  7. I Notebook1 klickar du på Verifiera bredvid knappen Spara som mall. När fönstret visas till höger på skärmen står det "Din pipeline har verifierats. Inga fel hittades." Klicka på >> för att stänga fönstret.

  8. Klicka på Publicera alla för att publicera den länkade tjänsten och pipelinen.

    Anteckning

    Ett meddelande visas som säger att distributionen har lyckats.

Uppgift 5: Utlösa en pipelinekörning

  1. I Notebook1 klickar du på Lägg till utlösare och klickar på Trigger Now (Utlös nu) bredvid knappen Debug (Felsök).

  2. Dialogrutan Kör pipeline efterfrågar parametern namn. Använd /path/filename som den här parametern. Klicka på Slutför. En röd cirkel visas ovanför notebook1-aktiviteten på arbetsytan.

Uppgift 6: Övervaka pipelinen

  1. Till vänster på skärmen klickar du på fliken Övervaka. Bekräfta att du ser en pipelinekörning. Det tar cirka 5–8 minuter att skapa ett Databricks-jobbkluster där en notebook körs.

  2. Klicka på Uppdatera då och då så att du ser pipelinekörningens status.

  3. Om du vill visa aktivitetskörningar som är associerade med pipelinekörningarna väljer på länken View activity runs (Visa aktivitetskörningar) i kolumnen Åtgärd.

Uppgift 7: Verifiera utdata

  1. I Microsoft Edge klickar du på fliken mynotebook – Databricks

  2. I arbetsytan Azure Databricks klickar du på Kluster så ser du jobbstatusen väntande körning, körning eller avslutad.

  3. Klicka på klustret awdbclstudxx och klicka sedan på händelseloggen för att visa aktiviteterna.

    Anteckning

    Du bör se händelsetypen Börjar med den tid då du utlöste pipelinekörningen.