Power BI Datamart
Power BI Datamart
ento
de
Hace unas semanas os hablaba sobre la posibilidad que nos proporcionaban los Power BI dataflows, de
almacenar el resultado de sus ejecuciones en un Datalake controlado por nosotros, para poder reutiliazr
después esos resultados, fuera incluso del entorno de Power BI. Para acabar de completar las opciones
de Arquitectura,en el pasado Microsoft Build, se anunció una nueva característica de Power BI,
denominada Datamart. Si lo resumimos mucho, se trata de posibilitar que los Dataflows, almacenen su
salida en tablas de una base de datos Azure SQL, todo ello gestionado desde el interfaz web, en un
formato que pretende ser No-Code / Low-Code. Eso sí, para poder disponer de esta funcionalidad,
necesitamos de una licencia de Power BI Premium, ya sea por usuario o por capacidad. (de forma
informal, como respuesta a alguna pregunta en un foro, se ha anunciado que por el momento, no es
necesaria licencia Premium para los visores, aunque veremos que ocurre con la versión final).
La funcionalidad , está en Preview, y se nota en algunos detalles por pulir, relacionados con la
posibilidad de gestionar errores de carga y no perder todo el trabajo realizado, algo que me ha ocurrido
en estas primeras pruebas, varias veces 😊.
Arquitectura
Antes de meternos con las funcionalidades y posibilidades que tenemos a nuestra disposición en el
interfaz, vamos a ver cual es la arquitectura de estos Power BI Datamart, y que mejor forma de
comenzar que mostrando el linaje del resultado final.
Como podéis ver en esa imagen, tenemos un par de orígenes de datos, que consolidan datos en un
Power BI Datamart, accedido posteriormente por dos Datasets, y un informe mostrando datos de cada
uno de esos Datasets. Lo primero que llama la atención es que no aparezcan los Dataflows que se crean
para cargar los datos en el Datamart, entiendo que porque están “embebidos” dentro del propio
Datamart, pero es cuanto menos curioso. Con lo que debemos de tener cuidado, es en como queremos
gestionar este escenario de disponer de diferentes Datasets, que utilicen como origen el nuevo
Datamart, puesto que el Dataset que se crea para presentar los datos del Datamart, tiene una
Docum
ento
de
consideración que siempre será diferente a las del resto de Datasets que creemos manualmente, entre Difusió
ellas: n
Pública
- Todas la características del Dataset que configuremos dentro del Datamart, se llevarán
únicamente a ese Dataset “predeterminado”.
- No podemos modificar el modelo de ese Dataset, fuera del entorno del Datamart
- No podemos configurar algunas de las opciones del Dataset, como la actualización, sino es a
través de las opciones de configuración del propio Datamart
Pero que ocurre cuando creamos un Datamart? Realmente, lo que hace Power BI, es utilizar Power
Query Online, para traerse y transformar los datos, según necesitemos y especifiquemos, y almacenar el
resultado de esas consultas en una base de datos Azure SQL, que se crea para albergar esos datos. La
creación de esa base de datos, es transparente para nosotros, se realiza “al vuelo” y el coste está
incluido en la licencia de Power BI (al menos por el momento). Una vez cargadas esas tablas,
definiremos nuestro modelo en Estrella, configurando las relaciones. Esa configuración se materializa en
un esquema de metadatos en la base de datos creada, y se puede consultar a través de unas vistas
generadas para tal propósito, como se puede apreciar en la imagen:
Se trata de un Azure SQL accesible desde fuera del entorno de Power BI, al que podemos
conectarnos desde herramientas de administración, o desde otras herramientas de explotación de
datos, y que como hemos comentado con anterioridad, hereda las configuraciones aplicadas al
Datamart, como por ejemplo, la seguridad a nivel fila.
Conclusiones
Como dice el gran Miguel Egea, por tener un martillo, no todo son puntas, o lo que es lo mismo, los
Power BI Datamarts seguramente no sean la solución ideal en todos nuestros escenearios, pero si
complementa las opciones posibles, y permite simplificar mucho, la infraestructura necesaria para que
Docum
ento
de
usuarios de negocio puedan crear un Datamart, de un modo ágil y sencillo. Adicionalmente, como Difusió
puntos relevantes: n
Pública
- Nos permite desarrollar una solución de principio a fin, desde el navegador, sin utilizar Power BI
Desktop, por lo que los usuarios de Mac, lo agradecerán.
- Además, al trabajarse directamente en el servicio, se elimina la necesidad de publicación. Un
cambio en los metadatos del Datamart, se visualiza directamente en el informe. Al embeber
también la capa de ETL con Power Query, y tener un Dataset en modo Direct Query, la
actualización del Datamart, ya refleja los cambios en la capa de visualización.
- En un mismo entorno, podemos trabajar con código M, código SQL y código DAX, dependiendo
de con cuál nos encontremos más cómodos, en un entorno low code, en el que podemos
realizar consultas SQL, con un interfaz gráfico estilo Power Query.