0% encontró este documento útil (0 votos)
50 vistas30 páginas

01 Material

Este documento describe los conceptos clave de los modelos multidimensionales en Analysis Services. Explica los tipos de dimensiones como estándar, snowflake, tiempo y padre-hijo. Describe los conceptos de atributos, jerarquías, niveles y miembros de dimensiones. También cubre las relaciones entre atributos y dimensiones, y los conceptos de medidas y grupos de medidas. El objetivo es que los alumnos comprendan estos fundamentos para configurar correctamente las relaciones en un modelo multidimensional.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
50 vistas30 páginas

01 Material

Este documento describe los conceptos clave de los modelos multidimensionales en Analysis Services. Explica los tipos de dimensiones como estándar, snowflake, tiempo y padre-hijo. Describe los conceptos de atributos, jerarquías, niveles y miembros de dimensiones. También cubre las relaciones entre atributos y dimensiones, y los conceptos de medidas y grupos de medidas. El objetivo es que los alumnos comprendan estos fundamentos para configurar correctamente las relaciones en un modelo multidimensional.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 30

Modelo Multidimensional con Analysis Services Services 1

Capítulo 5
Modelo Multidimensional con Analysis
Services

Objetivo

Al finalizar el capítulo, el alumno:

• Explicar los conceptos de dimensión regular, snowflake, padre-hijo y tiempo.


• Describir el concepto de attribute relationship.
• Identificar los mecanismos de agregación de miembros.
• Analizar los conceptos de medida y grupo de medidas.
• Configurar las relaciones entre las dimensiones y tablas de hechos.

Temas

1. Concepto Dimensiones
2. Dimensiones Estándar
3. Dimensiones SnowFlake
4. Named Calculations
5. Relaciones entre atributos (attribute relationships)
6. Dimensiones Time
7. Agrupar los miembros de un atributo
8. Cubos
9. Medidas y grupos de medidas
10. Relación entre las dimensiones y los grupos de medidas

IES Cibertec S.A.C - Business Intelligence SQL Server 2022


Modelo Multidimensional con Analysis Services Services 2

1. DIMENSIONES

Las dimensiones son definidas a partir de los criterios utilizados por los usuarios para
consultar la información. Por ejemplo, si los usuarios desean obtener las ventas por
producto, región y trimestre, esto indica que se deben definir las dimensiones Producto,
UbiGeo y Tiempo.

En el capítulo anterior, se implementaron diversas dimensiones para los cubos Ventas y


Sales, a través del Cube Wizard. En el presente capítulo, se mostrará cómo configurar las
propiedades de las dimensiones a través del entorno de desarrollo de SQL Server Data
Tools.

1.1 Atributos de dimensiones

• Se emplean para agregar y filtrar medidas


• Representa una propiedad de interés en una dimensión.
• Cada atributo proviene de una columna de la tabla de dimensión.
• Los atributos en el modelo multidimensional disponen de propiedades flexibles
en su implementación:
– Propiedades básicas
 Name, Description, ID, Type, Usage
– Propiedades avanzadas
 AttributeHierarchyEnabled,
 AttributeHierarchyVisible
 IsAggregatable,
 OrderBy
 Propiedades padre-hijo
 Memberwithdata,
 NamingTemplate

IES Cibertec S.A.C - Business Intelligence SQL Server 2022


Modelo Multidimensional con Analysis Services Services 3

1.2 Jerarquías (hierarchies) y niveles (levels)

En una dimensión, un atributo puede “contener” a otro. Por ejemplo, en la


dimensión Ubigeo, el atributo País “contiene” al atributo Ciudad, pues cada ciudad
se encuentra en un determinado país. Este concepto permite efectuar operaciones
de Drill – Down a través de las dimensiones; de esta forma, se pueden visualizar las
ventas del Perú, y luego visualizar las ventas de cada una de sus ciudades.

En SSAS, esta agrupación jerárquica de los atributos se define a través de jerarquías


(hierarchies). La estructura de una jerarquía se define a través de niveles (levels),
cada uno de los cuales está mapeado a un atributo en particular. Por ejemplo, los
atributos País y Ciudad de la dimensión Ubigeo pueden utilizarse para definir una
jerarquía llamada Ubicación, cuyos niveles son País y Ciudad. Las jerarquías se
denotan con la notación nombre_de_dimensión. nombre_de_jerarquía. Por
ejemplo, la jerarquía Ubicación de la dimensión Ubigeo tendría la siguiente
representación:

Ubigeo.Ubicación ▪ País ▪▪ Ciudad

Este diseño especifica que cada país contiene varias ciudades, y cada ciudad se
encuentra en un solo país.

La siguiente figura muestra las relaciones existentes entre miembros y niveles en


la dimensión UbiGeo:

Miembros

Ubigeo.Ubicacion Todos
i

▪ País Argentina Canadá

▪▪ Ciudad Buenos Aires Montréal Vancouver

Una dimensión puede contener varias jerarquías. Cada jerarquía definirá una forma
distinta de agrupar y sumarizar la información de una dimensión. Existen entidades
de negocio que no tienen un único criterio de agrupación; por ejemplo, los clientes
pueden ser disgregados por su ubicación geográfica (país, región y ciudad) y
también por su género (masculino o femenino).

Ejemplo 1:

Considérese el siguiente escenario:

Se desea obtener indicadores de rendimiento de los empleados de la corporación.


Los reportes de evaluación de los empleados deben ser totalizados de acuerdo a

IES Cibertec S.A.C - Business Intelligence SQL Server 2022


Modelo Multidimensional con Analysis Services Services 4

las divisiones organizacionales y regiones geográficas de la corporación. Cada


empleado trabaja para una división organizacional. A su vez, cada empleado
pertenece a una ciudad, y cada ciudad está contenida en una región. ¿Cuál es la
manera más adecuada de definir los niveles de la dimensión Empleado?

De acuerdo con el problema, se tienen dos maneras de disgregar la información de


los empleados: por división organizacional y por ubicación geográfica. No puede
afirmarse que las divisiones organizacionales están contenidas en ubicaciones
geográficas, pues pueden existir divisiones que se encuentren dispersas a través de
varios sitios geográficos.

Por tanto, la estructura más adecuada para la dimensión Empleado consiste en


definir dos jerarquías de la siguiente manera:

Empleado.Región
▪ Región
▪▪ Ciudad
▪▪▪ Empleado

Empleado.División
▪ División
▪▪ Empleado

Ejemplo 2:
– Los clientes pueden ser disgregados por su ubicación geográfica (país,
región y ciudad)
– Los mismos clientes ser disgregados por su género (masculino o
femenino).

IES Cibertec S.A.C - Business Intelligence SQL Server 2022


Modelo Multidimensional con Analysis Services Services 5

1.3 Navegación entre niveles de una jerarquía

Existen ciertas relaciones de parentesco entre los miembros de una dimensión.


Dichas relaciones se basan en la posición relativa de los miembros.

La siguiente figura muestra a los elementos de la dimensión UbiGeo.

Al formular el diseño de una dimensión, se deben identificar las propiedades


relevantes para el negocio. Por ejemplo, la dimensión Ubigeo debe contener las
propiedades “país” y “ciudad”. SSAS modela estas propiedades a través de
atributos (attributes).

Cada atributo definido en una dimensión corresponde con alguna propiedad de


interés para el modelo de negocios. De acuerdo con esto, la dimensión Ubigeo
contendría los atributos País y Ciudad.

Un miembro (member) representa una ocurrencia específica de una dimensión.


Por ejemplo, en la figura de la derecha, Argentina, Austria, Canadá, Montreal, etc.
son miembros de la dimensión UbiGeo.

Cada miembro en una dimensión corresponde con un atributo.

Por ejemplo, en la dimensión Ubigeo el miembro Argentina corresponde con el


atributo País, y el miembro Montreal con el atributo Ciudad.

IES Cibertec S.A.C - Business Intelligence SQL Server 2022


Modelo Multidimensional con Analysis Services Services 6

2. DIMENSIONES ESTÁNDAR

El tipo más sencillo de dimensión está constituido por las dimensiones estándar. En
estas dimensiones, cada nivel está representado por una columna en la tabla de
dimensión.

Una característica de las dimensiones estándar es que todos los miembros


pertenecientes a un determinado nivel tienen el mismo número de ancestros. Por
ejemplo, en la dimensión UbiGeo, todos los miembros del nivel City tienen el mismo
número de ancestros (su respectivo miembro padre en la dimensión Country, y el
miembro All Ubigeo).

2.1 Propiedades de los atributos

Los atributos tienen propiedades que pueden ser configuradas a través del
editor de dimensiones. A continuación, se explicarán algunas de estas
propiedades:

• Name: establece el nombre del atributo.

• Usage: establece el propósito que el atributo debe cumplir en la estructura de


la dimensión. Existen tres tipos de uso y los siguientes:

- Key: el atributo se utiliza para identificar de manera única a cada miembro


de la dimensión, y se utilizará para relacionar a la dimensión con las tablas
de hechos. Sólo puede existir un atributo de tipo Key en una dimensión, y
toda dimensión debe tener un atributo Key.

IES Cibertec S.A.C - Business Intelligence SQL Server 2022


Modelo Multidimensional con Analysis Services Services 7

- Parent: el atributo se utiliza para definir una dimensión Parent – Child.

- Regular: el atributo se utiliza solo para mostrar información.

• Propiedad KeyColumns: establece el identificador único de los miembros de un


atributo. Dicho identificador puede estar compuesto por una o varias columnas
de la tabla de dimensión. Por ejemplo, el identificador del atributo Mes de la
dimensión Tiempo puede estar compuesto por las columnas “Año” y
“NumeroMes” de la tabla de dimensión.

• Propiedad NameColumn: esta propiedad determina la columna de la tabla de


dimensión a partir de la cual se obtiene el valor que mostrarán los miembros de
un atributo. Por ejemplo, en la dimensión Tiempo, la propiedad NameColumn
del atributo Mes puede apuntar hacia la columna “NombreMes” de la tabla de
dimensión.

2.2 El miembro “All” y la propiedad Default Member

Las dimensiones poseen un miembro “All” (“Todos”). Este nivel se encuentra en la


cúspide de todas las jerarquías y es ancestro de todos los miembros de la
dimensión.

Por ejemplo, en la dimensión “Promotion” creada en la actividad anterior, puede


observarse al miembro “All” en la cúspide de la jerarquía “Promotion Categories”.

La existencia del miembro All en una dimensión no es obligatoria. Cada atributo de


la dimensión posee la propiedad IsAggregatable, cuyo valor por defecto es True. Si
el valor de esta propiedad es False, el atributo no genera un miembro “All”.

También, es posible modificar el nombre del miembro “All”, a través de la


propiedad AttributeAllMemberName de la dimensión, y la propiedad
AllMemberName de las jerarquías. De esta forma, se puede configurar a la
dimensión “Promotion” para mostrar un nombre personalizado en el miembro
“All”, como, por ejemplo, “All Promotions”.

Por otro lado, toda dimensión tiene un miembro predeterminado. Si una consulta
de datos no especifica en forma explícita cuál es el miembro utilizado para obtener
la información asociada con una dimensión, el servidor de análisis utilizará el
miembro predeterminado para efectuar la consulta. Por defecto, el miembro
predeterminado es el miembro “All”. Sin embargo, puede cambiarse a través de la
propiedad DefaultMember presente en cada atributo de la dimensión.

IES Cibertec S.A.C - Business Intelligence SQL Server 2022


Modelo Multidimensional con Analysis Services Services 8

Por ejemplo, en la dimensión “Currency” creada en la actividad anterior, el


miembro predeterminado es “All”. Esta dimensión contiene información de
monedas. Sin embargo, esta configuración no es recomendable, pues si esta
dimensión estuviese asociada a un cubo de ventas, las consultas de datos
devolverían las ventas efectuando la suma de todas las monedas, lo cual no tiene
sentido. Por tanto, el desarrollador debe establecer una moneda como miembro
por defecto; por ejemplo, “USD” (dólares americanos).

IES Cibertec S.A.C - Business Intelligence SQL Server 2022


Modelo Multidimensional con Analysis Services Services 9

3. DIMENSIONES SNOWFLAKE

Las dimensiones SnowFlake son generadas por más de una tabla de dimensión. En la
figura superior se muestran las tablas de dimensión Category_Dim y Product_Dim. Éstas
están enlazadas entre sí a través de una relación. Solo la tabla Product_Dim se enlaza con
la tabla de hechos Ventas_Fact.

IES Cibertec S.A.C - Business Intelligence SQL Server 2022


Modelo Multidimensional con Analysis Services Services 10

4. NAMED CALCULATIONS (CÁLCULOS CON NOMBRE)

Los named calculations permiten extender el modelo de datos sobre el cual se construyen
los cubos y las dimensiones, sin necesidad de modificar la estructura de las tablas en el
origen de datos. Los named calculations se crean en la data source views a través de
expresiones SQL.

Por ejemplo, la tabla “DimEmployee” contiene las columnas “FirstName”, “MiddleName” y


“LastName”. Sin embargo, al especificar la estructura de la dimensión “Employee”, es
conveniente contar con un atributo que almacene el nombre completo del empleado. Para
conseguirlo, es preciso crear un named calculation en la tabla “DimEmployee” que efectúe
una concatenación de las columnas antes mencionadas.

IES Cibertec S.A.C - Business Intelligence SQL Server 2022


Modelo Multidimensional con Analysis Services Services 11

5. RELACIONES ENTRE ATRIBUTOS (ATTRIBUTE RELATIONSHIPS)

Los atributos de una dimensión pueden relacionarse entre sí. Dichas relaciones se definen
a través de los attribute relationships. Cuando una dimensión es utilizada por un cubo,
los attribute relationships sirven para conectar cada atributo con la tabla de hechos.

Por defecto, el atributo clave de una dimensión (el atributo cuya propiedad Usage está
establecida a “Key”) contiene relaciones hacia todos los demás atributos de la dimensión.
De hecho, todo atributo debe estar relacionado con el atributo clave, directa o
indirectamente.

Los attribute relationships se definen para resolver tres tipos de situaciones:

• Optimizar el funcionamiento de las jerarquías. En una jerarquía, se tiene una


