¿Qué es Power Query?

Power Query es un motor de preparación de datos y transformación de datos. Power Query incluye una interfaz gráfica para obtener datos de orígenes y un Editor de Power Query para aplicar transformaciones. Dado que el motor está disponible en muchos productos y servicios, el destino en el que se almacenarán los datos depende de dónde se usó Power Query. Con Power Query, puede realizar el procesamiento de extracción, transformación y carga (ETL) de datos.

Power Query entrada, transformación y destino

Diagrama con orígenes de datos simbolizados a la derecha, pasando power query para la transformación y, a continuación, a varios destinos, como Azure Data Lake Storage, Dataverse, Microsoft Excel o Power BI.

Cómo Power Query ayuda con la adquisición de datos

Los usuarios empresariales invierten hasta el 80 % de su tiempo en la preparación de datos, lo que retrasa el trabajo de análisis y toma de decisiones. Varios desafíos contribuyen a esta situación y Power Query ayuda a abordar muchos de ellos.

Desafío existente ¿Cómo ayuda Power Query?
Buscar y conectarse a datos es demasiado difícil Power Query permite la conectividad a una amplia gama de orígenes de datos, incluidos los datos de todos los tamaños y formas.
Las experiencias de conectividad de datos son demasiado fragmentadas Coherencia de la experiencia y paridad de las funcionalidades de consulta en todos los orígenes de datos.
A menudo, es necesario volver a dar forma a los datos antes del consumo Experiencia altamente interactiva e intuitiva para crear consultas de forma rápida e iterativa a través de cualquier origen de datos, de cualquier tamaño.
Cualquier forma es puntual y no repetible Al usar Power Query para acceder a los datos y transformarlos, se define un proceso repetible (consulta) que se puede actualizar fácilmente en el futuro para obtener datos actualizados.
En caso de que necesite modificar el proceso o la consulta para tener en cuenta los cambios de esquema o datos subyacentes, puede usar la misma experiencia interactiva e intuitiva que usó al definir inicialmente la consulta.
Volumen (tamaños de datos), velocidad (velocidad de cambio) y variedad (amplitud de orígenes de datos y formas de datos) Power Query ofrece la capacidad de trabajar con un subconjunto de todo el conjunto de datos para definir las transformaciones de datos necesarias, lo que le permite filtrar y transformar fácilmente los datos en un tamaño administrable.
Power Query las consultas se pueden actualizar manualmente o aprovechar las funcionalidades de actualización programadas en productos específicos (como Power BI) o incluso mediante programación (mediante el modelo de objetos de Excel).
Dado que Power Query proporciona conectividad con cientos de orígenes de datos y más de 350 tipos diferentes de transformaciones de datos para cada uno de estos orígenes, puede trabajar con datos de cualquier origen y en cualquier forma.

experiencias de Power Query

La experiencia del usuario Power Query se proporciona a través de la interfaz de usuario Editor de Power Query. El objetivo de esta interfaz es ayudarle a aplicar las transformaciones que necesita simplemente mediante la interacción con un conjunto descriptivo de cintas de opciones, menús, botones y otros componentes interactivos.

El Editor de Power Query es la experiencia de preparación de datos principal, donde puede conectarse a una amplia gama de orígenes de datos y aplicar cientos de transformaciones de datos diferentes mediante la vista previa de los datos y la selección de transformaciones de la interfaz de usuario. Estas funcionalidades de transformación de datos son comunes en todos los orígenes de datos, independientemente de las limitaciones del origen de datos subyacente.

Al crear un nuevo paso de transformación mediante la interacción con los componentes de la interfaz de Power Query, Power Query crea automáticamente el código M necesario para realizar la transformación, por lo que no es necesario escribir ningún código.

Actualmente, hay disponibles dos experiencias de Power Query:

  • Power Query Online: se encuentra en integraciones como flujos de datos de Power BI, flujos de datos de Microsoft Power Platform, Azure Data Factory flujos de datos de limpieza y muchos más que proporcionan la experiencia a través de una página web en línea.
  • Power Query para escritorio: se encuentra en integraciones como Power Query para Excel y Power BI Desktop.

