¿Qué nos depara 2020 a nivel tecnológico?
13 septiembre, 2019
Logística 4.0, la influencia de la tecnología en el crecimiento del sector.
9 octubre, 2019

La funcionalidad de Real Time en Power BI permite transmitir datos y mostrar paneles en tiempo real, siendo compatible con cualquier tipo de visualización susceptible de ser mostrada, siempre y cuando el origen de datos tenga unas características que permitan su integración con dicha visualización. Este origen de datos puede ser diverso, y dependiendo del mismo, la capacidad de visualización es mayor o menor. El contenido de este artículo se centra en un análisis minucioso sobre la funcionalidad del Real Time en Power BI, es decir, la capacidad de los informes para mostrar visualizaciones con datos “en vivo”.

En primer lugar, se lleva a cabo un estudio que abarca desde la aplicabilidad según el modelo de negocio hasta la arquitectura, en la que se profundiza en la integración con Azure Stream Analytics. Además, se repasan las principales limitaciones encontradas desde el punto de vista de una valoración objetiva de la herramienta.

Más tarde, se comentan las conclusiones personales una vez se ha llevado a cabo el trabajo de investigación, haciendo hincapié en las principales ventajas y desventajas encontradas en la funcionalidad de Real Time implementada en Power BI.

Por último, se enumera una serie de requisitos que deben cumplirse en cada proyecto en el que se requiera la utilización de esta herramienta. Dependiendo del escenario de uso, la utilización puede ser más o menos apropiada. 

Aplicabilidad

Como posibles aplicaciones orientadas a la obtención de datos en tiempo real, se encuentran modelos de negocio que reciben eventos de manera continua. Es el caso de aquellos basados en la tecnología IoT que utilizan este tipo de flujos de información para obtener “insights de calidad que impacten en sus negocios de manera inmediata.

Dentro de Power BI Service, se observa que, dentro de los diferentes tipos de fuentes de transmisión de datos, “Push” es la que aporta mayor valor, ya que es la única forma de establecer alertas en los puntos más críticos de cada negocio. Tiene una latencia comprendida entre tres y cinco segundos, y una limitación de un millón de filas en el conjunto de datos empujados (hasta 16 MB).

El “Streaming puro” implica una latencia de un segundo aproximadamente, por lo que su velocidad es mayor, pero no se pueden establecer alertas. Además, presenta limitaciones a la hora de representar gráficas con más de una categoría. La usabilidad de este tipo de fuente se acota a visualizaciones como tarjetas, “gauges” y gráficos de línea.

Un ejemplo práctico de aplicación del Real Time son los sensores, que se han convertido en una pieza fundamental y cada vez están presentes en más empresas, ya que permiten tomar decisiones fundamentales en función de la información que trasmiten. Por ello, tiene una gran importancia disponer de estos datos y establecer alertas que informen de la situación actual o desencadenen eventos lógicos, permitiendo reconducir la estrategia dependiendo de las contingencias diarias y particulares para cada negocio. El objetivo en este caso es reducir el tiempo de reacción y actuar de la forma más eficiente posible.

La rapidez con la que se efectúan cambios y se reacciona ante las adversidades es una pieza clave para conseguir el éxito de una estrategia o la consecución de un objetivo. Por ello, el servicio de retransmisión de datos en directo tiene una aplicación directa y efectiva para cualquier tipo de negocio.

Arquitectura y funcionamiento

El funcionamiento depende de algún mecanismo que “empuje” (Push) datos en tiempo real al servicio Power BI. Hay tres formas de crear un dataset hacia el cual podamos “empujar” los datos en el servicio de Power BI.  

  • Power BI REST APIs: Permite la creación programada del dataset y la personalización de todos los parámetros, además del acceso por una vía de autentificación segura.
  • Interfaz web: Facilita la creación rápida del dataset con configuraciones limitadas y la generación de una URL para impulsar los datos.
  • Azure Stream Analytics: Si se crea un output de tipo Power BI en Azure Stream Analytics, se genera automáticamente un dataset de tipo mixto, con las conexiones del Azure Stream Analytics preconfiguradas y listo para el consumo en Power BI.

Los datos son empujados hacia el dataset, el cual puede ser de tres tipos:

  • Push Datasets:
    • Permite almacenar los datos que recibe.
    • Crea informes en Power BI Desktop y hace uso de “Calculated Measures”
    • Permite Alertas, “Q&A” y “Custom Visuals”.
    • Latencia: 3-5 segundos.
    • Las visualizaciones no se refrescan de manera continua.
    • Los datos que llegan se almacenan en un Azure SQL (provisionado por Power BI Service), y son recibidos por el motor VERTIPAQ a través de “DirectQuery”.
  • Streaming:
    • Los datos llegan a un caché de corta duración, gestionado por Redis. Power BI se conecta al caché para crear visualizaciones.
    • Latencia: aproximadamente un segundo.
    • Las visualizaciones están optimizadas para situaciones de Real Time pero son muy limitadas.
  •  PubNub:
    • Es un servicio externo que gestiona los datos. Power BI obtiene dichos datos de PubNub Stream a través de la integración del SDK de PubNub.

Cuando se crea un output desde Azure Stream Analytics a Power BI, la tarea que realmente lleva a cabo es utilizar los APIs REST para crear un output “Hybrid”, “Push” y “Streaming” aprovechando las ventajas de cada uno de los datasets. No obstante, tiene un efecto secundario: si los “Requests” exceden de 15KB para el dataset de “Streaming”, pero no exceden los 16 MB del dataset de tipo Push, los datos serán actualizados en dicho dataset, pero las visualizaciones de tipo “Streaming” fallarán.

Conclusión

En relación al análisis llevado a cabo, una de las principales ventajas que se percibe es la gran facilidad y rapidez de implementación de la solución en Power BI Service. Sin embargo, se presentan determinadas limitaciones en la carga de información y en la visualización de la misma.

El servicio cumple su funcionalidad representando gráficas sencillas de una categoría, como en el caso de las series temporales, pero si se introducen más categorías, se encuentran dificultades para visualizar los datos representados, especialmente en “Streaming” o PubNub.

Para aquellos negocios que necesiten un tiempo real más ajustado, no se considera una solución acertada, puesto que es posible que las visualizaciones no funcionen de forma óptima ante grandes cantidades de datos o una concurrencia elevada de eventos.

Sin embargo, una de las fortalezas más grandes del Real Time en Power BI es la capacidad de establecer alertas específicas para cada negocio que generen valor a la hora de reaccionar ante las contingencias que se presenten, teniendo en cuenta que estas alertas sólo se pueden implementar a través de “Push datasets”. Además, la implementación de Real Time en Power BI mediante “Streaming”si puede ser útil en el caso de que el negocio presente un tráfico de datos moderado y requiera unos KPI´s relativamente sencillos.

Autores: Yu Cao, Santiago Fernández, Jorge Rodríguez.

 

También podéis seguirnos en Twitter, LinkedIn y Facebook.


 

Licencia de Creative Commons
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial 4.0 Internacional.

 

 

Compártelo: Share on FacebookTweet about this on TwitterShare on LinkedInPin on Pinterest

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

NEWSLETTER