Archivo del Autor: Ana Bisbé (@ambynet)

Acerca de Ana Bisbé (@ambynet)

Consultora BI con SQL Server y Office. Microsoft Partner en el área de Power BI

Modelado tabular con Power BI – Herramienta de Inteligencia de negocios

Microsoft Power BI dista de ser una simple herramienta de visualización, tal y como comenté antes . Se trata más bien de una excelente herramienta para desarrollar al completo los procesos de Inteligencia de Negocio o Business Intelligence.

El artículo “Power BI is a model-based tool”,  escrito por el maestro Alberto Ferrari que debía ser de lectura obligada para todos en este gremio, pone las cosas en su sitio en temas del poder de Power BI como herramienta de modelado. Otro ejemplo muy bueno es el de el artículo “Why data modeling is important in #powerbi” escrito por su compañero, el también maestro Marco Russo.

Todo comienza con la consulta a orígenes de datos externos, es el punto de partida para el proyecto de BI. Sobre el rol que cumple Power BI en este sentido puedes leer aquí.

Modelo tabular

El modelo tabular, es uno de los “sabores” de modelado que se pueden crear con Bases de datos SQL Server Analysis Services, el otro “sabor”, que existe desde hace mucho antes es el modelo multidimensional. Hay cierta confusión en este sentido, muchísimas veces me piden cursos sobre “creación de cubos OLAP con Power BI“. No es correcto, Power BI contiene un motor tabular, no multidimensional, que es el encargado de crear y mantener los cubos OLAP.

Además de existir en Power BI (Desktop y Server) encontramos motor de modelo tabular en SQL Server Analysis Services modo tabular, Azure SQL Server Analysis Services modo tabular y en Power Pivot de Excel. En todos los sitios, las bases son las mismas, lo que puede ocurrir es que alguna que otra funcionalidad esté activada en un sitio y no en otro.

El lenguaje para agregar elementos al modelo tabular (columnas calculadas, medidas y tablas calculadas) se llama DAX que significa Data Analysis Expressions.

Para el usuario de negocio todo esto es transparente, forma parte de “la magia” con la que Power BI convierte el resultado de ejecutar las consultas en un modelo de tablas y relaciones.

Tablas y relaciones en el modelo tabular

Cuando estamos desarrollando un proyecto de Business Intelligence con Power BI el punto fuerte de nuestro trabajo es garantizar que el modelo de datos esté debidamente diseñado para que funcione correctamente. Hay que mirar las tablas del modelo y comprobar la correcta definición de las relaciones entre ellas.

Todo el tiempo que dediques a comprobar todas y cada una de las relaciones jugará a tu favor a la hora de crear las visualizaciones y los informes analíticos de tu proyecto de BI. Fíjate en la posición de cada tabla, en el lado que ocupan de la relación, Uno vs Muchos, en las columnas que intentas utilizar y si falla, comprueba que es la columna adecuada y que tiene el tipo adecuado.

Si la tabla está del lado Uno de la relación, todos los valores de la columna que utilizas son distintos y no hay nulos.

Una vez que estés en la fase de visualización si obtienes resultados inesperados, como que el dato no se segmenta para cada filtro o que tienes valores nulos que no deben existir, regresa a comprobar la calidad de las relaciones definidas en tu modelo tabular. Por lo general allí encontrarás el problema y podrás darle solución.

modModelo

Hay dos aspectos que se admiten en la definición del modelo, las relaciones Muchos a Muchos y la Dirección de filtro cruzado. No te lo recomiendo, puede ser muy problemático, a menos que ya seas un experto y estés muy seguro de todas las implicaciones de utilizar este tipo de configuración.

No te compliques, no le hagas a Power BI más difícil el trabajo. Casi siempre, por no ser absoluta, es posible evitarlo. El modelo tabular es suficientemente rico y flexible como para permitirnos dar solución a los escenarios más complejos.  Y si no queda otra, hay que informarse muy bien de los posibles inconvenientes de este tipo de diseño.

Un elemento interesante es que si el modelo es complejo, podemos crear esquemas que segmenten la complejidad y muestren partes del modelo, lo que es bastante más cómodo de trabajar.

ModeloEsquema

Enriquecer el modelo tabular

Vimos antes, en Power BI contamos con una poderosa herramienta de consultas donde creamos las bases para nuestro modelo de datos tabular. Todo no se puede hacer en la consulta y no todo requiere programación DAX.

Es posible asignar propiedades a las columnas y métricas del modelo que ayudan mucho a las futuras acciones de visualización de las mismas. Es posible definir la visibilidad y nivel de agrupación de columnas, así como ajustar los datos de geolocalización, URLs, etc.

Hay escenarios en los que necesitamos perfeccionar el modelo sin programación, desde el menú de opciones de la ficha Modelado. Estas acciones están dirigidas sólo a las columnas que participan en la visualización, si son columnas disponibles para cálculos no es necesario.

Tratar números como discretos

Si tenemos un valor numérico, por ejemplo: número de hijos o estados (1-2-3), que necesitamos utilizar como valor discreto en el eje de un gráfico y no como valor continuo para agregar, asignamos No agregar a la propiedad Agregación.

modNum

Ordenar textos según condición

Ocurre mucho que un atributo descriptivo, una columna de nuestro modelo no se debe ordenar alfabéticamente. El caso más evidente es el de los meses, que no se ordenan “Abril-Agosto”, etc. Podemos ordenar una columna según los valores de otra, en nuestro ejemplo, el número correcto del mes para garantizar que se ordene Enero-Febrero, etc.

modDiscreto

Es en Power Query donde creamos las dos columnas y en la ficha Modelado del Power BI Desktop, grupo Ordenar donde definimos la columna que manda en el orden que se aplica a la columna que se utiliza en la visualización.

