Modul 2: Transformere data med en dataflyt i Data Factory
Denne modulen tar omtrent 25 minutter å opprette en dataflyt, bruke transformasjoner og flytte rådataene fra bronsetabellen til en Gold Lakehouse-tabell.
Med rådataene som er lastet inn i Bronze Lakehouse-tabellen fra den siste modulen, kan du nå klargjøre dataene og berike dem ved å kombinere dem med en annen tabell som inneholder rabatter for hver leverandør og deres turer i løpet av en bestemt dag. Dette siste Gold Lakehouse-bordet er lastet og klart til bruk.
Trinnene på høyt nivå i dataflyten er som følger:
- Hent rådata fra Lakehouse-tabellen som er opprettet av Kopier-aktiviteten i modul 1: Opprett et datasamlebånd med Data Factory.
- Transformer dataene som er importert fra Lakehouse-tabellen.
- Koble til til en CSV-fil som inneholder rabattdata.
- Transformer rabattdataene.
- Kombiner reise- og rabattdata.
- Last inn utdataspørringen i Gold Lakehouse-tabellen.
Hent data fra en Lakehouse-tabell
Velg Opprett fra sidepanelet, og deretter Dataflyt gen2 for å opprette en ny dataflyt gen2.
Velg Hent data fra den nye dataflytmenyen, og deretter mer....
Søk etter og velg Lakehouse-koblingen.
Dialogboksen Koble til til datakilde vises, og en ny tilkobling opprettes automatisk for deg basert på den påloggede brukeren. Velg Neste.
Dialogboksen Velg data vises. Bruk navigasjonsruten til å finne Lakehouse du opprettet for målet i den forrige modulen, og velg Tutorial_Lakehouse datatabell.
(Valgfritt) Når lerretet er fylt ut med dataene, kan du angi kolonneprofilinformasjon , da dette er nyttig for dataprofilering. Du kan bruke riktig transformasjon og målrette mot de riktige dataverdiene basert på den.
Hvis du vil gjøre dette, velger du Alternativer fra båndruten, deretter velger du de tre første alternativene under Kolonneprofil, og deretter velger du OK.
Transformere dataene som er importert fra Lakehouse
Velg datatypeikonet i kolonneoverskriften for den andre kolonnen, IpepPickupDatetime, for å vise en rullegardinmeny og velge datatypen fra menyen for å konvertere kolonnen fra dato/klokkeslett til datotype .
(Valgfritt) Velg alternativet Velg kolonner fra Behandle kolonner-gruppen på Hjem-fanen på båndet.
(Valgfritt) Fjern merket for noen kolonner som er oppført her, i dialogboksen Velg kolonner , og velg deretter OK.
- lpepDropoffDatetime
- puLocationId
- doLocationId
- pickupLatitude
- dropoffLongitude
- rateCodeID
Velg filteret for storeAndFwdFlag-kolonnen , og sorter rullegardinmenyen. (Hvis du ser en advarsel Listen kan være ufullstendig, og velg Last inn mer for å se alle dataene.)
Velg Y for å vise bare rader der en rabatt ble brukt, og velg deretter OK.
Velg rullegardinmenyen IpepPickupDatetime-kolonnesortering og filter, velg deretter Datofiltre, og velg mellom...-filteret som er angitt for dato- og dato/klokkeslett-typer.
Velg datoer mellom 1. januar 2015 og 31. januar 2015 i dialogboksen Filtrer rader, og velg deretter OK.
Koble til til en CSV-fil som inneholder rabattdata
Nå, med dataene fra turene på plass, ønsker vi å laste inn dataene som inneholder de respektive rabattene for hver dag og VendorID, og klargjøre dataene før vi kombinerer dem med reisedataene.
Velg Hent data-alternativet på Hjem-fanen i redigeringsprogrammet for dataflyt, og velg deretter Tekst/CSV.
Angi følgende detaljer i dialogboksen Koble til til datakilde:
- Filbane eller URL-adresse -
https://raw.githubusercontent.com/ekote/azure-architect/master/Generated-NYC-Taxi-Green-Discounts.csv
- Godkjenningstype – anonym
Velg deretter Neste.
- Filbane eller URL-adresse -
Velg Opprett i dialogboksen Forhåndsvis fildata.
Transformere rabattdataene
Når vi ser gjennom dataene, ser vi at overskriftene ser ut til å være i den første raden. Hev dem til overskrifter ved å velge hurtigmenyen for tabellen øverst til venstre i forhåndsvisningsrutenettet for å velge Bruk første rad som overskrifter.
Merk
Når du har forfremmet topptekstene, kan du se et nytt trinn lagt til i ruten Brukte trinn øverst i redigeringsprogrammet for dataflyt til datatypene i kolonnene.
Høyreklikk VendorID-kolonnen, og velg alternativet Unpivot other columns fra hurtigmenyen som vises. Dette gjør at du kan transformere kolonner til attributtverdipar, der kolonner blir rader.
Når tabellen ikke er angitt, kan du gi nytt navn til kolonnene Attributt og Verdi ved å dobbeltklikke dem og endre attributtet til dato og verdi til rabatt.
Endre datatypen for Dato-kolonnen ved å velge datatypemenyen til venstre for kolonnenavnet og velge Dato.
Velg Rabatt-kolonnen, og velg deretter Transformer-fanen på menyen. Velg Tall-kolonnen, og velg deretter Standard numeriske transformasjoner fra undermenyen, og velg Del.
Skriv inn verdien 100 i dialogboksen Del.
Kombinere turer og rabattdata
Det neste trinnet er å kombinere begge tabellene i én enkelt tabell som har rabatten som skal brukes på turen, og den justerte summen.
Først slår du diagramvisningsknappen slik at du kan se begge spørringene.
Velg nyc_taxi spørringen, og velg Slå sammen spørringer på Hjem-fanen, velg Slå sammen spørringer og slå sammen spørringer som nye.
Velg Genererte NYC-Taxi-Green-Discounts fra høyre tabell for rullegardinliste for fletting i dialogboksen Slå sammen, og velg deretter «lyspære»-ikonet øverst til høyre i dialogboksen for å se den foreslåtte tilordningen av kolonner mellom de to tabellene.
Velg hver av de to foreslåtte kolonnetilordningene, én om gangen, som tilordner VendorID- og datokolonnene fra begge tabellene. Når begge tilordningene legges til, utheves de samsvarende kolonneoverskriftene i hver tabell.
En melding vises der du blir bedt om å tillate kombinasjon av data fra flere datakilder for å vise resultatene. Velg OK i dialogboksen Flett .
I tabellområdet ser du i utgangspunktet en advarsel om at evalueringen ble avbrutt fordi kombinasjon av data fra flere kilder kan vise data fra én kilde til en annen. Velg fortsett hvis muligheten for å avsløre data er ok.» Velg Fortsett for å vise de kombinerte dataene.
Legg merke til hvordan en ny spørring ble opprettet i diagramvisning som viser relasjonen mellom den nye flettespørringen med de to spørringene du opprettet tidligere. Når du ser på tabellruten i redigeringsprogrammet, blar du til høyre for kolonnelisten flettingsspørring for å se en ny kolonne med tabellverdier. Dette er kolonnen "Generert NYC Taxi-Green-Discounts", og typen er [Tabell]. I kolonneoverskriften er det et ikon med to piler som går i motsatt retning, slik at du kan velge kolonner fra tabellen. Fjern merkingen for alle kolonnene unntatt Rabatt, og velg deretter OK.
Med rabattverdien nå på radnivå, kan vi opprette en ny kolonne for å beregne totalbeløpet etter rabatt. Hvis du vil gjøre dette, velger du fanen Legg til kolonne øverst i redigeringsprogrammet, og velger Egendefinert kolonne fra Generelt-gruppen .
I dialogboksen Egendefinert kolonne kan du bruke power query-formelspråket (også kalt M) til å definere hvordan den nye kolonnen skal beregnes. Angi TotalAfterDiscount for nytt kolonnenavn, velg Valuta for datatypen, og angi følgende M-uttrykk for den egendefinerte kolonneformelen:
if [totalAmount] > 0 then [totalAmount] * ( 1 -[Discount] ) else [totalAmount]
Velg deretter OK.
Velg den nylig opprettede TotalAfterDiscount-kolonnen , og velg deretter Transformer-fanen øverst i redigeringsvinduet. Velg rullegardinlisten Avrunding i kolonnegruppen Tall, og velg deretter Avrund....
Skriv inn 2 for antall desimaler i dialogboksen Runde av, og velg deretter OK.
Endre datatypen for IpepPickupDatetime fra Dato til Dato/klokkeslett.
Til slutt utvider du ruten for spørringsinnstillinger fra høyre side av redigeringsprogrammet hvis den ikke allerede er utvidet, og gir spørringen nytt navn fra Flett til Utdata.
Laste inn utdataspørringen til en tabell i Lakehouse
Med utdataspørringen nå fullstendig forberedt og med data klar til utdata, kan vi definere utdatamålet for spørringen.
Velg spørringen for utskriftsfletting som ble opprettet tidligere. Velg deretter Hjem-fanen i redigeringsprogrammet, og legg til datamål fra spørringsgrupperingen for å velge et Lakehouse-mål.
På Koble til til datamåldialogboksen skal tilkoblingen allerede være valgt. Klikk Neste for å fortsette.
Bla til Lakehouse der du vil laste inn dataene i dialogboksen Velg målmål, og gi navn til den nye tabellen nyc_taxi_with_discounts, og velg deretter Neste på nytt.
I dialogboksen Velg målinnstillinger forlater du standard metode for erstatt oppdatering, dobbeltsjekker at kolonnene er tilordnet riktig, og velger Lagre innstillinger.
Tilbake i hovedredigeringsprogrammet bekrefter du at du ser utdatamålet i spørringsinnstillingsruten for utdatatabellen, og deretter velger du Publiser.
Viktig
Når den første dataflyten Gen2 opprettes i et arbeidsområde, klargjøres Lakehouse- og Warehouse-elementer sammen med relaterte SQL Analytics-endepunkt og semantiske modeller. Disse elementene deles av alle dataflyter i arbeidsområdet og kreves for at Dataflyt gen2 skal fungere, bør ikke slettes, og er ikke ment å brukes direkte av brukere. Elementene er en implementeringsdetalj for Dataflyt gen2. Elementene er ikke synlige i arbeidsområdet, men kan være tilgjengelige i andre opplevelser, for eksempel notatblokken, SQL-endepunktet, Lakehouse og Warehouse. Du kan gjenkjenne elementene ved hjelp av prefikset i navnet. Prefikset for elementene er Dataflytsstaging.
(Valgfritt) På arbeidsområdesiden kan du gi nytt navn til dataflyten ved å velge ellipsen til høyre for dataflytnavnet som vises etter at du har merket raden, og velge Egenskaper.
Velg oppdateringsikonet for dataflyten når du har valgt raden, og når den er fullført, skal du se den nye Lakehouse-tabellen opprettet som konfigurert i innstillingene for datamål .
Sjekk Lakehouse for å se det nye bordet lastet der.
Relatert innhold
I denne andre modulen til vår ende-til-ende-opplæring for din første dataintegrering ved hjelp av Data Factory i Microsoft Fabric, lærte du hvordan du gjør følgende:
- Opprett en ny dataflyt gen2.
- Importere og transformere eksempeldata.
- Importere og transformere tekst-/CSV-data.
- Slå sammen data fra begge datakildene til en ny spørring.
- Transformer data og generer nye kolonner i en spørring.
- Konfigurer en utdatamålkilde for en spørring.
- Gi nytt navn til og oppdater den nye dataflyten.
Fortsett til neste del nå for å integrere datasamlebåndet.