Nota

Aunque existen dos experiencias Power Query, ambas proporcionan casi la misma experiencia de usuario en cada escenario.

Transformaciones

El motor de transformación de Power Query incluye muchas funciones de transformación precompiladas que se pueden usar a través de la interfaz gráfica del Editor de Power Query. Estas transformaciones pueden ser tan sencillas como quitar una columna o filtrar filas, o tan comunes como usar la primera fila como encabezado de tabla. También hay opciones de transformación avanzadas, como combinar, anexar, agrupar por, dinamizar y anular la dinamización.

Todas estas transformaciones son posibles eligiendo la opción de transformación en el menú y aplicando las opciones necesarias para esa transformación. En la ilustración siguiente se muestran algunas de las transformaciones disponibles en Editor de Power Query.

Imagen que muestra los comandos de transformación en las pestañas Transformar, Inicio y Agregar columna del Editor de Power Query.

Más información: Inicio rápido: Uso de Power Query en Power BI

Flujos de datos

Power Query se pueden usar en muchos productos, como Power BI y Excel. Sin embargo, el uso de Power Query dentro de un producto limita su uso solo a ese producto específico. Los flujos de datos son una versión de servicio independiente del producto de la experiencia de Power Query que se ejecuta en la nube. Con flujos de datos, puede obtener datos y transformar datos de la misma manera, pero en lugar de enviar la salida a Power BI o Excel, puede almacenar la salida en otras opciones de almacenamiento, como Dataverse o Azure Data Lake Storage. De este modo, puede usar la salida de flujos de datos en otros productos y servicios.

Más información: ¿Qué son los flujos de datos?

Lenguaje de fórmulas de Power Query M

En cualquier escenario de transformación de datos, hay algunas transformaciones que no se pueden realizar de la mejor manera mediante el editor gráfico. Algunas de estas transformaciones pueden requerir configuraciones y opciones especiales que la interfaz gráfica no admite actualmente. El motor de Power Query usa un lenguaje de scripting en segundo plano para todas las transformaciones de Power Query: el lenguaje de fórmulas M de Power Query, también conocido como M.

El lenguaje M es el lenguaje de transformación de datos de Power Query. Todo lo que sucede en la consulta se escribe en última instancia en M. Si desea realizar transformaciones avanzadas mediante el motor de Power Query, puede usar el Editor avanzado para acceder al script de la consulta y modificarlo como desee. Si observa que las funciones y transformaciones de la interfaz de usuario no realizarán los cambios exactos que necesita, use el Editor avanzado y el lenguaje M para ajustar las funciones y transformaciones.

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"

Más información: Power Query lenguaje de fórmulas M

¿Dónde puede usar Power Query?

En la tabla siguiente se enumeran los productos y servicios de Microsoft en los que se puede encontrar Power Query.

Producto Motor M1 Power Query
Escritorio2
Power Query
Online3
Flujos de datos4
Excel para Windows No No
Excel para Mac No No No
Power BI
PowerApps No
Power Automate No No
Power BI Report Server No No
Azure Data Factory No
SQL Server Integration Services No No No
SQL Server Analysis Services No No
Dynamics 365 Customer Insights No
Motor de 1M Motor de ejecución de consultas subyacente que ejecuta consultas expresadas en el lenguaje de fórmulas de Power Query ("M").
2Power Query Escritorio La experiencia de Power Query que se encuentra en las aplicaciones de escritorio.
3Power Query En línea La experiencia de Power Query que se encuentra en las aplicaciones del explorador web.
4Flujos de datos Power Query como servicio que se ejecuta en la nube y es independiente del producto. El resultado almacenado se puede usar en otras aplicaciones como servicios.

Consulte también

Orígenes de datos en Power Query
Obtención de datos
inicio rápido de Power Query
Dar forma y combinar datos mediante Power Query
¿Qué son los flujos de datos?