Snabbstart: Transformera data med mappning av dataflöden

I den här snabbstarten använder du Azure Synapse Analytics för att skapa en pipeline som transformerar data från en Azure Data Lake Storage Gen2 -källa (ADLS Gen2) till en ADLS Gen2-mottagare med hjälp av dataflödesmappning. Konfigurationsmönstret i den här snabbstarten kan utökas när du transformerar data med hjälp av dataflödesmappning

I den här snabbstarten gör du följande:

  • Skapa en pipeline med en Dataflöde aktivitet i Azure Synapse Analytics.
  • Skapa ett mappningsdataflöde med fyra transformeringar.
  • Testkör pipelinen.
  • Övervaka en Dataflöde aktivitet

Förutsättningar

  • Azure-prenumeration: Om du inte har en Azure-prenumeration skapar du ett kostnadsfritt Azure-konto innan du börjar.

  • Azure Synapse arbetsyta: Skapa en Synapse-arbetsyta med hjälp av Azure Portal genom att följa anvisningarna i Snabbstart: Skapa en Synapse-arbetsyta.

  • Azure-lagringskonto: Du använder ADLS-lagring som käll- och mottagardatalager . Om du inte har ett lagringskonto finns det anvisningar om hur du skapar ett i Skapa ett Azure Storage-konto.

    Filen som vi transformerar i den här självstudien är MoviesDB.csv, som du hittar här. Om du vill hämta filen från GitHub kopierar du innehållet till en valfri textredigerare för att spara lokalt som en .csv fil. Information om hur du laddar upp filen till ditt lagringskonto finns i Ladda upp blobar med Azure Portal. Exemplen refererar till en container med namnet "sample-data".

När din Azure Synapse arbetsyta har skapats kan du öppna Synapse Studio på två sätt:

I den här snabbstarten använder vi arbetsytan med namnet "adftest2020" som exempel. Du kommer automatiskt till startsidan för Synapse Studio.

Synapse Studio startsida

Skapa en pipeline med en Dataflöde aktivitet

En pipeline innehåller det logiska flödet för en körning av en uppsättning aktiviteter. I det här avsnittet skapar du en pipeline som innehåller en Dataflöde aktivitet.

  1. Gå till fliken Integrera . Välj plusikonen bredvid pipelinehuvudet och välj Pipeline.

    Skapa en ny pipeline

  2. På sidan Egenskapsinställningar i pipelinen anger du TransformMovies som Namn.

  3. Under Flytta och transformera i fönstret Aktiviteter drar du Dataflöde till pipelinearbetsytan.

  4. På sidan Lägga till dataflöde väljer du Skapa nytt dataflöde –>Dataflöde. Klicka på OK när du är klar.

    Skapa ett dataflöde

  5. Ge dataflödet namnet TransformMovies på sidan Egenskaper .

Skapa transformeringslogik i dataflödesarbetsytan

