En la entrada anterior realizamos una vista de pájaro de lo que nos ofrece Power Query como plataforma de BI personal. En esta entrega entraremos en detalle sobre los posibles orígenes de datos a los que podremos conectarnos.

Power Query es capaz de conectarse a una gran variedad de orígenes de datos, esta es una de sus características más destacadas. Puede conectarse a múltiples formatos de archivos planos, a archivos XML, a páginas web, a la mayoría de las bases de datos del mercado, a listas de SharePoint, incluso a Facebook y fuentes Open Data. Más adelante estudiaremos con detalles las conexiones más significativas.

A continuación mostramos la parte de la “cinta” (Ribbon) llamada Get External Data donde tenemos disponibles todas las opciones que nos permiten obtener datos externos:

ribbonPQ

A continuación vamos a ir estudiando cada una de estas opciones. Vamos a comenzar por las opciones relacionadas con datos que se obtienen desde páginas web:

  • Online Search: permite realizar búsquedas de términos que devuelven páginas web donde hay información relacionada con ellos (la mayor parte de ellas provienen de Wikipedia).
  • From Web: permite introducir una URL (dirección web) y obtiene de ella las diversas tablas y datos susceptibles de ser extraídos, para que usted pueda previsualizarlos, y elegir los que quiere obtener.

Puede hacer una prueba pulsando el botón “Online Search”, introduciendo la siguiente URL https://es.finance.yahoo.com/q/cp?s=%5EIBEX y previsualizando el resultado de ‘Table1’ en el panel que aparece a la derecha de su pantalla (ventana “Navigator”).

Opciones relacionadas con la obtención de datos a partir de ficheros:

objetos

  • From Excel: importa datos contenidos en libros Excel. En la ventana “Navigator”, que aparece en la parte derecha nos mostrará los diversos grupos de datos y tablas que ha detectado dentro de ese libro Excel y podremos previsualizarlos, para posteriormente obtener los que vayamos seleccionando.
  • From CSV: CSV es un formato estándar que se utiliza con mucha frecuencia. En él los datos vienen separados por comas (o a veces por punto y coma), por ejemplo, lo utilizan algunos bancos para entregarnos información de nuestras cuentas o de movimientos realizados. Si el fichero seleccionado cumple los estándares CSV, lo previsualiza directamente e inicia el proceso transformaciones y carga de él.
  • From XML: importa datos desde archivos XML y permite navegar por las diferentes estructuras de datos de dicho archivo, seleccionando las columnas de las que queremos obtener datos.
  • From Text: permite obtener datos de cualquier archivo de texto, siempre que en éste detecte una determinada estructura que se pueda convertir en una tabla. Habitualmente son ficheros que llevan delimitadores de columnas (coma, punto y coma, tabuladores, etc.) o que cada columna tiene una longitud fija.
  • From Folder: puede obtener información sobre las características, propiedades, archivos y carpetas que hay dentro de la carpeta indicada. Por ejemplo podríamos obtener una tabla con una lista de características de los archivos y carpetas que hay en nuestro disco duro o en cualquier carpeta.

Opciones relacionadas con la importación desde Bases de Datos:

database origenes de datos

  • From SQL Server Database: permite obtener datos almacenados en bases de datos de SQL Server.
  • From Windows Azure SQL Database: permite obtener datos almacenados en bases de datos de Azure SQL, que tenemos en la nube de Microsoft.
  • From Access Database: permite obtener datos almacenados en bases de datos Access.
  • From Oracle Database: permite obtener datos almacenados en bases de datos Oracle.
  • From IBM DB2 Database: permite obtener datos almacenados en bases de datos IBM DB2.
  • From MySQL Database: permite obtener datos almacenados en bases de datos MySQL.
  • From PostgreSQL Database: permite obtener datos almacenados en bases de datos PostgreSQL.
  • From Teradata Database: permite obtener datos almacenados en bases de datos Teradata.

Según el sistema gestor de bases de datos al que nos conectemos le pedirá una serie de características de acceso, que habitualmente nos tendrá que facilitar el departamento de TI.

Veamos un ejemplo de acceso a la base de datos SQL Server llamada ‘TBI01_Origen’ que se encuentra en el servidor ‘pc-salva’:

pcsalva

Opciones relacionadas con la importación desde otras fuentes:

fuente origenes de datos

  • From SharePoint List: permite obtener datos almacenados en una lista de SharePoint.
  • From OData Feed: permite obtener datos almacenados en fuentes de datos Open Data.
  • From Windows Azure Marketplace: permite obtener datos almacenados en Azure Marketplace.
  • From Hadoop File (HDFS): permite obtener datos almacenados en Hadoop (Big Data).
  • From Windows Azure HDInsight: permite obtener datos almacenados en HDInsight.
  • From Windows Azure Blob Storage: permite obtener datos almacenados en Azure Blob Storage.
  • From Windows Azure Table Storage: permite obtener datos almacenados en Azure Table Storage.
  • From Active Directory: permite obtener datos almacenados en el Directorio Activo de la empresa.
  • From Microsoft Exchange: permite obtener datos almacenados en Microsoft Exchange (servidor de correo).
  • From Facebook: Permite obtener datos almacenados en Facebook, que estén accesible desde la cuenta que utilicemos para conectarnos. Por ejemplo podemos extraer los amigos asociados dicha cuenta, información de publicaciones, etc.
  • From SAP BusinessObjects BI Universe: permite obtener datos almacenados en los universos de SAP Business Objects.
  • Blank Query: finalmente, podemos partir de una consulta en blanco e ir añadiendo los elementos que estimemos oportunos.

