Sei sulla pagina 1di 17

Capítulo 6: Definición de la estructura de las dimensiones

Capítulo 7: Medidas

Capítulo 8: Sentencias MDX

7 Medidas

Business Intelligence SQL Server 2016

7-1 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Objetivos

Al finalizar el capítulo, el alumno podrá:

• Comprender los conceptos de “medida” y “grupo de


medidas”.
• Configurar las relaciones entre las dimensiones y las tablas
de hechos.

7-2 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Cibertec Perú S.A.C - Business Intelligence SQL Server 2016 1


Agenda

• Cubos
• Medidas y grupos de medidas
• Relación entre las dimensiones y los grupos de medidas
̵ Relación regular
̵ Relación referenciada
̵ Relación fact
̵ Relación muchos - muchos

7-3 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Cubos

Dimensiones
drill up drill down

Métrica
Agregaciones

Niveles

7-4 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Cibertec Perú S.A.C - Business Intelligence SQL Server 2016 2


Cubos

• Propiedades del cubo:

– Name: nombre del cubo.


– Visible: determina si el cubo es
visible o no.
– Default Measure: la medida
devuelta por el cubo en caso de
que las consultas no
especifiquen de forma explícita
qué medida se desea visualizar.

7-5 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Medidas y grupos de medidas

• Medida:
– Representa un valor obtenido a partir
de una columna numérica de la tabla
de hechos.

• Grupo de medidas (measure group):


– Las medidas se agrupan en grupos
de medidas (measure groups).
– Cada measure group corresponde
con una tabla de hechos.
– Un cubo de SSAS 2016 puede
contener varios measure groups.

7-6 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Cibertec Perú S.A.C - Business Intelligence SQL Server 2016 3


Medidas y grupos de medidas

• Propiedad de los Measures


Groups

– Name: nombre del measure


group.
 Por defecto, el nombre del
measure group se forma a partir
de la tabla de hechos
correspondiente.
– Storage location: directorio
donde se ubicará físicamente la
data del measure group.

7-7 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Medidas y grupos de medidas

• Propiedad de los measures


– Name: nombre de la medida
– Description: descripción de la
medida
– Source: columna de la tabla de
hechos a partir de la cual se
obtiene la medida
– Format String: determina el
formato de visualización de la
medida (por ejemplo, porcentaje y
moneda). También, permite
ingresar una cadena de formato
personalizada.

7-8 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Cibertec Perú S.A.C - Business Intelligence SQL Server 2016 4


Medidas y grupos de medidas

• Propiedad de los measures

– Visible: determina si la medida


es visible o no. Esta propiedad
es útil cuando se definen
medidas intermedias, a partir
de las cuales se calcularán
otras medidas a través de
MDX.

– Data Type: tipo de dato de la


medida. Por defecto, es
heredado del tipo de dato de la
columna que genera la medida.

7-9 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Medidas y grupos de medidas

• Propiedad de los measures

– Aggregation function: función que se


utilizará para sumarizar la medida.
 SUM: es la función de agregación por
defecto. Significa que el valor de la
medida para un miembro de una
dimensión es igual a la suma de los
valores para todos sus miembros hijos.
Ejemplo: la venta del Perú es la suma de
las ventas de todos sus departamentos.

 COUNT: recupera la cuenta de registros


en la tabla de hechos. Esta función
puede responder a preguntas del tipo:
“¿cuántas ventas se han producido en
Enero del 2015?”

7 - 10 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Cibertec Perú S.A.C - Business Intelligence SQL Server 2016 5


Medidas y grupos de medidas

• Propiedad de los measures

– Aggregation function:
 MIN: significa que el valor de la medida
para un miembro es igual al valor
mínimo encontrado entre sus miembros
hijos. A través de esta función se puede
saber, por ejemplo, cuál ha sido la venta
más pequeña entre los distritos de Lima.

 MAX: significa que el valor de la medida


para un miembro es igual al valor
máximo encontrado entre sus miembros
hijos. A través de esta función se puede
saber, por ejemplo, cuál ha sido la venta
más grande entre los distritos de Lima.

7 - 11 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Medidas y grupos de medidas

• Propiedad de los measures

– Aggregation function:
 DISTINCT COUNT: recupera la cuenta
de registros en la tabla de hechos,
eliminando las ocurrencias repetidas.
Esta función puede responder a
preguntas del tipo: “entre mis 150
clientes, ¿cuántos han efectuado
compras en Enero del 2016?

 NONE: no se efectúa ningún tipo de


agregación; es decir, la medida no es
aditiva. Esta función de agregación debe
usarse cuando los valores de la medida
no deben ser acumulados; por ejemplo,
si la medida representa un promedio o el
resultado de un cociente.

7 - 12 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Cibertec Perú S.A.C - Business Intelligence SQL Server 2016 6


Medidas y grupos de medidas

• Propiedad de los measures

– Aggregation function:
 BY ACCOUNT: agrega la medida de
acuerdo con la función de
agregación asignada a las
dimensiones de tipo “Account”. Si el
cubo no tiene dimensiones de tipo
“Account”, este valor es ignorado y
se trata como una función NONE.

 AVERAGE OF CHILDREN: significa


que el valor de la medida para un
miembro de una dimensión es igual
al promedio de los valores para
todos sus miembros hijos no vacíos.

7 - 13 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Medidas y grupos de medidas

• Propiedad de los measures

– Aggregation function:
 FIRST CHILD: significa que el valor
de la medida para un miembro es
igual al valor de la medida para su
primer miembro hijo.

 LAST CHILD: significa que el valor


de la medida para un miembro es
igual al valor de la medida para su
último miembro hijo.

7 - 14 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Cibertec Perú S.A.C - Business Intelligence SQL Server 2016 7


Medidas y grupos de medidas

• Propiedad de los measures

– Aggregation function:
 FIRST NON EMPTY: significa que
el valor de la medida para un
miembro es igual al valor de la
medida para su primer miembro
hijo no vacío.

 LAST NON EMPTY: significa que


el valor de la medida para un
miembro es igual al valor de la
medida para su último miembro
hijo no vacío.

7 - 15 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Ejercicio Nº 7.1: Crear el cubo de ventas a través


del Cube Editor
Crear el cubo de ventas a través del Cube Editor.

Al finalizar el laboratorio, el alumno logrará:

• Implementar un cubo en un proyecto de Analysis Services


2016.

7 - 16 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Cibertec Perú S.A.C - Business Intelligence SQL Server 2016 8


Relaciones entre las dimensiones y las tablas de
hechos
• SQL Server Analysis Services 2016 soporta los siguientes
tipos de relación:

El tipo de relación se determina a través del tab Dimension Usage en el diseñador de cubos.

7 - 17 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Relaciones entre las dimensiones y las tabla de


hechos
• Relación regular
– Constituyen el tipo más frecuente de relación.
– La tabla de dimensión se encuentra directamente relacionada
a través de una relación de tipo primary key – foreign key (uno
– muchos) con la tabla de hechos.

7 - 18 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Cibertec Perú S.A.C - Business Intelligence SQL Server 2016 9


Relaciones entre las dimensiones y las tabla de
hechos
• Relación regular
“OrderDateKey” (fecha de emisión de orden)
– Caso especial Role Playing
Dimension “DueDateKey” (fecha esperada)

 En ocasiones, una dimensión participa “ShipDateKey” (fecha de embarque de orden)

múltiples veces en el mismo cubo,


desempeñando distintos roles.
 Ejemplos:
 Una tabla de hechos puede contener
tres columnas que lo enlacen con la
dimensión de tiempo: una columna
para almacenar la fecha de
facturación, otra para almacenar la
fecha de remisión, y otra para
almacenar la fecha de entrega.
 Una tabla de hechos puede contener
dos columnas enlazadas con la
dimensión de empleados: una
columna para representar al
empleado que efectuó la venta, y
otra para representar al empleado
que efectuó el despacho.

7 - 19 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Relaciones entre las dimensiones y las tabla de


hechos
• Relación regular
– Configuración de las características de la relación entre la
dimensión “Promotion” y el measure group “Internet Sales”.

Tipo relación

Atributo clave (PK)


de la dimensión
relacionada al
hecho

Dimensión
relacionada al
hecho

Tabla de hechos
relacionada (FK) con
dimensión

7 - 20 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Cibertec Perú S.A.C - Business Intelligence SQL Server 2016 10


Ejercicio Nº 7.2: Visualizar relaciones de tipo Role
Playing en el cubo “Sales”
Visualizar relaciones de tipo Role Playing en el cubo “Sales”.

Al finalizar el laboratorio, el alumno logrará:

• Conocer relaciones de tipo Role Playing en un cubo del


proyecto de Analysis Services 2016.

7 - 21 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Relaciones entre las dimensiones y las tablas de


hechos
• Relación referenciada (referenced relationship)
– Se produce cuando la tabla de dimensión no está directamente relacionada
con la tabla de hechos.
– En esta situación, la relación se produce a través de una tabla de dimensión
intermedia
– Ejemplo:
 La construcción de una dimensión de tipo Snowflake, con atributos provenientes de
las tablas “DimGeography” y “DimReseller”.
 Por esta relación la dimensión “DimGeography” podrá conectarse sin problemas con
la tabla de hechos “FactResellerSales”.

7 - 22 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Cibertec Perú S.A.C - Business Intelligence SQL Server 2016 11


Relaciones entre las dimensiones y las tablas de
hechos
• Relación referenciada (referenced relationship)
– Sin embargo, la dimensión “Geography” no podrá relacionarse con la
tabla de hechos “FactInternetSales”, porque no existe ninguna
relación entre “DimReseller” y “FactInternetSales”.

7 - 23 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Relaciones entre las dimensiones y las tablas de


hechos
• Relación referenciada (referenced relationship)
– La solución sería:
 Se puede usar otra relación referenciada para relacionar la dimensión