När du har skapat Dataflöde skickas du automatiskt till dataflödesarbetsytan. I det här steget skapar du ett dataflöde som tar MoviesDB.csv i ADLS-lagring och aggregerar den genomsnittliga klassificeringen av komedies från 1910 till 2000. Sedan skriver du tillbaka den här filen till ADLS-lagringen.

  1. Ovanför dataflödesarbetsytan skjuter du på skjutreglaget för felsökning av dataflöde . Felsökningsläget möjliggör interaktiv testning av transformeringslogik mot ett Live Spark-kluster. Dataflöde kluster tar 5–7 minuter att värma upp och användarna rekommenderas att aktivera felsökning först om de planerar att utföra Dataflöde utveckling. Mer information finns i Felsökningsläge.

    Dra felsökningen på

  2. Lägg till en källa i dataflödesarbetsytan genom att klicka på rutan Lägg till källa .

  3. Ge källan namnet MoviesDB. Klicka på Ny för att skapa en ny källdatauppsättning.

    Skapa en ny källdatauppsättning

  4. Välj Azure Data Lake Storage Gen2. Klicka på Fortsätt.

    Välj Azure Data Lake Storage Gen2

  5. Välj AvgränsadText. Klicka på Fortsätt.

  6. Ge datauppsättningen namnet MoviesDB. I listrutan länkad tjänst väljer du Nytt.

  7. På skärmen för att skapa länkad tjänst namnger du den länkade ADLS Gen2-tjänsten ADLSGen2 och anger din autentiseringsmetod. Ange sedan dina autentiseringsuppgifter för anslutningen. I den här snabbstarten använder vi kontonyckeln för att ansluta till vårt lagringskonto. Du kan klicka på Testa anslutning för att kontrollera att dina autentiseringsuppgifter har angetts korrekt. Klicka på Skapa när du är klar.

    Skapa en länkad källtjänst

  8. När du är tillbaka på skärmen för att skapa datauppsättningen går du till fältet Filsökväg och anger var filen finns. I den här snabbstarten finns filen "MoviesDB.csv" i containern "sample-data". Eftersom filen har rubriker markerar du Första raden som rubrik. Välj Från anslutning/arkiv för att importera rubrikschemat direkt från filen i lagringen. Klicka på OK när du är klar.

    Inställningar för källdatauppsättningen

  9. Om felsökningsklustret har startats går du till fliken Dataförhandsgranskning i källomvandlingen och klickar på Uppdatera för att få en ögonblicksbild av data. Du kan använda förhandsversionen av data för att kontrollera att omvandlingen är korrekt konfigurerad.

    Förhandsgranskning

  10. Bredvid källnoden på dataflödesarbetsytan klickar du på plusikonen för att lägga till en ny transformering. Den första omvandlingen som du lägger till är ett filter.

    Lägga till ett filter

  11. Ge filtertransformeringen namnet FilterYears. Klicka på uttrycksrutan bredvid Filtrera på för att öppna uttrycksverktyget. Här anger du filtreringsvillkoret.

  12. Med uttrycksverktyget för dataflöde kan du interaktivt skapa uttryck som ska användas i olika transformeringar. Uttryck kan innehålla inbyggda funktioner, kolumner från indataschemat och användardefinierade parametrar. Mer information om hur du skapar uttryck finns i Dataflöde uttrycksverktyget.

    I den här snabbstarten vill du filtrera filmer av genrekomik som kom ut mellan åren 1910 och 2000. Eftersom år för närvarande är en sträng måste du konvertera den till ett heltal med hjälp av toInteger() funktionen . Använd operatorerna större än eller lika med (>=) och mindre än eller lika med (<=) för att jämföra med literala årsvärden 1910 och 200-. Förena dessa uttryck med operatorn && (och). Uttrycket kommer ut som:

    toInteger(year) >= 1910 && toInteger(year) <= 2000

    Om du vill ta reda på vilka filmer som är komedier kan du använda rlike() funktionen för att hitta mönstret "Komedi" i kolumngenrerna. Unionen uttrycket rlike med årsjämförelsen för att få:

    toInteger(year) >= 1910 && toInteger(year) <= 2000 && rlike(genres, 'Comedy')

    Ange filtreringsvillkor

    Om du har ett aktivt felsökningskluster kan du verifiera logiken genom att klicka på Uppdatera för att visa uttrycksutdata jämfört med de indata som används. Det finns mer än ett rätt svar på hur du kan åstadkomma den här logiken med hjälp av uttrycksspråket för dataflöde.

    Klicka på Spara och slutför när du är klar med uttrycket.

  13. Hämta en dataförhandsgranskning för att kontrollera att filtret fungerar korrekt.

  14. Nästa transformering som du lägger till är en mängdtransformering under Schemamodifierare.

    Lägg till en aggregering

  15. Ge aggregatet namnet AggregateComedyRatings. På fliken Gruppera efter väljer du år i listrutan för att gruppera aggregeringarna efter det år filmen kom ut.

    Mängdinställningar 1

  16. Gå till fliken Aggregat . I den vänstra textrutan namnger du aggregeringskolumnen AverageComedyRating. Klicka på den högra uttrycksrutan för att ange mängduttrycket via uttrycksverktyget.

    Mängdinställningar 2

  17. Om du vill få medelvärdet av kolumnklassificeringen använder du avg() mängdfunktionen. Eftersom Klassificering är en sträng och avg() tar in numeriska indata måste vi konvertera värdet till ett tal via toInteger() funktionen . Det här uttrycket ser ut så här:

    avg(toInteger(Rating))

    Klicka på Spara och slutför när du är klar.

    Genomsnittligt komedibetyg

  18. Gå till fliken Dataförhandsgranskning för att visa transformeringsutdata. Observera att endast två kolumner finns där, year och AverageComedyRating.

    Förhandsgranskning av aggregerade data

  19. Nu ska du lägga till en sink-transformering under Mål.

    Lägg till en mottagare

  20. Ge mottagaren namnet Sink. Klicka på Ny för att skapa datauppsättningen för mottagare.

  21. Välj Azure Data Lake Storage Gen2. Klicka på Fortsätt.

  22. Välj AvgränsadText. Klicka på Fortsätt.

  23. Ge mottagaren namnet moviesset MoviesSink. För länkad tjänst väljer du den länkade ADLS Gen2-tjänst som du skapade i steg 7. Ange en utdatamapp att skriva dina data till. I den här snabbstarten skriver vi till mappen "output" i containern "sample-data". Mappen behöver inte finnas i förväg och kan skapas dynamiskt. Ange Första raden som rubrik som true och välj Ingen för Importschema. Klicka på OK när du är klar.

    Egenskaper för datauppsättning för mottagare

Nu har du skapat ditt dataflöde. Du är redo att köra den i din pipeline.

Köra och övervaka Dataflöde

Du kan felsöka en pipeline innan du publicerar den. I det här steget ska du utlösa en felsökningskörning av dataflödespipelinen. Dataförhandsvisning skriver inte data, men en felsökningskörning skriver data till målmottagaren.

  1. Gå till pipelinearbetsytan. Klicka på Felsök för att utlösa en felsökningskörning.

    Felsökningspipeline

  2. Pipelinefelsökning av Dataflöde-aktiviteter använder det aktiva felsökningsklustret, men det tar ändå minst en minut att initiera. Du kan spåra förloppet via fliken Utdata . När körningen är klar klickar du på glasögonikonen för att öppna övervakningsfönstret.

    Felsöka utdata

  3. I övervakningsfönstret kan du se antalet rader och den tid som spenderas i varje transformeringssteg.

    Transformeringsövervakning

  4. Klicka på en transformering för att få detaljerad information om kolumnerna och partitioneringen av data.

    Transformeringsinformation

Om du har följt den här snabbstarten korrekt bör du ha skrivit 83 rader och 2 kolumner i mottagarmappen. Du kan verifiera data genom att kontrollera bloblagringen.

Nästa steg

Gå vidare till följande artiklar om du vill veta mer om Azure Synapse Analytics-stöd: