O que é o Power Query?
O Power Query é um motor de transformação e preparação de dados. O Power Query vem com uma interface gráfica para obter dados de fontes e um editor do Power Query para aplicar transformações. Como o mecanismo está disponível em muitos produtos e serviços, o destino onde os dados são armazenados depende de onde o Power Query é usado. Usando o Power Query, você pode executar o processamento de extração, transformação e carregamento (ETL) de dados.
Diagrama com fontes de dados simbolizadas à esquerda, passando pelo Power Query para transformação no centro e, em seguida, indo para quatro destinos à direita: Microsoft Azure Data Lake Storage, Microsoft Dataverse, Microsoft Excel e Microsoft Power BI.
Como o Power Query ajuda na aquisição de dados
Os utilizadores empresariais gastam até 80% do seu tempo na preparação de dados, o que atrasa o trabalho de análise e tomada de decisões. Vários desafios contribuem para esta situação e o Power Query ajuda a resolver muitos deles.
Desafio existente | Como é que o Power Query ajuda? |
---|---|
Encontrar e conectar-se a dados é muito difícil | O Power Query permite a conectividade com uma vasta gama de origens de dados, incluindo dados de todos os tamanhos e formas. |
As experiências de conectividade de dados são muito fragmentadas | Consistência da experiência e paridade dos recursos de consulta em todas as fontes de dados. |
Os dados muitas vezes precisam ser reformulados antes do consumo | Experiência altamente interativa e intuitiva para a criação rápida e iterativa de consultas sobre qualquer fonte de dados, de qualquer tamanho. |
Qualquer modelagem é única e não repetível | Ao utilizar o Power Query para aceder e transformar dados, defines um processo repetível (consulta) que pode ser facilmente atualizado no futuro para obter dados de up-todata. Caso seja necessário modificar o processo ou a consulta para levar em conta os dados subjacentes ou as alterações de esquema, você pode usar a mesma experiência interativa e intuitiva usada quando definiu inicialmente a consulta. |
Volume (tamanhos de dados), velocidade (taxa de alteração) e variedade (amplitude de fontes de dados e formas de dados) | O Power Query oferece a capacidade de trabalhar em relação a um subconjunto de todo o conjunto de dados para definir as transformações de dados necessárias, permitindo-lhe filtrar e transformar facilmente os seus dados para um tamanho gerenciável. As consultas do Power Query podem ser atualizadas manualmente ou aproveitando os recursos de atualização agendada em produtos específicos (como o Power BI) ou até mesmo programaticamente (usando o modelo de objeto do Excel). Como o Power Query fornece conectividade a centenas de fontes de dados e mais de 350 tipos diferentes de transformações de dados para cada uma dessas fontes, você pode trabalhar com dados de qualquer fonte e em qualquer forma. |
Experiências do Power Query
A experiência de utilizador do Power Query é fornecida através da interface de utilizador do editor do Power Query. O objetivo dessa interface é ajudá-lo a aplicar as transformações necessárias simplesmente interagindo com um conjunto amigável de faixas, menus, botões e outros componentes interativos.
O editor do Power Query é a principal experiência de preparação de dados. No editor, você pode se conectar a uma ampla variedade de fontes de dados e aplicar centenas de transformações de dados diferentes visualizando dados e selecionando transformações da interface do usuário. Esses recursos de transformação de dados são comuns a todas as fontes de dados, independentemente das limitações subjacentes da fonte de dados.
Quando cria um novo passo de transformação interagindo com os componentes da interface do Power Query, o Power Query cria automaticamente o código M necessário para efetuar a transformação, para que não seja necessário escrever qualquer código.
Atualmente, estão disponíveis duas experiências do Power Query:
- Power Query Online— Disponível em integrações como fluxos de dados do Power BI, fluxos de dados da Plataforma Microsoft Power, fluxos de dados de preparação do Azure Data Factory e muitos outros que fornecem a experiência por meio de uma página da Web.
- Power Query para Desktop— Encontrado em integrações como o Power Query para Excel e o Power BI Desktop.
Observação
Embora existam duas experiências do Power Query, ambas fornecem quase a mesma experiência de utilizador em todos os cenários.
Transformações
O motor de transformação no Power Query inclui muitas funções de transformação pré-criadas que podem ser utilizadas através da interface gráfica do editor do Power Query. Essas transformações podem ser tão simples quanto remover uma coluna ou filtrar linhas, ou tão comuns quanto usar a primeira linha como cabeçalho de tabela. Há também opções avançadas de transformação, como mesclar, acrescentar, agrupar por, pivotar e despivotar.
Todas essas transformações são possíveis escolhendo a opção de transformação no menu e, em seguida, aplicando as opções necessárias para essa transformação. A ilustração a seguir mostra algumas das transformações disponíveis no editor do Power Query.
Para obter mais informações: Guia de início rápido: usando o Power Query no Power BI
Fluxos de dados
O Power Query pode ser utilizado em muitos produtos, como o Power BI e o Excel. No entanto, a utilização do Power Query num produto limita a sua utilização apenas a esse produto específico. Fluxos de Dados são uma versão de serviço independente do produto da experiência do Power Query que é executada na nuvem. Usando fluxos de dados, você pode obter dados e transformá-los da mesma maneira. Mas, em vez de enviar a saída para o Power BI ou Excel, você pode armazenar a saída em outras opções de armazenamento, como Dataverse ou Azure Data Lake Storage. Dessa forma, você pode usar a saída de fluxos de dados em outros produtos e serviços.
Para obter mais informações: O que são fluxos de dados?
Linguagem de fórmulas do Power Query M
Em qualquer cenário de transformação de dados, existem algumas transformações que não podem ser feitas da melhor maneira usando o editor gráfico. Algumas dessas transformações podem exigir configurações e configurações especiais que a interface gráfica não suporta atualmente. O motor do Power Query utiliza uma linguagem de script nos bastidores para todas as transformações do Power Query: a linguagem de fórmulas Power Query M, também conhecida como M.
A linguagem M é a linguagem de transformação de dados do Power Query. Qualquer coisa que aconteça na consulta é, em última análise, escrita em M. Se pretender fazer transformações avançadas utilizando o motor do Power Query, pode utilizar o editor avançado para aceder ao script da consulta e modificá-lo como quiser. Se você achar que as funções e transformações da interface do usuário não podem executar as alterações exatas necessárias, use o editor avançado e a linguagem M para ajustar suas funções e transformações.
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"
Para mais informações: linguagem de fórmula do Power Query M
Onde pode utilizar o Power Query?
A tabela seguinte lista os produtos e serviços Microsoft onde o Power Query pode ser encontrado.
Produto | Motor M1 | Power Query Desktop2 |
Power Query Online3 |
Fluxos de dados4 |
---|---|---|---|---|
Excel para Windows | Sim | Sim | Não | Não |
Excel para Mac | Sim | Sim | Não | Não |
Power BI | Sim | Sim | Sim | Sim |
Aplicações Power | Sim | Não | Sim | Sim |
Power Automate | Sim | Não | Sim | Não |
Servidor de Relatório do Power BI | Sim | Sim | Não | Não |
Azure Data Factory | Sim | Não | Sim | Sim |
Data Factory no Microsoft Fabric | Sim | Não | Sim | Sim |
Serviços de integração do SQL Server | Sim | Não | Não | Não |
SQL Server Analysis Services | Sim | Sim | Não | Não |
Dynamics 365 Customer Insights | Sim | Não | Sim | Sim |
motor de 1M | O mecanismo de execução de consulta subjacente que executa consultas expressas na linguagem de fórmula do Power Query ("M"). |
2Power Query Desktop | A experiência do Power Query encontrada em aplicações de ambiente de trabalho. |
3Power Query Online | A experiência do Power Query encontrada em aplicativos de navegador da Web. |
4Fluxos de dados | Power Query como um serviço que é executado na nuvem e é independente do produto. O resultado armazenado pode ser usado em outros aplicativos como serviços. |