Mi recomendación es que siempre que el orden de una columna no sea alfabético, sino que se rija por alguna regla, piensa por ejemplo en cosas tan sencillas como “Alto-Medio-Bajo” o “Bien-Regular-Mal“, y siempre que tengas al menos tres posibles valores, debes crear la columna que ordena en Power Query. Si se cumplen esas dos condiciones, debes hacerlo, aunque de casualidad el orden alfabético se corresponda con el orden de la regla, por ejemplo: “Alto-Medio-Muy Alto“. En cualquier momento las etiquetas pueden cambiar.

De esto trata la fase de modelado. Debemos preparar todo lo necesario y todo que sea posible en Power Query y luego, si nos encontramos con nuevas necesidades, regresar a la consulta para ajustar cada punto que sea preciso para el buen funcionamiento el modelo.

El proyecto de Business Intelligence tiene como objetivo final crear y compartir informes y cuadros de mandos que nos lleven a la correcta toma de decisiones.

Para el final he dejado un par de opciones más.

Jerarquías en Modelos tabulares

Jerarquías de visualización

Power BI crea jerarquías de visualización siempre que utilicemos más de una columna en ejes de muchos tipos de gráficos o cabeceras de filas y columnas en matrices. La jerarquía de visualización aporta muchas ventajas y muchas combinaciones diferentes para el análisis y no hay que programarlas, apenas servirse de lo que ya está integrado.

Modjer1

Las flechas que se muestran encima del gráfico son los botones que permiten las distintas opciones de navegación por los distintos niveles de la jerarquía de visualización.

Modjer2

Pero podemos ir más allá.

Jerarquías de modelo

Veamos lo que hace Power BI con una columna de tipo Fecha, si es que no hemos cambiado las opciones de configuración predeterminada. Power BI, crea “4 columnas” y una jerarquía de modelo para garantizar el análisis por niveles. Este es otro ejemplo de la “magia” con Power BI, aunque en realidad lo que ha ocurrido es que ha creado 4 tablas que contienen columnas calculadas con DAX.

Nota al margen sobre las jerarquías de fecha “mágicas“ en Power BI.- Esta funcionalidad no es perfecta, mucho cuidado si tenemos muchas columnas de fecha. Hay que tener en cuenta que para cada una de las columnas se crea una tabla independiente y esas no las vemos ni las podemos controlar. Este comportamiento predeterminado se puede cambiar, es lo mejor.

Una de las mejores vías para conseguir un buen informe es crear jerarquías dentro del modelo tabular. Es una acción de modelado sin programación. Se pueden crear jerarquías sobre columnas que se encuentren en una misma tabla. Desde la opción contextual de los campos en una tabla se puede crear la jerarquía y luego ir añadiendo los niveles.

ModJer4

Tiene muchas ventajas preparar el modelo para realizar un análisis con jerarquías de modelo.

ModJer3

Por una parte, se orienta al usuario sobre la ruta a seguir en el análisis: La vista se ofrece con el dato resumido y es el analista o receptor quien decide descender por los niveles, ya sea tratando los datos de forma discreta, nivel a nivel, o de forma continua, teniendo en cuenta los datos de niveles superiores e inferiores.

Por otra parte, si trabajamos con jerarquías, podemos reducir los campos visibles en la vista de campos y evitar la necesidad de subir y bajar continuamente por la barra de desplazamiento de los campos.

Y por último, como las jerarquías de modelo sólo se pueden utilizar con columnas de una misma tabla, nos permite detectar algún defecto del modelado, como ocurre con los esquemas de Copo de nieve.

Todas son ventajas, el hecho de crear una jerarquía de modelo no obliga a trabajar con todos sus niveles en las visualizaciones, los campos siguen teniendo vida propia, si necesitamos utilizarlos de forma independiente no hay ningún impedimento.

Grupos

Los grupos son estructuras que se pueden crear al vuelo desde algunos gráficos o desde el panel de campos de Power BI Desktop.

Desde el punto de vista de usabilidad, crear un grupo permite segmentar los datos de una columna, en hacerlo al vuelo, de forma muy sencilla, más o menos cómoda, desde un formulario, sin programación.

En este ejemplo, ha bastado con seleccionar dos países para crear un grupo.

Desde el Editor de grupos es posible renombrar el grupo creado como América, por ejemplo y ajustar los otros elementos hasta crear los grupos.

Grupos

Desde el punto de vista de Modelado, crear grupos es muy peligroso, porque tras “la magia”, lo que ocurre verdaderamente es que se crea una columna calculada para cada grupo, y en este caso, desde Power BI Desktop, no tenemos acceso al código DAX que se generó por detrás. Si tienes curiosidad siempre puedes ver el código desde Dax Studio.

Ten en cuenta que en la expresión DAX que se genera no hay una regla de negocio que se ejecute y se valide, apenas se agregan, separados por comas los elementos que forman parte del grupo.

¿Y para qué sirven los grupos? Pues, yo los utilizo para entender y definir la lógica que quiere implementar el cliente, es decir, para crear solamente la Prueba de concepto (POC). Una vez validada la regla con el usuario final, me voy al Power Query y escribo la regla de negocio en una columna condicional y creo de esta forma una columna desde la consulta que gestiona la regla de negocio que tenía el grupo.

Desde la consulta Power Query se garantiza que se validen las reglas a futuro y que se tenga total control sobre el código, con opción de emplear parámetros y todo lo demás que tenemos en la consulta.

En este ejemplo muy simplificado, con el único objetivo de ilustrar la idea, los países que no sean los tres definidos en la condición que existan en la actualidad, o en el futuro, formarán parte del grupo Europa.

CondContinente

Jerarquías vs grupos

