Modelado en Estrella: Potenciando el Análisis de Entrega de Alimentos con Power BI(FASE 3)

Hola muy buenos días , tardes o noches.

Para el día de hoy terminaremos de crear el proceso de dimensional final del reto CHALLENGE 6 «RESTAURANT FOOD DELIVERY ANALYSIS», para estos casos es fundamental responder las preguntas y explotar este dataset a mucho más nivel. ¡BIENVENIDO AL FP20 ANALYTICS CHALLENGE! vamos para empezar la ultima fase la (FASE 3)

El enlace del reto es este: https://fp20analytics.com/challenge

 

En este post se ha abordado el proceso de creación del modelo dimensional para el análisis de datos de entrega de alimentos en restaurantes. Se han presentado los pasos necesarios para definir las dimensiones y la tabla de hechos, así como la importancia de seleccionar las columnas adecuadas y crear claves subrogadas. Además, se ha destacado la relevancia de este modelo para soluciones en Power BI y otras herramientas de Business Intelligence (BI).

Importancia del modelado en estrella en soluciones de Power BI: El modelado en estrella es una técnica clave para el diseño de modelos de datos en Power BI y otras herramientas de BI. Permite una estructura simplificada y optimizada para el análisis de datos, al organizar la información en una tabla de hechos central y dimensiones relacionadas a través de claves subrogadas. Esta estructura facilita la generación de consultas eficientes y la visualización de datos de manera intuitiva.

El modelado en estrella ofrece varias ventajas para soluciones en Power BI. Primero, permite realizar análisis multidimensional al relacionar la tabla de hechos con múltiples dimensiones, lo que proporciona una visión más completa de los datos. Además, al utilizar claves subrogadas, se evitan problemas de ambigüedad y se asegura la integridad y consistencia de las relaciones entre las tablas.

Otra ventaja importante es que el modelado en estrella simplifica la creación de paneles y reportes interactivos en Power BI. Al tener una estructura clara y bien definida, los usuarios pueden explorar los datos de manera intuitiva, realizar segmentaciones y filtrados, y obtener insights de forma rápida y precisa.

En este caso, realizaremos el proceso en el cual primero definiremos dónde crearemos y trabajaremos el modelo, en este caso, será Power Query.

Ahora, ¿cuáles serán nuestras dimensiones? Bueno, revisando la sabana de datos, podemos observar que podemos obtener las dimensiones en base a estas columnas. Por ejemplo, la primera dimensión candidata para mí será…

Recordemos que a cada columna le crearemos una clave subrogada. Es fundamental crearlas y de clase específica para luego relacionar con la tabla de hechos y, por último, a la misma tabla de hechos le crearemos un campo subrogado para tener un ID único para cada registro, dado que en los datos suministrados no presentamos o no contamos con uno.

Otro punto que quiero aclarar del por qué seleccioné estas columnas para el modelado de datos es que son de alta aditividad. ¿Qué quiere decir esto? Que podemos organizar, es decir, categorizar los datos con las dimensiones, claro está preservando las jerarquías de cada una, y lo fundamental es que no tenemos ambigüedad con ninguna de estas columnas candidatas finales para las dimensiones. ¡Ojo con esto, que es importante entenderlo!

Paso 1) Las columnas candidatas iniciales son Driver ID y Driver Name, ¿por qué? Bueno, en este caso, la idea es saber, por ejemplo, la cantidad de entregas que ha realizado cada conductor. Podemos segmentar en base a esta dimensión muchas más alternativas en este dataset. Por ejemplo, obtener los cálculos de cuáles son los deliveries que generan más ingresos y cuáles no. Se puede calcular cuáles de estos deliveries tardan más en las entregas de despacho de comida y justamente recomendar oportunidades de mejora en base a esto. Hay más aspectos que dejé en el tintero, pero esta es la razón por la cual seleccionamos estas dos, y claro está, por qué estas dos, porque el Driver ID y el Driver Name son afines, obviamente, pero es importante resaltarlos.

