Un espacio para compartir ideas, tutoriales, automatizaciones y experiencias reales de trabajo con plataformas de datos y analítica. Artículos y notas sobre datos, Power BI, Fabric, Azure y automatización.
En esta oportunidad La Data Web trae un post de un crack de la ingeniería de datos que muy amablemente quiso aportar en escritura. Sin más que escribir dejo su artículo exhibido con su consentimiento donde se presentará:
¡Hola a todos! Les cuento que voy a iniciar una serie de blog posts en los cuales explicaré la forma de usar Azure desde scripts, en particular desde PowerShell (pero la mayoría de los conceptos aplican a Python, Bash, y cualquier otro lenguaje de scripting que sea soportado).
Presentación
Antes de comenzar.. ¿quien escribe esto? Una breve presentación: Soy Martin Zurita, trabajo actualmente como Data Engineer en Pi Data Strategy & Consulting, llevo casi 3 años trabajando con la suite de Azure, sobretodo lo que refiere a la parte de Big Data/BI/ETL, no voy a mencionar cada tecnología porque la idea no es aburrirlos o abrumarlos con nombres. Estoy actualmente tercero en mas preguntas respondidas acerca de Data Factory en StackOverflow https://stackoverflow.com/tags/azure-data-factory-2/topusers . Intento probar y mantenerme al dia con las novedades de la plataforma, y aunque me falta mucho aun por aprender, tengo un buen manejo del tema que les estaré desarrollando en este y en futuros blog posts. Mis links:
El modelado de datos de Power Bi se vuelve cada vez más poderoso. Algunas veces, esta potencia es usada sin consideración de efectos secundarios. Lo expertos suelen mencionar el riesgo de la bidireccionalidad entre tablas o la falta de armado de un modelado de los datos.
Algunos de estos casos de bidireccionalidad eran mitigados construyendo medidas (CROSSFILTER) para que aquel cambio en la navegación solo afecte al valor calculado. Aún así, muchos optaban por hacer dicho cambio porque los requerimientos del cliente incluían que una dimensión pueda filtrar a otra. En los primeros release de Power Bi esto era posible bugueando las visualizaciones. Hoy, gracias al update de Junio, es posible realizarlo de forma convencional sin bug. Esto sucede gracias a la nueva posibilidad de poder incorporar filtros a nivel visual dentro de la visualización de segmentación de datos. Entonces podríamos agregar una medida como filtro que nos ayude a determinar los elementos que deberían permanecer tras filtrar otra dimensión.
La construcción de un modelo de Bi no es algo que debe tomarse a la ligera e ir cargando tablas en Power Bi e intentando relacionar como estén. Ciertamente escribo este post para que comprendan una forma de modelado que puede ayudar a mejorar la performance de su bi y ahorrarles muchos dolores de cabeza en peticiones del cliente y DAX. Pensar en un modelo es tener un diseño de datawarehouse que luego puede ser llevado a una capa semántica (SSAS o Power Bi) o podríamos aplicarla en ésta última capa en caso que no tengamos un Warehouse.
En esta oportunidad vamos a construir un modelo de estrella.
CONTEXTO
La realidad inicia en bases de datos normalizadas donde toda la información está al mínimo evitando todo tipo de replicaciones y muy relacionada entre si.
Nuestro objetivo para concretar el modelo es denormalizar este conjunto tomando solo aquellas tablas que estén alineadas al objetivo o área de negocio en la cual diseñaremos un modelo.
Los modelo de estrellas consisten en dos tipos de tablas construidas
Tablas de hecho: son tables que mantienen los datos numéricos o calculables que podrían ser usados como agregaciones en los reportes posteriormente.
Tablas dimensiones: son tablas que mantienen la información descriptiva que podría ser usada como segmentación de datos sobre la tabla de hecho.
Hoy por hoy el lenguaje Power Query se convirtió en el inicio de varias herramientas de Microsoft que nos permite limpiar y procesar antes de interactuar con la propia herramienta. Podemos conocer sobre en su sitio. Setearemos el lenguaje power query en Notepad++ para que podamos nutrirnos de pensar código "M" en frío detenidamente analizando por esquema de colores, avisos de paréntesis y hasta intellisense. Pasos para realizarlo:
Ciertamente parece sencillo conectarse a un OneDrive pues todo debería ser nativo, tener un conector e incluso podemos hacerlo desde la Web. Ciertamente me ocurrió que quería más flexibilidad en el modo de conexión a drive para poder explotarlo lo mayor posible desde Power Bi Desktop y que se actualice sin necesidad de un gateway. Para ello voy a enseñarles como conectar a OneDrive for business y OneDrive Personal con el conector de Excel.
El procedimiento en Power Bi es idéntico para los dos. Lo que cambiará es el modo de conseguir el link de acceso.
OneDrive para la empresa o Sharepoint
Vamos a navegar por la web o local (en caso que lo tengamos sincronizados) hasta el archivo que deseemos conectar. El ejemplo estará dado con un excel. Una vez que estemos en el archivo vamos a abrirlo con excel local.
En el menu de Archivo seleccionamos el siguiente botón:
La ruta se verá algo así: "https://[Empresa]-my.sharepoint.com/personal/ibarrau_[Empresa]/Documents/Pruebas%20Propias/PaisPciaDeptoLatiLon.xlsx?web=1″
Antes de poder disponer del enlace, deberemos borrar el ?web=1 para que termine la dirección en xlsx.
OneDrive - Personal
Este caso es un poco más engorroso. Deberemos construir una URL propia a partir de valores que encontremos navegando en los archivos. La dirección a construir es algo así:
Donde todo aquello que está en negrita vamos a reemplazarlo. La forma de obtener esos valores puede variar según el tipo de suscripción de onedrive personal que tengan. No funciona igual en todos los casos. Para conocer estas formas abramos nuestro onedrive personal y busquemos el archivo.
Para la primera alternativa daremos click derecho al archivo e insertar o embed.
Ésta opción generará un código html que nos ayudará a encontrar dichos valores:
Como pueden apreciar ese enlace tiene los valores que buscamos pintados en negrita listos para reemplazar.
La elección de cual usar es suya. Si aplican un método y no encuentran los valores de resid y de authkey, entonces intenten el otro modo.
Power Bi Desktop
Lo primero que haremos será abrir un Power Bi y Obtener Datos con el conector de excel. Elijamos cualquier de nuestra computadora y daremos "Editar" para dirigirnos al editor de consulta. Desde allí chequeamos en el menú Vista la "Barra de Fórmulas" para modificar unas líneas. Si seguimos todo igual tendremos el siguiente código.
Para conectarnos al excel de la web, vamos a hacer unos cambios. Primero borraremos la palabra "File" para reemplazarla por "Web" y luego copiaremos la cadena antes descrita entre las comillas de la dirección del archivo.
De esta forma podremos conectar a cualquiera archivo de OneDrive o Sharepoint como si fuera un excel. Por usar Web.Content no necesitará gateway cuando lo publiquemos a service.
¿Ya probaste conectarte?
Newsletter
Recibí nuevos artículos en tu correo
Suscribite para enterarte de nuevas publicaciones, tutoriales y novedades sobre nuestros artículos y herramientas.