Las jerarquías y los grupos son estructuras completamente diferentes en Power BI, se usan con comodidad las dos; pero, mientras las jerarquías son eficientes desde el punto de vista de modelado, los grupos no lo son, son ineficientes y pueden ser peligrosos, cuidadín !!

Visibilidad y agrupación de columnas

En el modelo tabular quue trabajamos con Power BI existen columnas que no deben quedar visibles al informe. Los casos más evidentes son los de las columnas de relación y la de ordenación, así como aquellas que formen parte de jerarquías.

Lo menos evidente es que tampoco deben quedar visibles las columnas numéricas y otras que necesitamos para aplicar la lógica de las medidas y tablas que vamos a escribir con DAX.

Visible1

El resultado para la tabla Productos, en caso de no crear más jerarquías, sería este. Se pueden agregar más jerarquías y ocultas aún más campos.

Visible2

Otra acción que puede ayudar, ya no desde el punto de vista de optimización, sino la usabilidad del modelo, es agrupar las columnas en carpetas según el criterio adecuado para cada modelo en particular. Se seleccionan todas las columnas que se deseen agrupar y se introduce el nombre en la propiedad Carpeta para mostrar.

Carpetas

DAX

Bueno… lo dejamos para la próxima, las expresiones DAX – Data Analysis Expression son piedra angular en el modelado tabular de Power BI.

Espero resulte de utilidad. #HappyModeling 🙂

Crear consultas con Power BI – Herramienta de Inteligencia de Negocio

Power BI es una herramienta en la que se integran todas las etapas de un proceso de Inteligencia de Negocios o Business Intelligence. Ya he escrito sobre las tareas que se realizan en cada una de las etapas, en términos generales, en esta entrada, Power BI – Herramienta de Business Intelligence

Hoy, me quiero centrar en la etapa conocida como ETL – Extracción – Transformación – Carga. Empecemos por el principio, todo comienza por la obtención de datos externos.

Extraer datos

En Power BI existen excelentes funcionalidades para la conexión y extracción de datos externos, cuenta con un amplio grupo de conectores integrados que enlazan a orígenes de datos muy diversos en formato y complejidad. Los conectores se dividen en grandes grupos: Archivos, Bases de datos, Power BI, Azure, Servicios en línea y Otros. Cada conector es diferente, según el tipo de origen de datos al que se conecta. En cada caso se emplean navegadores y formularios específicos. El proceso es muy simple, facilita la conenctividad sin necesidad de dominar lenguajes de consulta de ningún tipo. De esta forma, se entrega al usuario de negocio la capacidad de poder iniciar desde cero un proceso de Inteligencia de Negocio.

Transformar datos

Con independencia del origen de datos, en Power Query los datos en vista previa, hasta 1000 filas, se transforman y limpian en formato de tablas de filas y columnas.

El editor de consultas o Power Query admite además de las tablas, consultas que devuelven valores de tipos diferentes como por ejemplo, variables de texto, número o fecha y además listas y registros. Es posible definir funciones de usuario y parámetros.

pq_consultas

Para crear las transformaciones no hay que conocer lenguaje M. Las transformaciones se realizan desde opciones de menú con formularios y asistentes para las funcionalidades integradas. De esta forma, el usuario de negocio puede crear las reglas necesarias en cada consulta, las agrupaciones, validaciones, segmentaciones y todo tipo de combinaciones necesarias que le permitan dar cumplimiento a sus requisitos de negocios.

Otra de las ventajas es, que en ningún caso se afecta el origen de datos, es posible transformar, configurar y adaptar todo lo que haga falta sin dañar ni siquiera de forma accidental los datos de origen.

pq_transf1

¿Por qué transformar los datos?

El objetivo fundamental de la fase Extracción – Transformación – Load (carga) en un proyecto de Business Intelligence es crear una estructura, un modelo de datos acorde al escenario que estemos trabajando y que permita obtener el informe analítico que se necesita. Hay que identificar los escenarios, por ejemplo:

  • Existencia de tablas dinámicas que necesitan convertirse en tablas con columnas no dinámicas.
  • Existencia de columnas sobrecargadas, que contienen distintos tipos y contenidos
  • Distinguir y eliminar las filas y columnas calculadas con totales, porcientos, ratios, así como filas y columnas en blanco.
  • Hay que deshacer las tablas sobrecargadas, sin concepto de entidad, al estilo Excel y crear a partir de ellas modelos tabulares con tablas con entidad propia.
  • Hay que distinguir cuando encontramos la misma estructura en tablas distintas, por lo que es necesario unir sus filas en una única tabla para el modelo o combinar archivos de una carpeta.

Algunas acciones de modelado necesarias desde la consulta son:

  • Deshacer normalización de tablas cuyo origen es cualquier base de datos relacional o consultas Power Query.
  • Agrupar y agregar columnas.
  • Estructurar tablas para modelo tabular con acciones de pivot y unpivot,  así como combinar consultas.

pq_transf2

El tratamiento de datos tipo fecha es muy importante y desde Power Query se pueden realizar muchas transformaciones como crear columnas para fechas relativas, obtener duración a partir de fechas y trabajar con un buen número de funciones instaladas, entre las que puedo resaltar la conversión del tipo de dato identificando el origen. La tabla Calendario para acciones de BI de tiempo se puede crear con lenguaje M.

Calidad de datos

Como parte del proceso ETL es necesario velar por la calidad de los datos, y en este aspecto no se queda atrás una herramienta tan completa como es Power BI.

Una funcionalidad interesante de Power Query es mostrar información sobre calidad y distribución de columnas. Resulta de gran utilidad conocer a simple vista la composición y calidad de las columnas para identificar escenarios de inconsistencia y mala calidad de los datos.

Se distinguen los valores distintos y únicos. A veces cuesta distinguir la diferencia. Se pueden utilizar para muchas cosas, dejo un ejemplo de cada uno.