No se preocupe si no conoce alguna de estas fuentes o no tiene claro cómo realizar la conexión a ellos, es algo habitual y que en ciertas ocasiones necesita la colaboración del departamento de TI para que nos den las indicaciones oportunas. Pero en otros casos no es así, simplemente guiándonos por las pantallas en las que nos van pidiendo los datos, podremos hacerlo nosotros mismos.

Veamos a continuación cómo conectarnos a una cuenta de Facebook, para que quede claro que es algo sencillo de realizar por nosotros mismos. Para ello seguiremos los siguientes pasos:

  1. Elegimos la opción ‘From Other Sources’ y allí hacemos clic en ‘From Facebook’, apareciendo la siguiente ventana de conexión.

facebook

Donde seleccionamos los valores que se ven en la imagen anterior. Vamos a obtener la lista de “Amigos” de nuestra cuenta de Facebook. Si pincha en el desplegable que hay debajo de la palabra ‘Connection’ podrá ver las diversas opciones para la obtención de información de Facebook que hay disponibles (Actividades, Comentarios, Amigos, Feeds, Me gusta, Enlaces, Posts, etc.).

2. Pulsamos el botón ‘OK’

3. Nos aparece una pantalla pidiéndonos las credenciales, donde pulsaremos en el botón ‘Sign in’ e introduciremos nuestro usuario y contraseña de Facebook.

facebook2

4. Pulsaremos el botón ‘Entrar’.

5. Nos informa del usuario con el que estamos conectados a Facebook y pulsamos el botón ‘Save’.

6. Nos aparece la ventana con los datos obtenidos, la misma a la que llegamos una vez obtenemos acceso a la estructura de datos elegida, independientemente del origen seleccionado, la venta del ‘Query       Editor’. A partir de ahí, como se hace con cualquier otro origen de datos, podemos aplicar las transformaciones que deseemos y llevarlos a nuestro destino. Esto lo estudiaremos en los siguientes apartados. De momento nos quedamos con que hemos conseguido ver los datos tal cual están en el origen para la selección realizada.

origenes de datos power query 2

El proceso para conectarnos a cualquier otra fuente de datos es muy similar, lo que irá cambiando son las pantallas donde nos va pidiendo los datos de conexión, que serán diferentes en cada caso, pero bastante intuitivas y claras.

También tenemos disponible la opción de la “cinta” (Ribbon) llamada “Excel Data” donde tenemos una sola opción:

  • From Table: esta opción nos permite obtener datos que están dentro del propio libro Excel que estamos utilizando en este momento.

Como puede comprobar, hay acceso prácticamente a cualquiera de los orígenes de datos de los que se utilizan hoy en día. Por lo tanto, esta conectividad tan diversa es una de las fortalezas más destacadas de Power Query.

Una vez que hemos seleccionado el origen de datos, bien nos lleva directamente al editor, bien para hacerlo debemos seleccionar entre las diferentes estructuras de datos disponibles y a continuación, tenemos dos opciones mediante los botones que hay en la parte inferior:

  • Edit’: que nos lleva a la ventana del ‘Query Editor’ (la misma a la que hemos llegado en el ejemplo de obtención de la tabla con nuestros amigos de Facebook), donde podemos ir incluyendo las transformaciones que veamos oportunas y viendo directamente cómo van quedando los datos al aplicarlas. Más adelante lo veremos con detalle y estudiaremos las opciones de transformación disponibles.
  • Load’: que hace la carga directamente, sin permitirnos incorporar transformaciones adicionales. Nos ofrece la opción de cargar en una hoja Excel y/o en el modelo Power Pivot.

origenes de datos power query

Para finalizar, a modo de sintetizar los muchos elementos que hemos visto, exponemos una tabla resumen de los orígenes de datos disponibles:

tablaresumenquery

Hasta aquí esta entrega, hemos revisado las extensas opciones que nos ofrece Power Query a la hora de conectarnos a orígenes de datos. En la siguiente entrada veremos las transformaciones posibles que nos ofrece Power Query.

Si os gustan nuestros posts, desde SolidQ os invitamos a visitar nuestro bloga suscribiros a nuestra newsletter para recibir las últimas novedades del sector en vuestro correo 🙂

Salvador Ramos

Mentor & Training Delivery Lead at SolidQ
I am a Mentor at SolidQ currently focused on the area of ​​Business Intelligence. After more than 20 years of experience I have participated in many different projects, from small desktop applications to larger ones.

My last jobs have been as an IT director, consultant and trainer. My wide job experience in transactional projects, in sectors such as banking, payment methods, hotels, gas station networks... I have also a lot of experience in SQL Server and the rest of the components of the Microsoft BI platform.
Salvador Ramos

Latest posts by Salvador Ramos (see all)