“Geography” con la tabla de hechos “FactInternetSales”, en este caso
seria a través de la dimensión “Customer”.
 Este grado de flexibilidad no sería posible si no se hubiera implementado
la solución a través de dimensiones Snowflake.

7 - 24 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Cibertec Perú S.A.C - Business Intelligence SQL Server 2016 12


Ejercicio Nº 7.3: Crear relaciones referenciadas

Agregar la dimensión “Geography” al proyecto y relacionarla


con el cubo “Sales”, a través de un tipo Referenced.

Al finalizar el laboratorio, el alumno logrará:

• Implementar relaciones del tipo Referenced en un cubo del


proyecto de Analysis Services 2016.

7 - 25 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Relaciones entre las dimensiones y las tablas de


hechos
• Relación hecho (Fact relationship)
– Las tablas de hechos contienen, además de columnas de medidas y
foreign keys, columnas adicionales que almacenan información
relevante para el negocio.
– Puede resultar muy útil definir una dimensión a partir de la tabla de
hechos. A este tipo de dimensiones se les denomina “dimensiones
degeneradas”.
– Ejemplo:
 La columna “SalesOrderNumber” almacena el número del documento de
orden de venta.
 Esta información puede ser usada para definir una dimensión degenerada.

7 - 26 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Cibertec Perú S.A.C - Business Intelligence SQL Server 2016 13


Ejercicio Nº 7.4: Crear la relación Fact

Crear una relación del tipo “Fact” en el cubo “Sales”.

Al finalizar el laboratorio, el alumno logrará:

• Implementar relaciones del tipo Fact en un cubo del


proyecto de Analysis Services 2016.

7 - 27 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Relaciones entre las dimensiones y las tablas de


hechos
• Relación muchos - muchos (Many-to-many relationship)
– SSAS 2016 provee un tipo especial de relación que permite
implementar relaciones de muchos-muchos entre las tablas de
hechos y las tablas de dimensión.
– Las tablas Fact Table, Regular Dimension e Intermediate Fact
Table deben estar relacionadas en el data source view. De lo
contrario, no se podrá definir la relación muchos – muchos.
Fact Table Intermediate Fact Table Many to many dimensión

 Ejemplo:
 Un motivo de venta (tabla de dimensión) puede tener
muchas ventas (tabla de hechos).
 Una venta específica, a su vez, puede tener muchos
motivos.

7 - 28 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Cibertec Perú S.A.C - Business Intelligence SQL Server 2016 14


Ejercicio Nº 7.5: Crear la relación many to many

Crear una relación del tipo “many to many” en el cubo “Sales”.

Al finalizar el laboratorio, el alumno logrará:

• Implementar relaciones del tipo “Many to many” en un cubo


del proyecto de Analysis Services 2016.

7 - 29 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Ejercicio Nº 7.6: Crear nueva relación Fact

Agregar una relación del tipo Fact (FactResellerSales) al


proyecto AdventureWorksDataMart.

Al finalizar el laboratorio, el alumno logrará:

• Implementar relaciones del tipo Fact en un cubo del


proyecto de Analysis Services 2016.

7 - 30 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Cibertec Perú S.A.C - Business Intelligence SQL Server 2016 15


Lecturas adicionales

Para obtener información adicional, puede consultar:

• Definir relaciones normales y propiedades de las relaciones normales


̵ http://msdn.microsoft.com/es-es/library/ms365371.aspx

• Definir relaciones referenciadas y propiedades de las relaciones


referenciadas
̵ http://msdn.microsoft.com/es-es/library/ms365365.aspx

• Definir relaciones de hechos y propiedades de las relaciones de hechos


̵ http://msdn.microsoft.com/es-es/library/ms365400.aspx

• Definir una relación de varios a varios y las propiedades de las relaciones


de varios a varios
̵ http://msdn.microsoft.com/es-es/library/ms365407.aspx

7 - 31 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Resumen

En este capítulo, usted aprendió que:

• Las medidas comprenden el elemento cuantitativo del cubo


de información.
• Estas medidas están organizadas en grupos de medidas.
• Las medidas poseen funciones de agregación tales como
Sum, Count, etc.
• Existen diversas relaciones entre dimensiones y grupos de
medidas de acuerdo al modelo dimensional
• La existencia de varias alternativas de relaciones entre
dimensiones y tabla de hechos permite implementar
diversidad de casos reales de negocios.

7 - 32 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Cibertec Perú S.A.C - Business Intelligence SQL Server 2016 16


Tarea Nº 7: Crear cubo, relaciones entre
dimensiones y medidas (Cuarto entregable)

• Utilizando SQL Server Data Tools para Visual Studio 2015


Analysis Services implementar: Cubo del Datamart
propuesto (proyecto final), relaciones entre medidas y
dimensiones.


.

7 - 33 Copyright © Todos los Derechos Reservados - Cibertec Perú SAC.

Cibertec Perú S.A.C - Business Intelligence SQL Server 2016 17

Potrebbero piacerti anche