estructura en la cual cada nivel está contenido en el nivel inmediato superior. Por
ejemplo, en la jerarquía “Product Categories” creada en la actividad (3), el nivel
“Product Name” está contenido en el nivel “Product Subcategory Name”, y éste a su
vez está contenido en el nivel “Product Category Name”. Al definir attribute
relationships para vincular los atributos que dan origen a estos niveles, se optimiza el
rendimiento de los cubos que utilicen esta dimensión, debido a la creación de
estructuras de agregación e indexación, a través de las cuales los valores de las
medidas asociados con los miembros superiores se obtienen por la sumarización de
los valores de los miembros inferiores.
• Para determinar el ordenamiento de los miembros de un atributo. Por ejemplo, en una
dimensión de fecha, es deseable que los miembros del atributo “Mes” no estén
ordenados de forma alfabética, sino con base en el número correlativo de mes.
• Asociar propiedades a los miembros (member properties). Por ejemplo, se puede
asociar el atributo “FullName” de la dimensión “Employee” con otro atributo llamado
“Address” que contiene la dirección del domicilio del empleado. El valor del atributo
“Address” podrá consultarse para cada valor del atributo “FullName” a través de
sentencias MDX.

IES Cibertec S.A.C - Business Intelligence SQL Server 2022


Modelo Multidimensional con Analysis Services Services 12

El criterio fundamental para definir attribute relationships es que la relación entre los
atributos sea uno-muchos. Por ejemplo, para relacionar los atributos “Ciudad” y
“País”, es necesario que cada ciudad esté contenida en un solo país. Esta relación
puede representarse de la siguiente forma:

Ciudad

País

IES Cibertec S.A.C - Business Intelligence SQL Server 2022


Modelo Multidimensional con Analysis Services Services 13

6. DIMENSIÓN TIME

Todo proyecto de Business Intelligence requiere de la existencia de una dimensión que


almacene información de fecha e intervalos temporales de tiempo. SSAS permite crear
dimensiones del tipo tiempo permitiendo crear la entidad en el origen de datos o crearla
en el servidor SSAS.

Una dimensión de tiempo define además la granularidad en que nuestros datos en las
tablas de hechos han sido generados, sea a nivel de año, semestre, trimestre, mes, día,
hora, entre otras escalas.

A pesar de que nuestros datos en las tablas de hechos estén guardados a un nivel granular
de tiempo específico, como ventas a nivel de mes, ventas a nivel de día, etc.; es una buena
práctica crear una dimensión de tiempo que incluya todos los niveles de granularidad que
podrían usarse no solo en las tablas de hechos (fact tables) que se vayan a utilizar en el
primer datamart, sino también las que se puedan requerir más adelante.

Es recomendable por lo menos crear una dimensión de tiempo con los niveles: año,
semestre, trimestre, mes, día.

En otro caso, si el negocio lo requiere, se podrían considerar otros niveles de tiempo


menores a día, como: hora, minuto, segundo.

Una de las facilidades que nos brinda SSAS con respecto a la dimensión de tiempo, es que
SQL server Data Tools la genera por nosotros incluso sin tener una tabla física de tiempo
pre-existente en nuestra data warehouse.

IES Cibertec S.A.C - Business Intelligence SQL Server 2022


Modelo Multidimensional con Analysis Services Services 14

7. AGRUPAR LOS MIEMBROS DE UN ATRIBUTO

Una funcionalidad importante de SSAS es su capacidad de efectuar agrupaciones


automáticas de los miembros de un atributo.
Por ejemplo, un atributo puede almacenar los precios de los productos de la empresa. Sin
embargo, expandir dicho atributo durante una consulta, y observar una extensa lista de
precios puede resultar de poca utilidad para el usuario final. Para resolver esto, SSAS
puede efectuar una agrupación automática, de manera que el usuario, al consultar la
información, no observa cada precio en particular, sino rangos de precios.

Las características de agrupamiento de un atributo se establecen a través de las


propiedades:

7.1 DiscretizationMethod

• Determina si SSAS crea agrupaciones en un atributo, así como el método de


agrupación.

Están implementados tres métodos de agrupamiento:

­ None: muestra los miembros sin aplicar agrupación.


­ Automatic: SSAS selecciona el método que mejor representa los
miembros del atributo: EqualAreas o Clusters.
­ Equal Areas: intenta dividir los miembros del atributo en grupos que
contengan el mismo número de miembros.
­ Clusters: utiliza el algoritmo K-Means para obtener los grupos a través de
distribuciones gausianas. Solo puede usarse con valores numéricos.

IES Cibertec S.A.C - Business Intelligence SQL Server 2022


Modelo Multidimensional con Analysis Services Services 15

7.2 DiscretizationBucketCount

• Especifica el número de grupos que se generarán en un atributo.


• Su valor por defecto para la propiedad es 0, de esta forma SSAS determina
automáticamente el número de grupos a través de un muestreo de los datos
del atributo. Sin embargo, si se desea controlar el número de grupos
generados, puede establecerse
esta propiedad a un número mayor
que 0.
• Se debe tener en cuenta que es
posible que, aun así, el algoritmo
no produzca exactamente el
número de grupos deseado, pues
esto depende de la distribución
estadística de la data.
• Ejemplo, si se tienen valores entre
0 y 100, y la propiedad está
establecida a 4, se generarán
cuatro grupos: (0 – 25, 26 – 50, 51
– 75, 76 – 100).

