Publicada octubre 31, 2013

Mejor Rendimiento usando: El efecto cascada en Power Pivot

Power Pivot

Power Pivot trabaja como una base de datos relacional almacenada en memoria. Es de tipo tabular (de ahí el nombre de Modelo Tabular) y el lenguaje para interactuar con dicho modelo se llama DAX.

El modelo tabular se rige por los mismos conceptos básicos de bases de datos relacionales en donde tenemos:

La tabla primaria (tabla de hechos) = un ejemplo muy común es aquella tabla de ordenes de ventas que tiene miles o millones de registros

Las tablas de Dimensiones = las cuales presentan atributos y llaves de tabla que están relacionadas con la tabla primaria. Un ejemplo muy común es la tabla de productos la cual contiene una lista única de los productos que vendemos.

Ahora, puede que dicha tabla de dimensión tenga otra relación con una tabla de Subcategorías de productos y dicha tabla, a su vez, tenga una tabla de Categorías de productos como se muestra en la figura de abajo:

waterfal

Con Power Pivot el mejor plan es siempre utilizar la ventaja del efecto cascada

Pero, Qué es el efecto cascada?

Veamos un ejemplo. En palabras cortas, es cuando utilizamos como segmentadores de datos, filtros, etiquetas de filas y/o columnas las columnas que se encuentran en las tablas de dimensiones para que el contexto de filtro fluya hasta la tabla de hechos (o de ventas en este caso).

Para Power Pivot es mucho más sencillo filtrar 4 datos en una tabla y luego pasar ese contexto a otra tabla que tratar de reconocer 4 millones de datos para luego ver cuales podemos filtrar.

Punto importante: el rendimiento es mejor cuando hay menos saltos para llegar a la tabla de hechos (en nuestro caso la tabla de ventas)

El concepto es simple, es mucho más veloz fluir de la tabla Productos a la tabla de Ventas que fluir desde la tabla de Categorías, para luego pasar por la tabla de Sub-Categorías, pasar por la tabla de productos y luego hacer un ultimo salto o flujo hasta la tabla de ventas.

Pero, cómo logramos esto?

En la imagen de arriba tenemos un caso muy común de sobre-normalización que sucede cuando nos volvemos un poco “locos” y decidimos normalizar nuestras tablas un poco más de lo necesario lo cual puede traer desventajas para cuando queramos crear nuestras consultas (fórmulas) contra nuestro modelo.

La forma mas óptima es crear un modelo con el modelo estrella el cual es el tener la menor cantidad de tablas tipo sub-dimensiones y dejar un modelo que luce de la siguiente forma:

FIGURA 2

1 tabla principal y pocas tablas de dimensiones. Limitar los saltos para un mejor efecto de cascada.

Los invito a que prueben este pequeño concepto y les advierto que la próxima semana voy a estar creando un nuevo post actualizado de uno de los primeros posts que escribí en la versión en inglés de mi blog:

Entendiendo las Tablas, Relaciones y Modelado de Datos en Power Pivot

el cual va a estar totalmente en español. Sin duda algo que va a ampliar de manera significativa el articulo que he escrito el día de hoy.

Último anuncio

Para aquellos que todavía estén interesados en inscribirse en la escuela online de Power Pivot pueden inscribirme al siguiente correo electrónico: info@poweredsolutions.co o visitando el sitio web para conocer mas sobre el curso.

(dar clic en la imagen para ver el sitio web)

Power Pivot
Subscribe
Notify of
guest
0 Comentario
Inline Feedbacks
View all comments