Los valores distintos son importantes para identificar la calidad de las columnas que se pueden utilizar como claves foráneas para una relación con una tabla de hechos. Estas columnas deben estar del lado Uno de la relación, por lo que los valores deben ser Distintos.

Los valores únicos por su parte nos desvelan sin siquiera preguntarlo posibles anomalías en los datos. En la imagen, por ejemplo es muy significativo que exista un único producto al que se asocia uno de los 10 colores distintos que existen. ¿Anomalía o no? Depende, Power BI no conoce el negocio, “sólo” nos desvela información sobre nuestros datos.

PQ

Esta información se muestra analizando los 1000 primeros registros de datos; pero y esto es una maravilla, podemos cambiar la configuración para analizar el conjunto de datos al completo en escenarios muy particulares, el beneficio es muy alto. Luego, no olvidemos volverlo a dejar como estaba, mirando apenas los 1000 primeros registros que componen la vista previa de los datos.

No me estoy olvidando de los Flujos de datos en el Servidor de Power BI, me refiero a Power BI Dataflows, puedes ver aquí más información. Al trabajar con Power BI Dataflows perseguimos los mismos objetivos que con Power Query y avanzamos un poco más, ya que alojamos los conjuntos de datos y la lógica de la consulta en un repositorio centralizado en el servidor, lo que facilita enormemente las capacidades de reutilización de los mismos con todas las garantías que ofrece la correcta implementación de la seguridad.

Lo que ocurre es que quiero centrarme en este resumen sobre Power BI como herramienta de Business Intelligence al completo en las funcionalidades integradas en el Power BI Desktop.

Cargar datos

La ventaja de trabajar con Power BI es que se puede avanzar mucho en el proceso de creación de consultas y comprobación de muchos de los escenarios de modelado sin hacer la carga masiva de los datos.

Para un proyecto de Business Intelligence es muy importante poder avanzar sin demoras provocadas por el acceso a datos y ejecución de consultas. Con la vista previa de los datos hay suficiente información como para crear consultas muy eficientes sobre los datos de origen y agregar toda la lógica que exige el escenario en concreto.

El modelo de datos puede quedar muy bien definido tras la etapa de ETL. Cuando ya estemos seguros de que cada una de las consultas y dentro de ellas, las tablas de filas y columnas tienen el aspecto y contenido necesarios, podemos realizar la carga.

Cargar datos significa conectarse al origen, ya sea externo, ya sea otra consulta dentro del propio Power BI Desktop, extraer todos los registros, los miles o millones, todos los que sean y almacenarlos en el Modelo Tabular que existe dentro de Power BI.

En resumen, Power Query, dentro de Power BI es un excelente entorno de trabajo para realizar la etapa ETL al completo desde dentro de Power BI.

Power BI – Herramienta de Business Intelligence

En los últimos tiempos he trabajado fundamentalmente en proyectos, formación y consultoría que gira alrededor de la herramienta Power BI de Microsoft. Es una gran suerte, como analista de datos y consultora en Inteligencia de Negocios (BI), contar con una herramienta tan maravillosa como es MS Power BI.

Power BI no es una herramienta perfecta, se hace camino al andar y el equipo de producto y la comunidad que lo arropa lo están haciendo realmente bien. Por eso, el presente es precioso y aunque el futuro es realidad nunca se sabe, digamos que tiene buena cara, yo le veo futuro a MS Power BI.

Lo que en realidad me preocupa es el enfoque que me encuentro casi a diario, encasillando a Power BI como una herramienta de visualización. Y no, no lo es, ni de lejos. A veces me encuentro también, ya cada vez menos afortunadamente, la visión de que es una herramienta sencilla, de andar por casa, “sólo de clic, clic, clic”.

Power BI, rebate ambas teorías, sólo hay que leer su nombre.

Power indica poder, fuerza, potencia. Power BI es una gran herramienta y aquí viene la segunda parte, una gran herramienta de Inteligencia de Negocios, Business Intelligence (BI). Esta poderosa herramienta pasa por todas las etapas de un proceso de Business Intelligence. Todo proceso de Inteligencia de Negocios comienza con la obtención de los datos de origen, es la etapa conocida como ETL, por sus siglas en inglés de E-Extract, T-Transform y L-Load (carga).

ETL

Desde Power BI Desktop o el Servidor Power BI es posible conectar a orígenes de datos muy variados en cuanto a su estructura y complejidad. La conexión se realiza mediante asistentes y formularios personalizados según sea el caso. Estos conectores ayudan notablemente a llegar a los datos que se requieren sin tener conocimientos avanzados en materias como Bases de datos, tratamientos de orígenes Big Data o nubes varias. No se requiere dominar ningún lenguaje de consultas para hacerlo.

Una vez que los datos han llegado por ejemplo al Power Query, que es el editor de consultas del Power BI Desktop se pueden realizar incontables tareas de transformación, modelado y limpieza de datos. Power BI ofrece información sobre la calidad y distribución de las columnas. Es imprescindible detenerse en el Editor de Power Query, la extracción, manipulación y transformación de datos es un paso fundamental para que luego podamos ver los informes con la calidad necesaria. El lenguaje M, es el lenguaje de creación de consultas en Power BI. Se escribe por detrás del telón, de la que vamos creando columnas y realizando acciones y transformaciones. Este lenguaje es nuestro amigo y no muerde. Es de gran utilidad poderlo leer para comprender que las transformaciones que estamos realizando se ajustan a la lógica que necesitamos implementar. Mientras más lejos lleguemos con el Power Query y con M, mejor. #HappyQuering

Una vez tenemos las consultas preparadas, con las columnas y filas limpias, con sus tipos de datos correctamente definidos, pasamos a la siguiente etapa, la etapa de Modelado tabular.

Modelado tabular