IES Cibertec S.A.C - Business Intelligence SQL Server 2022


Modelo Multidimensional con Analysis Services Services 16

8. CUBOS

Un cubo contiene un subconjunto de la información de un Data Mart o Data Warehouse.


Su información se almacena en una estructura multidimensional definida por
dimensiones y medidas.

Todo cubo se construye a partir de un esquema de datos que consiste en tablas de hechos
y tablas de dimensión. Una mejora importante de SSAS 2012 sobre la versión 2000 es que
cada cubo puede contener múltiples sola tabla de hechos.

Cada dimensión puede contener varias jerarquías. Cada jerarquía contiene varios niveles.
Los niveles permiten efectuar complejas operaciones de drill down (aumentar el nivel de
detalle de las consultas) y drill up (disminuir el nivel de detalle de las consultas).

Por ejemplo, una operación de drill down puede consistir en observar la información de
ventas de manzanas en todo el Perú, y luego aumentar el nivel de detalle para consultar
las ventas de Cuzco y Lima. Una operación de drill up típica consistiría en observar las
ventas de Lima, y disminuir posteriormente el nivel de detalle para observar las ventas en
todo el Perú.

La información se sumariza en un cubo de acuerdo a la estructura de niveles y jerarquías


definida en cada dimensión. Por ejemplo, en la tabla de hechos de un cubo pueden
almacenarse las ventas para cada distrito. Durante el procesamiento del cubo, se calculan
y almacenan las sumas parciales de las ventas en cada provincia y departamento. Estas
sumas parciales reciben el nombre de agregaciones. De esta manera, se pueden efectuar
consultas rápidas sobre vastos conjuntos de datos.

IES Cibertec S.A.C - Business Intelligence SQL Server 2022


Modelo Multidimensional con Analysis Services Services 17

8.1 Propiedades de los cubos

Los cubos tienen una serie de propiedades, configurables desde el diseñador de


cubos de SQL Server Data Tools. A continuación, se explican algunas de estas
propiedades:

• AggregationPrefix: especifica el prefijo normal que se utiliza para nombres de


agregación
• Collation: especifica el identificador de configuración regional (LCID) y la marca
de comparación, separados por un carácter de subrayado. por ejemplo,
Latin1_General_C1_AS.
• DefaultMeasure: contiene una expresión MDX (Expresiones
multidimensionales) que define la medida predeterminada para el cubo.
• Descripción: proporciona una descripción del cubo, que se puede mostrar en
aplicaciones cliente.
• ErrorConfiguration: contiene valores de control de errores configurables para
controlar claves duplicadas, claves desconocidas, límites de error, acciones al
detectar errores, archivos de registro de errores y control de claves nulas.
• EstimatedRows: especifica el número de filas estimadas del cubo.
• ID: contiene el identificador único (Id.) del cubo.
• Language: especifica el identificador de idioma predeterminado del cubo.
• Name: especifica el nombre descriptivo del cubo.
• ProactiveCaching: define la configuración de almacenamiento en caché
automático para el cubo.
• ProcessingMode: indica si la indización y la agregación se deben producir
durante o después del procesamiento. Las opciones son regular o lazy.
• ProcessingPriority: determina la prioridad de procesamiento del cubo durante
operaciones en segundo plano, como indización y agregaciones diferidas. El
valor predeterminado es 0.
• ScriptCacheProcessingMode: indica si la caché de script se debe generar
durante o después del procesamiento. Las opciones son regular y lazy.
• ScriptErrorHandlingMode: determina el control de errores. Las opciones son
IgnoreNone o IgnoreAll.
• Source: muestra la vista del origen de datos utilizada para el cubo.
• StorageLocation: especifica la ubicación de almacenamiento del sistema de
archivos para el cubo. Si no se especifica ninguna ubicación, se hereda de la base
de datos que contiene el objeto de cubo.
• StorageMode: especifica el modo de almacenamiento del cubo. Los valores son
MOLAP, ROLAP o HOLAP.
• Visible: determina la visibilidad del cubo.

IES Cibertec S.A.C - Business Intelligence SQL Server 2022


Modelo Multidimensional con Analysis Services Services 18

9. MEDIDAS Y GRUPOS DE MEDIDAS

Una medida (measure) representa un valor obtenido a partir de una columna numérica
de la tabla de hechos. La definición de las medidas constituye el paso central en el análisis
de soluciones de inteligencia de negocios, pues constituyen la información que los
usuarios finales desean visualizar.

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

9.1 Propiedades de los measure groups

Las propiedades de los grupos de medida determinan el comportamiento de todo


el grupo de medida y establecen los comportamientos predeterminados de ciertas
propiedades de medidas dentro de un grupo de medida.

A continuación, se explican las propiedades principales de los measure groups:

• AggregationPrefix: se aplica al almacenamiento ROLAP. Asigna un prefijo


