PowerBI y el procesamiento nativo de JSON
PowerBI es uno de los nuevos entornos de generación de informes que puede utilizar para visualizar datos. Una gran ventaja de PowerBI es su soporte nativo de JSON y su motor de transformación programable incorporado. Power-BI puede simplemente hablar directamente con Couchbase Server e informar sobre los datos. No es necesario ningún controlador ODBC o JDBC. | ![]() |
Visualizar datos en Couchbase Server v4 en 4 pasos
Veamos los 4 pasos para visualizar tus datos de Couchbase Server en PowerBI:
#1 Obtener algunos datos de muestra:
Estoy usando el bucket travel-sample que viene con Couchbase Server 4. Instala este conjunto de datos usando la pestaña "settings" en la consola de administración o durante la instalación. Podrás seguir los ejemplos.
#2 Consulta a través de la API REST N1QL:
Utilizaré una consulta bastante sencilla para el ejemplo: Esta consulta devuelve la lista completa de todas las aerolíneas con sus vuelos totales a cada aeropuerto de destino.
1 2 3 4 5 |
SELECCIONE a.nombre, r.destinoaeropuerto, cuente(a.nombre) como total_vuelos DESDE `viaje-muestra` r ÚNASE A `viaje-muestra` a EN TECLAS r.airlineid DONDE r.tipo ="ruta" Y a.tipo="aerolínea" GRUPO POR r.destinoaeropuerto, a.nombre PEDIR POR r.destinoaeropuerto |
Para conectar PowerBI con N1QL. Utilizaremos la API REST de N1QL para ejecutar la consulta. Algunos pueden no saber esto pero N1QL viene con una API REST que toma una declaración ad-hoc. N1QL REST API está documentado aquí y usted puede utilizar la herramienta consciente de JSON de su elección para golpear directamente esta API. Mi herramienta preferida es Cartero (disponible también en chrome marketplace). N1QL REST API combinado con postman me da la visibilidad completa de lo que está viajando a través del cable.
En la siguiente figura, estoy golpeando un nodo de cluster local en el puerto 8093 con la consulta anterior con postman.
Pasaremos la URL codificada a Power BI y tendrá el siguiente aspecto:
1 |
http://10.0.0.52:8093/query/service?statement=select%20a.name,r.destinationairport,%20count(a.name)%20total_flights%20from%20`travel-sample`%20r%20join%20`travel-sample`%20a%20on%20keys%20r.airlineid%20where%20r.type%20=%22route%22%20and%20a.type=%22airline%22%20group%20by%20r.destinationairport,%20a.name%20order%20by%20r.destinationairport |
#3 Enviar y Transformar Datos en PowerBI:
Por último, debe iniciar la versión de escritorio de Power BI. La versión de escritorio es gratuita y está disponible aquí.
- Ve al menú "Obtener datos" y elige "Web" como método. Introduce la URL anterior y espera a que aparezcan los datos.
- Ahora pasaremos por una serie de transformaciones para preparar nuestros datos para la visualización.
- Una vez que los resultados se transmiten a Power BI, verá los atributos JSON que vuelven de N1QL. Acceda a los "resultados" haciendo clic en el enlace "Lista" de la pantalla.
- Utilizaremos la transformación a tabla para dar forma a nuestro JSON. Haz clic en el menú "A tabla" de la parte superior y no especifiques ningún delimitador. Simplemente haga clic en "Aceptar".
- A continuación, haga clic en el pequeño icono "dividir" en la parte superior de la columna en la cuadrícula de una sola columna para dividir los atributos en JSON en columnas separadas en la tabla.
- Una vez que haya hecho clic en Aceptar, este es el aspecto que debería tener la transformación de datos completada... Simplemente haga clic en "Cerrar y aplicar" en la esquina superior izquierda
#4 Visualizar datos en PowerBI:
Me gusta utilizar la visualización TreeMap para mostrar los destinos más populares de cada aerolínea. Para llegar a ellos,
- Arrastre "Columna1.aeropuertodestino" bajo Grupo
- Arrastre "Columna1.total_vuelos" a Valores.
- Arrastre "Columna1.nombre" a Filtros a nivel de página y amplía el campo para filtrar en "Air Foyle".
También modificará el tipo de datos para total_flights. Para llegar allí, hay 2 clics más. Siga el Plus Verde en la figura de abajo.
- Cambie el tipo de datos de la columna total_vuelos a "Número entero".
- Cambie la Agregación en total_vuelos a "Suma".
¡Y ya está!.
También quiero mencionar que puedes usar ODBC/JDBC para conectarte a los datos de Couchbase Server también. Aquí está el enlace para descargar gratis Controladores ODBC y JDBC para Couchbase Server.
Sin embargo... Lo que estoy viendo en el mundo de hoy es que la mayoría de los nuevos datos que se generan y almacenan están en JSON. Así que las nuevas plataformas de visualización de datos como PowerBI, están añadiendo un potente soporte alrededor de JSON. PowerBI ha hecho un gran trabajo haciendo que sea super fácil trabajar con datos en Couchbase Server sin un driver ODBC.
Feliz pirateo.
cihan biyikoglu - director de gestión de productos