En el proyecto de Inteligencia de Negocio fuera de Power BI se trata de la etapa de Modelado, que puede ser también Dimensional o Multidimensional. En Power BI lo que existe es Modelo Tabular.

Este modelo se compone de tablas y sus relaciones. Para crear o modificar las relaciones existen formularios y ventanas muy fáciles de comprender y gestionar. Existen reglas a cumplir para crear un buen modelo tabular que funciones de forma óptima. Power BI cuenta con un motor muy potente y cuenta además con formularios, ventanas, vistas y paneles que nos permiten crear toda la funcionalidad del modelo. Cada escenario es único; pero en la mayoría de los casos es posible aplicar los patrones de modelado tabular que se han ido identificando por parte de Microsoft y la comunidad de expertos y usuarios que lo trabajan.

Las tablas se integran por las columnas que se cargan del origen de datos. Hay que distinguir entre las columnas, aquellas que siendo numéricas se tratarán de forma discreta o que siendo de texto no se ordenan alfabéticamente, así como identificar formatos y otras características asociadas a cada una como la visibilidad, la agrupación en carpetas, etc. Estas labores permiten perfeccionar el modelo tabular que se expone a la visualización. En la organización de las columnas hay que tener en cuenta la creación de estructuras tan ventajosas como las jerarquías. Para estas tareas, Power BI cuenta con todas las funcionalidades integradas de forma tal que sea muy intuitivo perfeccionar el modelo sin que se requiera de lenguaje de programación ni sintaxis alguna.

El modelo se puede y se debe enriquecer con medidas y columnas calculadas cuyas expresiones se escriben en DAX. DAX, es el lenguaje de expresiones que permite agregar objetos, así como consultar el modelo tabular. DAX es el acrónico que representa las siglas de Data Analysis Expressions. Se ha creado a partir del lenguaje Excel, tiene su complejidad, por lo que es muy necesario dominar DAX lo mejor posible para poder sacar el mayor partido a las funcionalidades integradas. La lógica de negocio, los cálculos, métricas y KPIs del modelo tabular se definen con DAX. #HappyDAXing

Cuando tenemos el modelo preparado con todos los objetos necesarios y con las propiedades bien definidas le toca el turno a la etapa de Visualización.

Visualización

Esta etapa nos suele gustar, nos ponemos creativos e intentamos exprimir todo el jugo posible de la herramienta. Y vaya que si tiene jugo Power BI. Cuenta con un buen grupo de visualizaciones integradas que se enlazan a los datos y se ajustan mediante los paneles de propiedades de campos y formatos. Según sea la visualización se puede enriquecer con funcionalidades integradas de formato condicional y analytics.

Una de las mayores ventajas de los informes creados con Power BI es la capacidad de interactuar entre objetos y páginas de informe, a partir de funcionalidades y botones con acciones prediseñadas.

Power BI permite definir temas con combinaciones personalizadas de colores, así como importar a los informes, visualizaciones que han creado desde MS o la comunidad de usuarios y que se exponen para la libre descarga de los usuarios. La cantidad y variedad de posibilidades no ha dejado de crecer. No se ve el límite en este sentido, cada día hay alguna novedad, algún truco, una nueva funcionalidad o nueva visualización. Es espectacular la creatividad y la generosidad de toda la familia Power BI.

Un proyecto BI no es nada sin tener capacidad para el intercambio de informes analíticos y colaboración entre personas y equipos de trabajo, dentro y fuera de una organización.

Colaboración

Desde el Servidor de Power BI es posible crear áreas de colaboración entre personas. Se pueden aplicar roles a los usuarios para garantizar la seguridad de los datos. Es posible, entre otras muchas cosas, compartir informes y paneles, gestionar la conexión y actualización programada de los datos, crear alertas sobre tarjetas y crear informes y paneles a partir de conjuntos de datos que se hayan compartido en las áreas de colaboración.#HappySharing

Y Power BI va mucho más allá. Power BI hace Minería de datos y ejecuta algoritmos de Machine Learning.

Minería de Datos y Machine Learning

Como parte del proceso de evolución de esta fabulosa herramienta se han integrado funcionalidades en la consulta y gráficos que nos permiten obtener análisis muy valiosos sobre la calidad de nuestros datos, los patrones de comportamiento, la distribución y las anomalías que se presentan. La novedad de febrero 2019 es que Power BI identifica influenciadores clave, es espectacular.

Cuando se publica un informe en el servidor de Power BI también se publican el conjunto de datos, el modelo que se creó en Power BI Desktop. Una de las funcionalidades más espectaculares que tiene Power BI sobre el modelo de datos publicado es que puede ejecutar algoritmos de Machine Learning sobre las columnas visibles del modelo y crear un informe compuesto por más de 30 gráficos que exponen de formas muy diversas patrones y anomalías en los datos. Estos gráficos son muestran tendencia, clústering, estacionalidad, valores atítipos en categoría y en líneas de tiempo, correlación y muchos más.

Yo me dedico a trabajar con datos que no son míos, que no conozco. Antes de Power BI tenía que crear mis propias estructuras, muchas veces con T-SQL o minería de datos para detectar calidad y patrones en los datos. Con las funcionalidades integradas de Power BI, especialmente con el Análisis rápido sobre el conjunto de datos, sólo necesito consumir los recursos que vienen integrados. Vale muchísimo la pena, ahorra tiempo y desde luego el resultado es más exacto que el que podría encontrar yo. #HappyMining

Power BI + R + Python

Se trata de integrar lo mejor de cada uno de los mundos y Power BI lo hace estupendamente. Estos lenguajes de código abierto aportan opciones que no existen en Power BI, lo enriquecen y lo abren al mundo de los científicos de datos.

