Hva er Power Query & M Language: En detaljert oversikt
Denne opplæringen gir en oversikt over Power Query Editor og M-språket på LuckyTemplates-skrivebordet.
I denne opplæringen lærer vi hvordan du kobler til SQL-serveren. Vi vil også diskutere hvordan spørringsfolding fungerer i Power Query og hvordan vi kan kjøre SQL-kommandoer i LuckyTemplates. Inne i Power Query kan vi trekke ut og manipulere data fra ulike kilder. Med spørringsfolding kan vi overføre datatransformasjoner til kilden i stedet for å gjøre dem i LuckyTemplates.
Spørringsfolding er veldig effektivt med store databaser for å sikre ytelsesforbedringer for rapportene dine.
Innholdsfortegnelse
Koble til en SQL Server-database for spørringsfolding
Vi skal gjøre denne opplæringen i et Power Query-redigeringsprogram. Først klikker du på SQL Server under Ny kilde .
Hvis du allerede har installert en SQL-servermaskin og jobber uavhengig, vil servernavnet være localhost . Men hvis du jobber i en organisasjon, vil de gi deg servernavnet og tilgang til databasen deres. Vi må også oppgi databasenavnet. I dette eksemplet vil jeg bruke AdventureWorksDW2012 . Du kan lære hvordan du laster ned denne eksempeldatabasen fra denne opplæringen .
For datatilkoblingsmodus vil alle dataene vi velger, lastes inn i modellen hvis vi velger Importer . Men hvis vi velger DirectQuery , vil ingenting bli lastet inn i datamodellen, men alt vil være i databasen. Hver gang vi bruker et filter, vil spørringen bli sendt tilbake til SQL Server.
Men dette er ikke effektivt fordi det vil ta mer tid å oppdatere. Derfor velger vi Importer som datatilkoblingsmodus .
Deretter, hvis vi klikker på Avanserte alternativer , vil det gi oss en del der vi kan skrive en SQL-setning. Vi lærer hvordan du gjør dette senere.
I dette eksemplet vil vi bare ha én tabell om gangen, så vi vil ikke ta inn relasjonskolonner eller tabeller. I så fall må vi fjerne merket for alternativet for det.
Til slutt klikker du OK .
Etter det vil vi kunne se tabellene som er tilgjengelige, og derfra kan vi ha litt informasjon. Fra dette eksemplet må vi hente dataene fra faktiske internettsalg. La oss derfor søke og velge FactInternetSales og deretter klikke OK .
Som et resultat vil vi nå ha dataene på vår Power Query-redigeringsprogram.
Forstå Query Folding In Power Query
Høyreklikk på Navigasjon i kildepanelet og velg deretter View Native Query .
Med det vil vi kunne se kommandoen som ble utført av denne maskinen. Power Query-motoren opprettet denne kommandoen for å kjøre i SQL Server. La oss nå klikke OK .
Som et eksempel opprettet jeg tilfeldig et filter i denne tabellen bare for å vise deg at når vi har opprettet disse, vil vi kunne se dem i APPLIED STEPS- panelet.
Når vi høyreklikker på et av filtrene, vil vi se at alternativet Vis Native Query fortsatt er tilgjengelig.
Denne SQL-spørringen fra filteret vårt har blitt kjørt i SQL Server . Når vi ikke har brukt filteret, får vi 5 millioner rader. Nå som vi har brukt et filter, får vi bare 4 millioner rader.
Dette betyr at LuckyTemplates nå trekker ut 4 millioner rader i stedet for 5 millioner rader fra SQL Server. Med dette er antall rader redusert og antall belastninger fra vårt nettverk reduseres også.
Husk at så lenge vi ser Native Query , betyr det at spørringsfolding fungerer. Derfor blir all behandling gjort i kildesystemet. Dette er den mest effektive måten å behandle data på, spesielt hvis du har et stort datavolum.
Vi har lagt til et annet trinn der vi fjernet én kolonne fra tabellen vår. Hvis vi høyreklikker på den, ser vi alternativet View Native Query , som betyr at den fortsatt fungerer.
Identifisere og fikse en ødelagt spørringsfolding
Med noen transformasjoner som å endre en kolonnes datatype, vil spørringsfoldingen brytes. For eksempel endrer vi TaxAmt- kolonnens datatype til Whole Number .
Dette vil legge til et endringstype- trinn under APPLIED TRINN . Hvis vi høyreklikker på den, vil vi se at View Native Query nå er deaktivert, noe som betyr at Query Folding er ødelagt.
Når en Query Folding er brutt, vil enhver annen transformasjon vi vil gjøre i LuckyTemplates Power Query, men ikke i kildesystemet lenger.
For eksempel, hvis vi får 3 millioner rader, vil alle komme i Power Query. Vi kan fortsatt redusere disse postene gjennom filtrering. Imidlertid vil disse 3 millioner radene nå komme over nettverket, noe som ikke er veldig effektivt.
For et annet eksempel, la oss si at vi vil filtrere bestillingsdatoen til kun å vise datoene etter 1. januar 2012.
Hvis vi ser på det filteret på APPLIEDE TRINN , vil ikke alternativet View Native Query være synlig.
Igjen, det er fordi Query Folding ble ødelagt på grunn av den forrige transformasjonen som vi har opprettet. Det vi kan gjøre er å flytte alle filtreringstrinnene vi skal gjøre over transformasjonstrinnet som brøt Query Folding .
For dette eksemplet høyreklikker vi det siste filtreringstrinnet som vi har opprettet og klikker Flytt før , eller bare drar det øverst i endringstype- transformasjonen.
Hvis vi høyreklikker på det filteret igjen, vil vi se at alternativet View Native Query nå er synlig, noe som betyr at Query Folding fungerer igjen.
Fordeler med å koble til SQL Server og kjøre SQL Language
La oss for eksempel si at vi ønsker å vise data med totalt salg etter land format som vist på bildet.
På FactInternetSales- tabellen vår har vi SalesAmount- kolonnen, men vi har ikke landinformasjon på den.
Vi kan fortsatt få landsinformasjon fordi vi har SalesTerritoryKey- kolonnen.
Det vi må gjøre er å bringe DimSales- tabellen hit slik at vi kan slå den sammen med FactInternetSales . Deretter må vi ta med landkolonnen og gruppere dem etter landkolonne, noe som er veldig komplekst og kan ta lang tid. Så i stedet for å gjøre alt dette i Power Query som ikke er effektivt, bør vi gjøre det på i stedet.
For å gjøre det klikker du bare på Ny kilde > SQL Server .
La oss igjen koble til serveren vår kalt localhost, og AdventureWorksDW2012 som databasen vår.
Denne gangen ønsker vi å gjøre et avansert alternativ fordi vi vil skrive en kommando under SQL- setningsfeltet. For dette eksemplet har vi allerede skrevet en kommando som vi vil skrive inn på SQL-setningen. Du kan lære om SQL-kommandoer i våre andre opplæringsprogrammer.
Vi ønsker ikke å inkludere relasjonskolonner, så vi fjerner merket for dette alternativet her. Klikk deretter på OK- knappen for å kjøre denne kommandoen.
Etter å ha utført kommandoen, vil vi se dette forhåndsvisningsvinduet som viser et totalt salg etter salgsområderegion .
Så vi har vært i stand til å få en lignende utgang av SalesByCountry- tabellen ved å bruke en enkel SQL-kommando i stedet for å manipulere forskjellige tabeller og kolonner på Power Query.
En annen fordel er at vi kan transformere alle våre data i SQL og bare bringe dataene som trengs eller kreves til vår datamodell. Med dette kan vi bygge en svært effektiv datamodell i henhold til planen vår uten problemer eller problemer.
Konklusjon
I denne opplæringen har vi lært hva en Query Folding er og oppdaget fordelene. Vi har også diskutert trinnene for hvordan du kobler Power Query til SQL Server .
Dessuten snakket vi om fordelene ved å koble til SQL Server og lage transformasjoner på SQL Server i stedet for å gjøre dem på Power Query .
Forhåpentligvis var du i stand til å se hvordan å gjøre alle transformasjonene i SQL er mer effektivt og raskere sammenlignet med å gjøre det på Power Query .
Beste ønsker,
Hafiz
Denne opplæringen gir en oversikt over Power Query Editor og M-språket på LuckyTemplates-skrivebordet.
Lær hvordan du lager en paginert rapport, legger til tekster og bilder og deretter eksporterer rapporten til ulike dokumentformater.
Lær hvordan du bruker SharePoint-automatiseringsfunksjonen til å lage arbeidsflyter og hjelpe deg med å mikroadministrere SharePoint-brukere, -biblioteker og -lister.
Utvid rapportutviklingsferdighetene dine ved å bli med i en dataanalyseutfordring. Akseleratoren kan hjelpe deg å bli en LuckyTemplates-superbruker!
Lær hvordan du beregner løpende totaler i LuckyTemplates ved hjelp av DAX. Løpende totaler lar deg ikke bli fanget opp i et individuelt resultat.
Forstå konseptet med variabler i DAX i LuckyTemplates og implikasjonene av variabler for hvordan målene dine beregnes.
Lær mer om det tilpassede visuelle bildet kalt LuckyTemplates Slope-diagram, som brukes til å vise økning/reduksjon for en enkelt eller flere beregninger.
Oppdag fargetemaene i LuckyTemplates. Disse er avgjørende for at rapportene og visualiseringene dine skal se ut og fungere sømløst.
Å beregne et gjennomsnitt i LuckyTemplates kan gjøres på mange måter for å gi deg nøyaktig informasjon for bedriftsrapportene dine.
La oss fordype oss i Standard LuckyTemplates-tema, og gjennomgå noen av funksjonene som er innebygd i selve LuckyTemplates Desktop-applikasjonen.