común a las vistas indizadas en SQL Server, que se usa para almacenar
agregaciones para las particiones asociadas con este grupo de medida.
• DataAggregation: esta propiedad se reserva para uso futuro y actualmente no
tiene ningún efecto. Por lo tanto, se recomienda que no modifique esta
configuración.
• Descripción: puede usar esta propiedad para documentar el grupo de medida.
• ErrorConfiguration: valores de control de errores configurables para controlar
las claves duplicadas, las claves desconocidas, las claves NULL, los límites de
error, las acciones tras la detección de errores y el archivo de registro de errores.
• EstimatedRows: especifica el número estimado de filas de la tabla de hechos.

IES Cibertec S.A.C - Business Intelligence SQL Server 2022


Modelo Multidimensional con Analysis Services Services 19

• EstimatedSize: especifica el tamaño estimado (en bytes) del grupo de medida.


• ID: especifica el identificador del objeto.
• IgnoreUnrelatedDimensions: determina si las dimensiones no relacionadas
están forzadas a su nivel superior cuando los miembros de las dimensiones que
no están relacionadas con el grupo de medida se incluyen en una consulta. El
valor predeterminado es True.
• Name: nombre de la medida. Esta propiedad es de solo lectura. Por defecto, el
nombre del measure group se forma a partir de la tabla de hechos
correspondiente.
• ProactiveCaching: valores de control de errores configurables para controlar las
claves duplicadas, las claves desconocidas, las claves NULL, los límites de error,
las acciones tras la detección de errores y el archivo de registro de errores.
• ProcessingMode: indica si la indización y la agregación se deben producir
durante o después del procesamiento. Las opciones son regular y
LazyAggregations. Esta última puede usarse para ejecutar la agregación como
una tarea en segundo plano.
• ProcessingPriority: determina la prioridad de procesamiento del cubo durante
las operaciones de fondo, como indizaciones y agregaciones diferidas. El valor
predeterminado es 0.
• Storage location: la ubicación del almacenamiento del sistema de archivos para
el grupo de medida. Si no se especifica ningún valor, la ubicación se heredará
del cubo que contiene el grupo de medida.
• StorageMode: el modo de almacenamiento del grupo de medida. Los valores
disponibles son MOLAP, ROLAP u HOLAP.
• Type: especifica el tipo del grupo de medida.

9.2 Propiedades de las medidas

Las medidas heredan determinadas propiedades del grupo de medida del que son
miembro, aunque estas propiedades se reemplazan en el nivel de medida. Las
propiedades de medidas determinan cómo se agrega una medida, su tipo de datos,
el nombre que se muestra al usuario, la carpeta para mostrar en la que aparecerá
la medida, su cadena de formato, cualquier expresión de medida, la columna de
origen subyacente y la visibilidad para los usuarios.

Las medidas poseen una serie de propiedades. A continuación, se explican algunas


de ellas:

• Name: nombre de la medida


• Description: ofrece una descripción de la medida, que se puede mostrar en
aplicaciones cliente.
• DisplayFolder: especifica la carpeta en la que se mostrará la medida a los
usuarios cuando se conecten al cubo. Cuando un cubo tiene muchas medidas,
se pueden utilizar carpetas para mostrar para categorizar las medidas y mejorar
la exploración para el usuario.
• Source: especifica la columna de la vista del origen de datos a la que se enlaza
la medida.
• Format String: determina el formato de visualización de la medida. Analysis
Services provee una serie de formatos (por ejemplo, porcentaje y moneda), y
también permite ingresar una cadena de formato personalizada.

IES Cibertec S.A.C - Business Intelligence SQL Server 2022


Modelo Multidimensional con Analysis Services Services 20

• Id: muestra el identificador único (Id.) de la medida. Esta propiedad es de solo


lectura.
• MeasureExpression: especifica una expresión MDX restringida que define el
valor de la medida. La expresión se evalúa en el nivel de hoja antes de agregarse,
y permite la ponderación de un valor. Por ejemplo, en la conversión de moneda
en que la tasa de cambio pondera un importe de ventas.
• 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: especifica el tipo de datos de la columna de la tabla de hechos
subyacente a la que se enlaza la medida. Este valor se hereda de la columna de
origen de forma predeterminada.
• Aggregate Function: función que se utilizará para sumarizar la medida. Analyisis
Services provee las siguientes funciones de agregación:
- 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 2005?”
- 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.
- 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 2005?
- 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.
- 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.
- 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.
- 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.

IES Cibertec S.A.C - Business Intelligence SQL Server 2022


Modelo Multidimensional con Analysis Services Services 21

10. RELACIONES ENTRE LAS DIMENSIONES Y LOS MEASURE GROUPS


(DIMENSIÓN RELATIONSHIPS)

El uso de la dimensión define las relaciones entre una dimensión de cubo y los grupos de
medida de un cubo. Una dimensión de cubo es una instancia de una dimensión de base
de datos que se utiliza en un cubo específico.

Un cubo puede y suele tener dimensiones de cubo que no están directamente


relacionadas con un grupo de medida, pero que podrían estar indirectamente
relacionadas con el grupo de medida a través de otra dimensión o grupo de medida.