En la etapa ETL se pueden integrar códigos de R y Python, ya sea en calidad de origen de datos o aplicando transformaciones, por ejemplo ejecutando algoritmos en estos lenguajes que complementen la consulta que estamos presentando. Es posible trabajar con gráficos creados en R y Python y consumir también objetos visuales personalizados, custom visuals creados por la comunidad de usuarios Power BI enriquecida por las comunidades de usuarios de R y Python.#HappySharing

De verdad, ¿es posible pensar que Power BI sea una herramienta para prototipos, de andar por casa y para crear visualizaciones con clic clic clic?

De eso nada, Power BI es una herramienta muy valiosa para analistas de datos y los que tenemos la oportunidad de trabajar con Power BI nos sentimos muy afortunados por ello. #HappyAnalyzing #PowerBIAdicto

Mi visión del VI Encuentro PUG Madrid

Hoy, voy a hablar de nuevo de un evento, esta vez de comunidad Power BI.

Hace unos días, el pasado 19 de Marzo, se celebró el 6to Encuentro del Grupo de Usuarios de Power BI en España, de forma presencial en las oficinas de Microsoft, Madrid.

Estos encuentros resultan altamente instructivos, la temática que se debate en ellos es muy variada, aunque gira en torno a Power BI. He asistido a todos y estoy encantada, de verdad. Es un marco para todos, los que inician pueden asimilar la experiencia y vivencias de los ya iniciados y entre todos se produce un ritmo de aprendizaje continuo, es una mezcla de trabajo serio, compartido con muy buen humor. El material que se imparte es de calidad.

Me llevé, como siempre, muchos apuntes. Hubo lecciones aprendidas que pude compartir al día siguiente con mis alumnos, sin dilación 🙂

El evento, pudo ser grabado, se transmitió en streaming, con sus altas y bajas; pero el vídeo está bien, enhorabuena !!!

En esta ocasión los temas tratados fueron:

Azure Machine Learning, R, Excel y Power BI – la sesión resultó muy instructiva, tomé apuntes. Yo desconocía, entre otras, que existiese un paquete AzureML, me parece muy interesante, tengo que sacar tiempo para probarlo.

Hololens y PowerBI, queda un largo camino por andar en este sentido; pero ya se comienzan a integrar y conseguimos ver cómo funciona. Vimos unos vídeos que emplean este tipo de tecnologías y auguran un futuro muy interesante en este sentido.

BI de Tiempos con Power BI, esta fue mi sesión, estuvo dedicada a ver cómo se trabaja con columnas tipo fecha en las consultas, en el modelo tabular y en las visualizaciones. El tiempo es oro y se mide con Power BI :), me encantó hacer esta presentación, el tratamiento de fechas da para mucho, aprendí muchísimo preparándola, aprendí, por ejemplo, a crear rangos de tiempos dinámicos a partir del código del maestro Chris Webb, esto lo he podido compartir con mis alumnos.

Uso de conectores, novedades en Tooltip y mucha creatividad con informes Power BI, la presentación fue muy interesante, tomé muchísimos apuntes, sobre el nuevo conector,  data world, tengo pendiente darme de alta y empezar a bucear entre tantos recursos. Además del tema, que fue sobre la felicidad y la presentación fue muy amena, vimos en funcionamiento los Tooltips en páginas de Power BI, como dije, una sesión muy útil e interesante.

Trabajo con mapas ArcGis, muy ilustrativa la sesión, me gustó mucho, también tomé muchos apuntes, se integra muy bien con Power BI También tuve ocasión de compartir con mis alumnos las funcionalidades, que aprendí en el encuentro, a los largo de estos días desde el evento.

He asistido a los seis encuentros presenciales que se han desarrollado, estoy presentando sesión desde el tercero, me preparo con muchísima alegría y lo disfruto siempre, es una suerte poder participar y compartir experiencias en estos encuentros. Hay tiempo para el intercambio durante la pausa, con o sin café 🙂 y al finalizar, por lo general, una quedada para una cerveza, o similar, lo importante es participar y compartir.

¿Cómo se llega a estos eventos?

El grupo de usuarios funciona como un meetup, hay que darse de alta de forma gratuita desde PUGSpain Los miembros reciben la información sobre los eventos, la invitación a participar y los recursos compartidos..

Además, como todos los grupos de usuarios que pertenecen oficialmente a la comunidad PUG, hay que darse de alta

Luego, debemos buscar el PUG correspondiente a España y cualquier otro que se ajuste a nuestros intereses.

Les invito a inscribirse, es gratis, se publican los recursos de los encuentros, se intercambian dudas y soluciones en los foros y como suele ser en el trabajo de comunidad, ganamos todo. Muchísimas gracias a todos los que hacen posible el evento, especialmente a Jesús López Martín, líder de la Comunidad Power BI en España.

Eventos: Estuve en SQLBits

Interrumpí la serie de Escenarios de Modelado con DAX para hablar de los eventos y la comunidad.

Hace muchos años que trabajo por cuenta propia, por lo que no tengo lo que se dice un equipo de trabajo, mis compañeros de trabajo se encuentran en las empresas con las que colaboro y cómo no, en la Comunidad. ya sea en una comunidad de desarrolladores de Visual FoxPro, de analistas del mundo Business Intelligence y en los últimos años, especialmente la comunidad dedicada al trabajo con Modelos tabulares y Power BI.

El trabajo de un grupo de usuarios se vive intensamente en las redes sociales, Twitter y Linkedin fundamentalmente y se vive de forma presencial en los meetups y grandes eventos.

Hace un par de semanas estuve, por primera vez, en SQLBits. (No lo pude contar antes, porque una conjuntivitis me sacó de circulación) 😦

