Wat is Power Query?
Power Query is een engine voor gegevenstransformatie en gegevensvoorbereiding. Power Query wordt geleverd met een grafische interface voor het ophalen van gegevens uit bronnen en een Power Query-editor voor het toepassen van transformaties. Omdat de engine beschikbaar is in veel producten en services, is de bestemming waar de gegevens worden opgeslagen, afhankelijk van waar Power Query wordt gebruikt. Met Behulp van Power Query kunt u de ETL-verwerking (extract, transform, and load) van gegevens uitvoeren.
Diagram met gesymboliseerde gegevensbronnen aan de linkerkant, doorgegeven door Power Query voor transformatie in het midden en vervolgens naar vier bestemmingen aan de rechterkant te gaan: Microsoft Azure Data Lake Storage, Microsoft Dataverse, Microsoft Excel en Microsoft Power BI.
Hoe Power Query helpt bij het verkrijgen van gegevens
Zakelijke gebruikers besteden maximaal 80 procent van hun tijd aan gegevensvoorbereiding, waardoor het werk van analyse en besluitvorming wordt vertraagd. Verschillende uitdagingen dragen bij aan deze situatie en Power Query helpt veel van deze problemen aan te pakken.
Bestaande uitdaging | Hoe helpt Power Query? |
---|---|
Het is te moeilijk om gegevens te vinden en er verbinding mee te maken | Power Query maakt connectiviteit mogelijk met een breed scala aan gegevensbronnen, inclusief gegevens van alle grootten en shapes. |
Ervaringen voor gegevensconnectiviteit zijn te gefragmenteerd | Consistentie van ervaring en pariteit van querymogelijkheden voor alle gegevensbronnen. |
Gegevens moeten vaak worden hergestructureerd voordat ze worden gebruikt | Zeer interactieve en intuïtieve ervaring voor het snel en iteratief bouwen van query's over elke gegevensbron, van elke grootte. |
Eventuele vormgeving is eenmalig en niet herhaalbaar | Wanneer u Power Query gebruikt om gegevens te openen en te transformeren, definieert u een herhaalbaar proces (query) dat in de toekomst eenvoudig kan worden vernieuwd om up-to-datumgegevens op te halen. In het geval dat u het proces of de query moet wijzigen om rekening te houden met onderliggende gegevens of schemawijzigingen, kunt u dezelfde interactieve en intuïtieve ervaring gebruiken die u hebt gebruikt bij het definiëren van de query. |
Volume (gegevensgrootten), snelheid (wijzigingssnelheid) en variatie (breedte van gegevensbronnen en gegevensshapes) | Power Query biedt de mogelijkheid om te werken met een subset van de hele gegevensset om de vereiste gegevenstransformaties te definiëren, zodat u uw gegevens eenvoudig kunt filteren en transformeren naar een beheersbare grootte. Power Query-query's kunnen handmatig worden vernieuwd of door gebruik te maken van geplande vernieuwingsmogelijkheden in specifieke producten (zoals Power BI) of zelfs programmatisch (met behulp van het Excel-objectmodel). Omdat Power Query connectiviteit biedt met honderden gegevensbronnen en meer dan 350 verschillende typen gegevenstransformaties voor elk van deze bronnen, kunt u werken met gegevens uit elke bron en in elke vorm. |
Power Query-ervaringen
De gebruikerservaring van Power Query wordt geboden via de gebruikersinterface van de Power Query-editor. Het doel van deze interface is om u te helpen de transformaties toe te passen die u nodig hebt door te communiceren met een gebruiksvriendelijke set linten, menu's, knoppen en andere interactieve onderdelen.
De Power Query-editor is de primaire ervaring voor het voorbereiden van gegevens. In de editor kunt u verbinding maken met een breed scala aan gegevensbronnen en honderden verschillende gegevenstransformaties toepassen door een voorbeeld van gegevens te bekijken en transformaties in de gebruikersinterface te selecteren. Deze mogelijkheden voor gegevenstransformatie zijn gebruikelijk in alle gegevensbronnen, ongeacht de beperkingen van de onderliggende gegevensbron.
Wanneer u een nieuwe transformatiestap maakt door te communiceren met de onderdelen van de Power Query-interface, maakt Power Query automatisch de M-code die nodig is om de transformatie uit te voeren, zodat u geen code hoeft te schrijven.
Er zijn momenteel twee Power Query-ervaringen beschikbaar:
- Power Query Online-: te vinden in integraties zoals Power BI-gegevensstromen, Microsoft Power Platform-gegevensstromen, Azure Data Factory-gegevensstromen en nog veel meer die de ervaring bieden via een onlinewebpagina.
- Power Query voor Desktop-: te vinden in integraties zoals Power Query voor Excel en Power BI Desktop.
Notitie
Hoewel er twee Power Query-ervaringen bestaan, bieden ze beide bijna dezelfde gebruikerservaring in elk scenario.
Transformaties
De transformatie-engine in Power Query bevat veel vooraf gemaakte transformatiefuncties die kunnen worden gebruikt via de grafische interface van de Power Query-editor. Deze transformaties kunnen net zo eenvoudig zijn als het verwijderen van een kolom of het filteren van rijen, of net zo vaak als het gebruik van de eerste rij als tabelkoptekst. Er zijn ook geavanceerde transformatieopties, zoals samenvoegen, toevoegen, groeperen op, draaien en draaitabel opheffen.
Al deze transformaties worden mogelijk gemaakt door de transformatieoptie in het menu te kiezen en vervolgens de opties toe te passen die vereist zijn voor die transformatie. In de volgende afbeelding ziet u een aantal transformaties die beschikbaar zijn in de Power Query-editor.
Meer informatie: quickstart: Power Query gebruiken in Power BI-
Gegevensstromen
Power Query kan worden gebruikt in veel producten, zoals Power BI en Excel. Het gebruik van Power Query binnen een product beperkt echter het gebruik ervan tot alleen dat specifieke product. gegevensstromen zijn een productagnostische serviceversie van de Power Query-ervaring die in de cloud wordt uitgevoerd. Met behulp van gegevensstromen kunt u gegevens ophalen en gegevens op dezelfde manier transformeren. Maar in plaats van de uitvoer naar Power BI of Excel te verzenden, kunt u de uitvoer opslaan in andere opslagopties, zoals Dataverse of Azure Data Lake Storage. Op deze manier kunt u de uitvoer van gegevensstromen in andere producten en services gebruiken.
Meer informatie: Wat zijn gegevensstromen?
Power Query M-formuletaal
In een scenario voor gegevenstransformatie zijn er enkele transformaties die niet op de beste manier kunnen worden uitgevoerd met behulp van de grafische editor. Voor sommige van deze transformaties zijn mogelijk speciale configuraties en instellingen vereist die momenteel niet door de grafische interface worden ondersteund. De Power Query-engine gebruikt achter de schermen een scripttaal voor alle Power Query-transformaties: de Power Query M-formuletaal, ook wel bekend als M.
De M-taal is de taal voor gegevenstransformatie van Power Query. Alles wat er in de query gebeurt, wordt uiteindelijk geschreven in M. Als u geavanceerde transformaties wilt uitvoeren met behulp van de Power Query-engine, kunt u de geavanceerde editor gebruiken om toegang te krijgen tot het script van de query en deze naar wens te wijzigen. Als u merkt dat de functies en transformaties van de gebruikersinterface niet de exacte wijzigingen kunnen uitvoeren die u nodig hebt, gebruikt u de geavanceerde editor en de M-taal om uw functies en transformaties af te stemmen.
let
Source = Exchange.Contents("xyz@contoso.com"),
Mail1 = Source{[Name="Mail"]}[Data],
#"Expanded Sender" = Table.ExpandRecordColumn(Mail1, "Sender", {"Name"}, {"Name"}),
#"Filtered Rows" = Table.SelectRows(#"Expanded Sender", each ([HasAttachments] = true)),
#"Filtered Rows1" = Table.SelectRows(#"Filtered Rows", each ([Subject] = "sample files for email PQ test") and ([Folder Path] = "\Inbox\")),
#"Removed Other Columns" = Table.SelectColumns(#"Filtered Rows1",{"Attachments"}),
#"Expanded Attachments" = Table.ExpandTableColumn(#"Removed Other Columns", "Attachments", {"Name", "AttachmentContent"}, {"Name", "AttachmentContent"}),
#"Filtered Hidden Files1" = Table.SelectRows(#"Expanded Attachments", each [Attributes]?[Hidden]? <> true),
#"Invoke Custom Function1" = Table.AddColumn(#"Filtered Hidden Files1", "Transform File from Mail", each #"Transform File from Mail"([AttachmentContent])),
#"Removed Other Columns1" = Table.SelectColumns(#"Invoke Custom Function1", {"Transform File from Mail"}),
#"Expanded Table Column1" = Table.ExpandTableColumn(#"Removed Other Columns1", "Transform File from Mail", Table.ColumnNames(#"Transform File from Mail"(#"Sample File"))),
#"Changed Type" = Table.TransformColumnTypes(#"Expanded Table Column1",{{"Column1", type text}, {"Column2", type text}, {"Column3", type text}, {"Column4", type text}, {"Column5", type text}, {"Column6", type text}, {"Column7", type text}, {"Column8", type text}, {"Column9", type text}, {"Column10", type text}})
in
#"Changed Type"
Meer informatie: Power Query M-formuletaal
Waar kunt u Power Query gebruiken?
De volgende tabel bevat Microsoft-producten en -services waar Power Query kan worden gevonden.
Product | M-motor1 | Power Query Desktop2 |
Power Query Online3 |
Gegevensstromen4 |
---|---|---|---|---|
Excel voor Windows | Ja | Ja | Nee | Nee |
Excel voor Mac | Ja | Ja | Nee | Nee |
Power BI | Ja | Ja | Ja | Ja |
Power Apps | Ja | Nee | Ja | Ja |
Power Automate | Ja | Nee | Ja | Nee |
Power BI Report Server | Ja | Ja | Nee | Nee |
Azure Data Factory | Ja | Nee | Ja | Ja |
Data Factory in Microsoft Fabric | Ja | Nee | Ja | Ja |
SQL Server Integration Services | Ja | Nee | Nee | Nee |
SQL Server Analysis Services | Ja | Ja | Nee | Nee |
Dynamics 365 Customer Insights | Ja | Nee | Ja | Ja |
1M-motor | De onderliggende engine voor het uitvoeren van query's waarmee query's worden uitgevoerd die zijn uitgedrukt in de Power Query-formuletaal ('M'). |
2Power Query Desktop | De Power Query-ervaring in bureaubladtoepassingen. |
3Power Query Online | De Power Query-ervaring in webbrowsertoepassingen. |
4gegevensstromen | Power Query als een service die wordt uitgevoerd in de cloud en productneutraal is. Het opgeslagen resultaat kan worden gebruikt in andere toepassingen als services. |