Cuando se agrega una dimensión de base de datos o un grupo de medidas a un cubo,


Microsoft SQL Server Analysis Services intenta determinar el uso de la dimensión
mediante el examen de las relaciones entre las tablas de dimensiones y las tablas de
hechos de la vista del origen de datos del cubo y mediante el examen de las relaciones
entre los atributos de las dimensiones. Analysis Services establece automáticamente la
configuración del uso de la dimensión para las relaciones que puede detectar.

Una relación entre una dimensión y un grupo de medida consta de las tablas de
dimensiones y hechos que participan en la relación y un atributo de granularidad que
especifica la granularidad de la dimensión del grupo de medida concreto.
Comúnmente, estas relaciones se efectúan a través de columnas comunes en las tablas
de dimensión y las tablas de hechos.

IES Cibertec S.A.C - Business Intelligence SQL Server 2022


Modelo Multidimensional con Analysis Services Services 22

SSAS 2016 soporta los siguientes tipos de relaciones entre las dimensiones y los measure
groups:

• Relación regular.
• Relación referenciada.
• Relación “fact”.
• Relación many – to – many.

El tipo de relación entre las dimensiones y los measure groups se determina a través del
tab Dimension Usage en el diseñador de cubos.

10.1 Relación regular

Las relaciones regulares constituyen el tipo más frecuente de relación. SSAS 2016
provee soporte natural a este tipo de relaciones regulares. Visualice la siguiente
figura:

El uso de la dimensión regular define las relaciones entre una dimensión de cubo y
los grupos de medida de un cubo.

Hay una relación de dimensión normal entre una dimensión de cubo y un grupo de
medida cuando la columna de clave (PK) de la dimensión se combina directamente
con la tabla de hechos (FK).

Esta relación directa se basa en una relación de clave principal a clave externa de la
base de datos relacional subyacente, pero también podría basarse en una relación
lógica definida en la vista del origen de datos.

Una relación de dimensión normal representa la relación entre tablas de


dimensiones y una tabla de hechos en un diseño de esquema en estrella tradicional.

IES Cibertec S.A.C - Business Intelligence SQL Server 2022


Modelo Multidimensional con Analysis Services Services 23

La siguiente figura muestra una relación de este tipo entre tabla dimesnion
“Customer” y tabla de hechos “Order”: A continuación se muestran las
características de la relación entre ambas tablas:

Un caso especial lo constituye la situación denominada “Role Playing”. En


ocasiones, una dimensión participa múltiples veces en el mismo cubo,
desempeñando distintos roles. Esto se presenta, por ejemplo, en las siguientes
ocasiones:

• 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 Entrega.

IES Cibertec S.A.C - Business Intelligence SQL Server 2022


Modelo Multidimensional con Analysis Services Services 24

• 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.

En versiones anteriores a SQL Server 2012, este tipo de requerimiento solo podía
satisfacerse duplicando las tablas de dimensión, o creando vistas a partir de la
tabla de dimensión (en los ejemplos anteriores, la solución hubiera consistido en
crear tres tablas de dimensión para el tiempo y dos tablas de dimensión para los
empleados; o en crear tres vistas a partir de la tabla de dimensión de tiempo y dos
vistas a partir de la tabla de empleados).

En cambio, SSAS 2016 provee soporte natural a las situaciones de “Role Playing”.
En SSAS 2016, la misma dimensión puede participar múltiples veces en el mismo
cubo.

10.2 Relación referenciada (referenced relationship)

Una relación de dimensión de referencia representa la relación entre tablas de


dimensiones y una tabla de hechos en un diseño de esquema de copo de nieve.

IES Cibertec S.A.C - Business Intelligence SQL Server 2022


Modelo Multidimensional con Analysis Services Services 25

Cuando las tablas de dimensiones se conectan en un esquema de copo de nieve, es


posible definir una única dimensión mediante columnas de varias tablas, o bien,
definir dimensiones independientes basadas en las tablas de dimensiones
independientes y, a continuación, definir un vínculo entre ellas mediante la
configuración de la relación de dimensión de referencia. Este tipo de situaciones
corresponde con lo que típicamente se llama “Dimensión Snowflake”.

Una relación referenciada 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, como se muestra en la
figura siguiente.

En la siguiente ilustración se muestra una tabla de hechos denominada


FactResellerSales y dos tablas de dimensiones denominadas DimReseller y
DimGeography, en un esquema de copo de nieve.

IES Cibertec S.A.C - Business Intelligence SQL Server 2022


Modelo Multidimensional con Analysis Services Services 26

En ese esquema la DIMGeography podrá conectarse sin problemas con la tabla de


hechos “FactResellerSales” mediante la dimensión intermedia DIMReseller
relacionando el atributo clave (City) con la dimensión DIMGeography.

Sin embargo, no podrá relacionarse con la tabla de hechos “FactInternetSales”,


pues, como puede verse en la siguiente figura, no existe ninguna relación entre
“DimReseller” y “FactInternetSales”:

Una solución alternativa (y más flexible) consiste en una dimensión “Geography”


basada en la tabla “DimGeography”, y una dimensión “Customer” basada en la
tabla “DimCustomer”.

Por otro lado, la siguiente figura, muestra que la tabla “FactInternetSales” también
se relaciona indirectamente con “DimGeography” a través de la tabla
“DimCustomer”.

IES Cibertec S.A.C - Business Intelligence SQL Server 2022


Modelo Multidimensional con Analysis Services Services 27

Por tanto, se puede usar otra relación referenciada para relacionar la dimensión
“Geography” con la tabla de hechos “FactInternetSales”, a través de la dimensión
“Customer”. Este grado de flexibilidad no hubiese podido alcanzarse si se hubiese
implementado la solución a través de dimensiones Snowflake.

10.3 Relación “Fact”

Frecuentemente, las tablas de hechos contienen, además de columnas de medidas


y foreign keys, columnas adicionales que almacenan información relevante para el
negocio. Por ejemplo, una tabla de hechos con información de ventas puede
contener columnas que almacenen el número de factura y la dirección de envío del
despacho.

SSAS 2016 provee un tipo de relación que permite implementar relaciones de hecho.
Véase la siguiente figura:

Las dimensiones de hechos, más conocidas como dimensiones degeneradas, son


dimensiones estándar que se crean a partir de columnas de atributos de tablas de
hechos en lugar de columnas de atributos de tablas de dimensiones. Los datos
útiles de dimensiones algunas veces se almacenan en una tabla de hechos para
reducir la duplicación.

IES Cibertec S.A.C - Business Intelligence SQL Server 2022


Modelo Multidimensional con Analysis Services Services 28

Por ejemplo, en el siguiente diagrama se muestra la tabla de hechos Sales de la


base de datos de ejemplo WideWorldImportersDW Multidimensional, que
contienen columnas que almacenan el número de la factura (WWI Invoice ID).

La tabla contiene información sobre atributos no solo para cada línea de un pedido
emitido por un distribuidor, sino sobre el propio pedido. Esta Información es
relevante para el negocio; razón por la cual es considerado en la tabla de hechos
para ser relacionado con las medidas.

En este esquema la relación de cada factura se efectuará mediante la relación con


la propia tabla de hechos Sales.

IES Cibertec S.A.C - Business Intelligence SQL Server 2022


Modelo Multidimensional con Analysis Services Services 29

10.4 Relación muchos a muchos (Many - to - many relationship)

En la mayoría de dimensiones, cada hecho se combina con un solo miembro de la


dimensión y un único miembro de la dimensión puede asociarse a varios hechos.
En terminología de bases de datos relacionales, esto se conoce como relación de
uno a varios. No obstante, suele resultar útil combinar un único hecho con varios
miembros de dimensión, esto se reconoce como relación de muchos a muchos.

Por ejemplo, un cliente de un banco podría tener varias cuentas (cuenta corriente,
libreta de ahorro, tarjetas de crédito y cuentas de inversión) y una cuenta también
puede tener varios propietarios. La dimensión de cliente creada a partir de estas
relaciones tendrá varios miembros relacionados con una única transacción de
cuenta.

SSAS 2016 provee un tipo especial de relación que permite implementar relaciones
de muchos a muchos entre las tablas de hechos y las tablas de dimensión. Véase la
siguiente figura:

En general, la implementación de una relación muchos – muchos requieren de los


siguientes componentes representados en la figura anterior:

• Fact Table: la tabla de hechos principal


• Many to many dimension: la tabla de dimensión con la cual se desea
relacionar la tabla de hechos principal
• Regular Dimension: una dimensión relacionada con la tabla de hechos
principal a través de una relación regular
• Intermediate Fact Table: una tabla de hechos relacionada con las dos
dimensiones mencionadas más arriba

Las tablas Fact Table, Regular Dimension e Intermediate Fact Table deben estar
relacionadas en la data source view. De lo contrario, no se podrá definir la relación
muchos – muchos.

IES Cibertec S.A.C - Business Intelligence SQL Server 2022


Modelo Multidimensional con Analysis Services Services 30

Este tipo de situaciones en las cuales las dimensiones tienen relaciones de tipo
muchos-muchos con las tablas de dimensión. Por ejemplo, véase la siguiente
imagen:

La tabla “DimSalesReason” almacena motivos de venta. Como puede deducirse de


la figura, la relación entre “DimSalesReason” y “FactInternetSales” es de tipo
muchos-muchos: cada venta (un registro en “FactInternetSales”) puede tener
múltiples motivos de venta (registros en “DimSalesReason”). Y, análogamente,
cada motivo de venta puede estar relacionado con múltiples ventas.

En este diseño, la relación muchos – muchos se implementan a través de la tabla


“FactInternetSalesReason”, que relaciona los registros de “FactInternetSales” con
los registros de “DimSalesReason”.

IES Cibertec S.A.C - Business Intelligence SQL Server 2022

También podría gustarte