Regresé encantada, 🙂 me la pasé muy bien, aprendí muchísimo, intercambié con mucha gente y me enfrenté a un formato de evento totalmente diferente, con miles de asistentes (me asusté un poco al inicio, pensé que nos íbamos a tropezar, de verdad); pero hubo espacio para todos, grandes salones, muchísimas sesiones a la vez, un lujo de participantes, ponentes, voluntarios y patrocinadores. Hubo bastante presencia española, me encantó conocerles e intercambiar cada vez que hubo oportunidad. La organización de 10. Tal y como estaba previsto, hubo muchos conocidos y tuve la oportunidad de conocer a otros asistentes y ponentes maravillosos, es imposible nombrar a tanta gente, muchos y muy buenos, gracias !!!. Se notaba la preocupación por la seguridad de todos (custodios a la entrada y perros policías controlando el perímetro todo el tiempo, sin molestar; pero dejándose ver). La gente fue muy amable y generosa con las explicaciones, ante cualquier duda, preocupación o necesidad.

Asistí a los dos días de Training, jornada completa, a cargo de los maestros Alberto Ferrari y Marco Russo. Me traje de regreso muchísimo material para preparar y luego compartir con mis alumnos. Vaya par de jornadas más ilustrativas, un lujazo, un #HappyDAXing en toda regla. En los recesos pude aprovechar y saludar a otros participantes y profesores que ya conocía: Dejan Sarka, Steph Locke, Mark Wilcock y pude conocer a: Adam Saxton & Patrick LeBlanc y otros muchos.

El primer día de sesiones, el 23, asistí a:

  • DirectQuery in Power BI and Analysis Services – Marco Russo
  • Best practices for Power BI on implementation and monitoring – Bent Nissen Pedersen
  • PowerBI-Model Designs – Neil Hambly
  • DAX Optimization Examples – Alberto Ferrari
  • Understanding the Power BI data model – Kasper de Jonge
  • Power BI Report Server: A Deep Dive – Patrick LeBlanc

El 24, último día, asistí a:

  • Advanced Techniques for Cleaning Data using SQL Server – Jen Stirrup
  • Its Here! The Newly Remodeled SQL Server Reporting Services  – Tim Mitchell
  • Power BI security deep dive – Kasper de Jonge
  • Data Overview and Manipulation – T-SQL, R, Python – Dejan Sarka

Además, participé en una sesión muy interesante, Lightning Talks, cuyo formato desconocía por completo. En esta sesión participamos 8 ponentes, seleccionados previamente el día anterior, a partir de las propuestas entregadas durante el evento, el tiempo de exposición fue de 5 minutos, un jurado de expertos evaluó las intervenciones, un público muy entusiasta que aplaudió alzando las manos, para no molestar a las otras salas, temas muy variopintos, cierto toque de humor y algo de valor, sólo 5 minutos para introducción-desarrollo y conclusiones 🙂 Yo presenté un par de escenarios de modelado para escoger entre columnas calculadas y medidas, en ambos, ganaron las medidas, además, introducción y conclusiones ¡¡¡ y me sobraron 45 segundos !! Fue genial la oportunidad, de verdad, me la pasé estupendamente y el feedback del jurado fue muy bueno. Nunca supe quien ganó el premio, para mí era lo de menos, está claro que no fui yo, lo dieron al final del evento, por la tarde, yo me tuve que marchar al aeropuerto, justo antes de la última sesión. Estoy muy agradecida por el reto y la oportunidad.

En cuanto a temas, el evento estuvo muy bien servido, me quedaron muchísimas cosas por ver, hubo de todo: Administración Power BI, Manipulación de datos, Modelado, DAX, Visualización, SSRS, R, una maravilla !!! Y mil cosas más que no se ajustan al perfil en el que trabajo.

Este evento organizó actividades para tardes y noches, todo muy divertido, hubo un concurso de conocimientos de temas variados, nada técnico, cerveza y cena incluidas, con equipos de 6 personas mínimo, vaya diversidad en nuestra mesa: venía la gente de Alemania, Suecia, Grecia, Australia, Polonia y España 🙂 no ganamos nada; pero nos la pasamos de bien !!! La noche siguiente hubo una fiesta de disfraces con la magia como tópico, me disfracé de McGonagall y hubo quien lo adivinó, muy chulo, cena, bebida, disfraces, diversión, excelente !!!

Y hasta el clima se portó bien, mucho frío; pero mucho sol, una maravilla, no olvidemos que es Londres !!!

Bonus track 🙂

Tuvimos la oportunidad adicional de participar en una reunión del PUGPower BI User Group de LondresAn evening with #PowerBI Experts, un lujo de encuentro con maestros y expertos, entre otros:  Alberto Ferrari y Marco Russo, Chris Webb, Mark Wilcock, Kasper de Jonge, Adam Saxton & Patrick LeBlanc, y quizás me esté dejando alguno, una maravilla, divertidísimo, la pasamos estupendamente. El formato del encuentro fue muy bueno, primero una charla y luego “barra libre”… no, no de cerveza 🙂 de preguntas a los expertos y de networking. Excelente idea de los compañeros y amigos del London PUG, muchísimas gracias.

Una maravilla de evento, que he contado cada vez que he podido, en Twitter !!

En la próxima entrada, vuelvo a los temas técnicos, siento el retraso; pero entre el evento y la conjuntivitis, todo quedó paralizado. Seguiré la serie Escenarios DAX, justo donde la dejamos. Modelo tabular y relaciones y hablaremos del filtro cruzado.

Eventos: Me voy al SQLBits

Esta semana voy a interrumpir la serie de Escenarios de Modelado con DAX para hablar de los eventos y la comunidad.

Hace muchos años que trabajo por cuenta propia, por lo que no tengo lo que se dice un equipo de trabajo, mis compañeros de trabajos se encuentran en las empresas con las que colaboro y cómo no, en la Comunidad. ya sea en una comunidad de desarrolladores de Visual FoxPro, de analistas, del mundo Business Intelligence y en los últimos años, especialmente la comunidad dedicada al trabajo con Modelos tabulares y Power BI.

