Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Modelado
3.01. Normalización de tablas
3.02. Tipos de tablas
3.03. Tabla de fechas o Calendario (I)
3.04. Tabla de fechas o Calendario (II)
3.05. Tabla de fechas o Calendario (III)
3.06. Role Playing Dimension
3.07. SCD (Slowly Changing Dimension)
3.08. Dimensiones degeneradas
3.09. Dimensiones basura o Junk dimensions
3.01. Normalización de tablas Power BI Cheat sheet 3. Modelado
Cliente Fecha factura Factura Importe La normalización más típica es dividir una tabla en varias tablas
Cliente 1 02/01/2020 FAC001 350,00 € temáticas manteniendo un campo ID común. El motor de base de
Tabla de datos de Power BI requiere relajar la Forma normal 2, evitando
Cliente 1 01/03/2020 FAC003 682,50 € normalizaciones que impliquen sucesivas relaciones.
hechos
Cliente 4 01/02/2020 FAC004 55,89 €
Desnormalización
Cliente Ciudad Provincia Proceso inverso a la normalización para reducir Nº de relaciones.
Aquello que es susceptible de controlar lo es porque con el paso del tiempo puede sufrir Las tablas de dimensiones son las encargadas que tener datos más explícitos y descriptivos
variaciones. Son esas variaciones las que interesa controlar para poder modificarlas. de lo que expresan las tablas de hechos.
Las tablas de hechos son las encargadas de recoger los datos que tienen una variación Por ejemplo, en la imagen anterior, vemos una tabla de hechos que identifica el producto que
constante y sustancial a lo largo del tiempo. Por ello, siempre tienen: se vende (el qué) y el cliente al que se vende (quién) mediante sendos códigos (campos clave
ID). Esto es así porque si, tanto el producto como el cliente, se describieran totalmente en esa
• Una o más columnas con las fechas relevantes para nuestras necesidades. Es decir, las misma tabla mediante más columnas, resultaría una tabla inmensa y muy poco eficiente:
fechas que relatan cuándo ha ocurrido el hecho que se quiere estudiar. habría múltiples valores repetidos.
• Una o más columnas con valores numéricos que cuantifican los hechos que se quieren
estudiar. En otras palabras, columnas que dicen “el cuánto”. Por ello, las descripciones largas de productos y clientes deben estar a lo largo de las filas de
• Una o más columnas con datos que identifican el qué, el quién o el cómo de los hechos tablas especializadas a tal efecto: la tabla de dimensiones Clientes y la tabla de dimensiones
que se quieren estudiar. Normalmente, los valores de estas columnas tienen forma de Productos. En cada fila de una tabla de dimensiones debe haber un código ID o valor único
código abreviado, puesto que los datos más explícitos y descriptivos están en otras tablas (campo clave) que identifique ese producto, cliente, etc. Estos códigos deben ser los mismo
que se estudiarán a continuación. utilizados en la tabla de hechos.
Tabla de dimensiones
Tabla de hechos
El campo clave de las tablas de dimensiones se llaman Primary key o clave primaria y no
puede estar repetido a lo largo de las filas (los valores de esa columna deben ser únicos).
Cada campo clave de las tablas de hechos se llama Foreign key o Clave externa y puede
estar repetido (de hecho suele ser así) a lo largo de las filas.
3.03. Tabla de fechas o Calendario (I) Power BI Cheat sheet 3. Modelado
1 Formatos de fecha distintos 4 Sustituir a la alternativa “Fecha y hora automáticas de Power BI”.
La Tabla de fechas o Calendario es una tabla de dimensiones. Así, es una tabla que La alternativa a una tabla Calendario es la activación de la funcionalidad Fecha y hora
contiene descripciones o atributos del campo fecha que hay en la tabla de hechos. automáticas para archivos nuevos** (clic en ficha Archivo > Opciones y configuración >
Opciones > Sección GLOBAL > Carga de datos / marcar la opción Fecha y hora
Si bien el campo fecha de una tabla de hechos indica que algo ha ocurrido en un automáticas para archivos nuevos ).
momento (fecha), una tabla de dimensiones para las fechas (Tabla de fechas o
Calendario) sirve para tener formas distintas de escribir una misma fecha (Enero, Ene, E, Esta opción comentada antes no cumple con ninguno de los puntos 1, 2 y 3 que explican
ene-2022, Enero de 2022, 2022-01, Semana 1, etc.) y después poder ser utilizada en las ventajas y la justificación de una tabla Calendario. Además, la opción Fecha y hora
slicers y otras visualizaciones. automáticas genera internamente un gran volumen de información oculto al usuario, pero
necesario para que Power BI pueda gestionar las fechas de esta forma.
2 Uso de funciones de inteligencia de tiempo
Una tabla Calendario contiene una serie completa de fechas. De esta forma, al Fecha y hora automáticas es una opción solo recomendable para modelos muy simples y
relacionarla con la tabla de hechos, nos aseguramos de que en el modelo no existen donde no se va a hacer un uso intensivo del filtrado de fechas y de las opciones de
“huecos” temporales que puedan perjudicar o distorsionar visualizaciones. inteligencia de tiempo.
Con un modelo de datos sin huecos temporales, hay posibilidad de usar las llamadas * Aunque no son recomendables dada su complejidad y dificultad de tratamiento de los conceptos sentido de
funciones de inteligencia de tiempo o time intelligence sin errores. Las funciones de filtro y cardinalidad, los esquemas Galaxy o Constelación son los que tienen varias tablas de hechos.
inteligencia de tiempo permiten realizar cálculos avanzados, personalizados a
**Activar la funcionalidad Fecha y hora automáticas genera una jerarquía de campos asociada al campo fecha
necesidades específicas y en muchos casos adaptados a sectores profesionales (por de una tabla de hechos. Esta jerarquía es: Year (Año), Quarter (Trimestre), Month (Mes) y Day (Día).
ejemplo, el financiero).
3.04. Tabla de fechas o Calendario (II) Power BI Cheat sheet 3. Modelado
Opciones de creación de una tabla Calendario? Crear una tabla Calendario con CALENDAR
1 Mediante una tabla creada en los archivos origen de datos. 1 Clic en vista Datos > ficha Inicio > grupo Cálculos > Nueva tabla .
De esta forma, se importará como cualquier otra tabla mediante Obtener datos de Power
BI (Power Query). Esta opción tiene la ventaja de que tendremos un mayor y más fácil 2 En la barra de fórmulas, escribir:
control de nuestras fechas. Las desventajas son el espacio físico en disco (archivo) que
ocuparía la tabla, junto el hecho de que Power Query debe ocupar tiempo para conectar y
cargar esta tabla.
2 Columna para mes en formato número de año (2021, 2022, 2023, etc.):
Igual que anterior, pero escribir:
Ejemplo
Una SCD es una dimensión que cambia con una frecuencia mayor a la que lo hacen
las dimensiones normales. Es decir, una dimensión donde los datos de uno o varios
atributos sufren modificaciones o se generan nuevos datos.
Opciones
Dimensiones degeneradas
Dimensiones degeradas
Una dimensión degenerada es un campo clave que está en una tabla de hechos (clave
externa) cuya literalidad es útil para el análisis. Es decir, una clave que, en vez de ser un
número entero sin significado concreto para las personas, es un conjunto de caracteres que
puede tener un significado relacionado con el registro que representa.
Ejemplo
Concepto
Las dimensiones basura son aquellas que cumplen las siguientes condiciones:
Problema - solución
El problema que surge con estas dimensiones es que, en teoría, se debería crear una tabla (con su
correspondiente relación) para cada una de esas dimensiones basura.
Para reducir complejidad y relaciones en el modelo de datos, se puede crear una tabla con todas las
junk dimensiones reflejadas mediante todas las combinaciones (producto caertesiano) de todos los
valores. Ver imagen de la derecha.