Paso 2) La segunda dimensión de este caso candidata es Restaurant ID. ¿Por qué? Porque deseamos observar cuál es el restaurante que recibe más llamadas en estos casos de gestión, para poder valorar cuál es el que genera más ingresos, cuál nos afecta más económicamente porque da reembolsos, y así ir respondiendo más y más preguntas. ¿Cuál es el ID de restaurante que demora más en entregar la comida al delivery? Y otros incisos más que podrías justificar el por qué de esta columna.

Paso 3) La tercera dimensión será en base a esta columna: Customer ID. Partiendo de la columna anterior, identificar las mismas preguntas: saber cuál es el cliente que da más propinas, o cuál es el que pide más reembolso, y con ello recomendar opciones de publicidad o soluciones específicas para este cliente. Saber qué clientes piden más y en qué franja horaria nos contactan los que más nos contactan, así que vale la pena tenerlo.

Paso 4) Esta columna es bien interesante para poder gestionar todo, ya que identificaremos cuál es el área con más llamadas: Delivery Area. Para redireccionar los riders o modificar en ciertas franjas horarias la logística humana y empresarial en este enfoque, para optimizar los tiempos de respuesta.

Paso 5) Procedemos a crear las dimensiones. Recordemos que partimos de una sabana de datos, así que si se llega a actualizar esta sabana de datos, lo mejor será crear en este caso una referencia y, en base a esta, empezar a crear las tablas y dejando solo las columnas involucradas según la dimensión, y sumándole la columna índice a cada una de estas dimensiones que verán en las imágenes.

Paso 6) Ahora, para la alimentación de la tabla de hechos, la idea es cruzar las columnas de las dimensiones con las columnas de las tablas de hechos con un left join para traer el ID y luego eliminar las columnas que no deseamos, dejando solo las llaves foráneas o claves subrogadas en las dimensiones. En este caso, es otra clave fundamental de las dimensiones. Recordemos que, en el segundo subpaso de este paso 6, que replicaremos tantas veces tengamos dimensiones, es fundamental lo siguiente: solo expandir la columna índice, es decir, la clave foránea.

Luego, debemos eliminar la columna por la cual cruzamos para que solo quede la subrogada o foránea que trajimos a la tabla de hechos con el left join.

En el caso de Driver ID y Driver Name, se deben contemplar las dos columnas seleccionadas tanto en la de hechos como en la dimensión, para que sea exacto y mantener la integridad segura del cruce.

Por último, creamos las relaciones con las claves subrogadas y foráneas con la tabla de hechos.

Espero que este paso a paso y estas tres fases sean de utilidad para la creación y comprensión en caso práctico para el modelo dimensional, lo cual es vital, repito, vital para las soluciones en Power BI o cualquier otra herramienta de BI.

 

El modelado en estrella es esencial para el desarrollo de soluciones en Power BI, ya que proporciona una estructura óptima y simplificada para el análisis de datos. En el contexto del análisis de entrega de alimentos en restaurantes, este enfoque permite identificar dimensiones relevantes, como conductores, restaurantes, clientes y áreas de entrega, y relacionarlas con la información central de la tabla de hechos.

El modelado en estrella facilita la exploración de datos, el descubrimiento de patrones y tendencias, y la generación de informes interactivos. Además, al mantener la consistencia y la integridad de las relaciones entre las tablas, garantiza la precisión de los análisis y las decisiones basadas en datos.

En resumen, el modelado en estrella es una metodología fundamental para el diseño de modelos dimensionales en soluciones de Power BI. Su implementación adecuada permite aprovechar al máximo las capacidades de análisis y visualización de datos de esta plataforma, brindando información valiosa para la toma de decisiones y la mejora continua de los procesos empresariales.

 

Vicente Antonio Juan Magallanes

Business Intelligence Technical.

 

Perfil linkedin.

Loading

Deja un comentario

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