El trabajo de un grupo de usuarios se vive intensamente en las redes sociales, en Twitter y Linkedin fundamentalmente y se vive de forma presencial en los eventos.

Cada evento al que he tenido la oportunidad de asistir ha sido un privilegio, una experiencia, una fiesta del conocimiento. Los disfruto mucho.

Hay eventos de todos los tipos, en cuanto a contenidos, objetivos y costes. Hay eventos gratuitos, hay eventos de pago asociados a la comunidad por lo que sus precios son reducidos, hay eventos de pago, sin reducción de precio, hay eventos muy caros (al menos para mí). Todo depende de los objetivos, aspiraciones y posibilidades de cada uno.

En España, suelo participar, entre otros, en los meetups de:

  • PASS_ES (Capítulo Professional Asosiation SQL Server en Spain), radicado en España y en casa de todos y cada uno de los que participamos en los eventos online o presenciales, según sea la oportunidad nos reunimos varias veces al año y celebramos una fiesta espectacular, SQL Saturday, suele ser el tercer sábado de septiembre,  vete preparando, la fecha del 22 de septiembre… puede ser, puede ser…
  • PUG Spain (Grupo de usuarios de Power BI), está radicado en Madrid, con varias reuniones al año donde se combinan técnicos, como yo, dedicados a trabajar con estas herramientas con los llamados “clientes o usuarios finales”, los verdaderos genios que saben exprimir todo el jugo de una herramienta tan maravillosa como Power BI. El próximo encuentro ya tiene fecha, para el próximo 19 de Marzo, en un mes !!!

Fuera de España, he asistido a SQLSaturday en Lisboa, Edimburdo, Copenhagen y Oporto (como ponente de dos sesiones). Me gusta muchísimo el formato de este evento. Uno de los grandes atractivos de estos eventos es que las sesiones pre-evento, que se desarrollan los jueves y viernes antes al SQLSaturday suelen tener precios muy reducidos. Las jornadas de los sábados son totalmente gratuitas, el único problema real es decidir entre tantas y tantas sesiones de calidad que no te quieres perder. He podido disfrutar de una jornada de 8 horas con figuras de primerísimo nivel por unos 100.00 € o 120.00 €. Y a veces, además hemos conseguido combinar, de maravilla, el viaje de trabajo con algo de turismo familiar. Todas son ventajas. Desafortunadamente, también he cancelado más de uno y más de dos, por razones personales. Por eso, cada vez que consigo asistir, se convierte para mí en un gran regalo.

He estado más de una vez en TUGA.IT, en Lisboa, me encantan los eventos en Portugal, desde España es muy cómodo viajar, la gente es entrañable y consiguen unos invitados de lujo.

El pasado año estuve dos veces en Londres, en dos eventos de comunidad, UK Power BI Summit y  Power BI World Tour dos eventos excelentes !!! Ya se que me repito, es una suerte, un regalo, una oportunidad para compartir y disfrutar.

Y esta semana, por primera vez, me voy al SQLBits, me hace muchísima ilusión, es en Londres, qué maravilla de ciudad. Habrá muchos conocidos y la oportunidad de conocer a otros muchos.

En su formato, hay dos días de Training, jornada completa. Yo me voy a decantar, los dos días, por los maestros Alberto Ferrari y Marco Russo que como siempre es una suerte tenerlos cerca y que te cuenten de primera mano las maravillas del DAX, #HappyDAXing !!! Hay muchas opciones, ¡qué barbaridad de convocatoria! 🙂 12 opciones un día y 14 opciones el siguiente, gente de la talla de Mark Wilcock, Itzik Ben-Gan, Adam Saxton & Patrick LeBlanc, Tim Mitchell, Dejan Sarka, Chris Webb, Steph Locke y otros muchísimos más. No tiene desperdicio.

Luego hay dos días de sesiones, dos días de mucho networking, muchos temas, variedad, en fin.

El primer día de sesiones, el 23, lo pienso dedicar a:

  • DirectQuery in Power BI and Analysis Services – Marco Russo
  • Best practices for Power BI on implementation and monitoring – Bent Nissen Pedersen
  • PowerBI-Model Designs – Neil Hambly
  • DAX Optimization Examples – Alberto Ferrari
  • Understanding the Power BI data model -Kasper de Jonge
  • Power BI Report Server: A Deep Dive – Patrick LeBlanc

Para el 24, ultimo día, tengo pensado asistir a:

  • What Power BI users need to know about R – Nico Jacobs
  • Its Here! The Newly Remodeled SQL Server Reporting Services  – Tim Mitchell
  • Power BI security deep dive – Kasper de Jonge
  • Dimensional Modeling: Beyond the Basics – Jason Horner
  • Data Overview and Manipulation – T-SQL, R, Python – Dejan Sarka
  • 60 Reporting Tips in 60 Minutes – Ike Ellis

Así es que habrá de todo: Administración Power BI, Manipulación de datos, Modelado, DAX, Visualización, SSRS, R, una maravilla !!!

Al regreso, os cuento qué tal fue y desde luego, en Twitter !!

DAX: Relaciones y Cálculos II

Este escrito forma parte de la serie: Escenarios de Modelado con DAX

Algunos de los recursos que he consultado sobre Modelado tabular y DAX los podemos encontrar en Modelos tabulares y DAX – Recursos

En la entrada anterior hablamos de las Relaciones en el Modelo tabular, hablé de los roles que cumplen las tablas a cada lado de la relación y dije que conocer estos aspectos es importante para entender cómo trabajar con columnas que se encuentren en tablas diferentes. Y al final, me despedí con un problema, al aplicar según qué filtro, el resultado de las columnas calculadas ya dejaba de ser coherente. Sigue leyendo