Por cada una de las dimensiones nos encontramos con una colección de Atributos que se corresponden con una o más columnas de la tabla de dimensiones. Un atributo es cada una de las características de la dimensión por la cual podremos analizar la información. Por ejemplo, para la dimensión Tiempo tendremos atributos como Año, Mes, Día, Trimestre, Trimestre fiscal, Año fiscal, etc. Para la dimensión Cliente tendremos otros como Nombre, Población, País, Estudios, Edad, Número de hijos, Sexo, etc.Entre todos ellos, debemos destacar que contaremos con un atributo clave, éste es un atributo con valores únicos, que identifica las columnas de la tabla de dimensiones con las claves externas de la tabla de hechos. Normalmente, representa a la columna que es clave principal (primary key) en la tabla de dimensiones.

Veamos las principales propiedades de los atributos:

  • KeyColumn. Contiene la colección de columnas que constituyen la clave del atributo. Está compuesta por las columnas que hacen que el valor de cada miembro sea único. Por ejemplo, si tenemos en la tabla de Tiempo una columna para el año y otra para el mes, la colección KeyColumn estará formada por ambas columnas, ya que cada mes está repetido en cada uno de los años.
  • NameColumn. Se utiliza para mostrar un valor descriptivo al usuario, cuando el valor el valor de la columna clave no es lo suficientemente descriptivo. Cuando se indica una columna en esta propiedad, será este valor el mostrado al usuario en lugar de KeyColumn.
  • ValueColumn. Identifica la columna que proporciona el valor del atributo.
  • AttributeHierarchyDisplayFolder. Identifica la carpeta en la que verán este elemento los usuarios finales desde las herramientas cliente.
  • DefaultMember. Expresión MDX que define el miembro predeterminado del atributo.
  • OrderBy. Especifica el método para ordenar los miembros del atributo. Valores:
  • Key, los miembros se ordenan por la clave del atributo
  • Name, los miembros se ordenan por el nombre del atributo
  • AttributeKey, los miembros se ordenan por la clave del atributo especificado en la propiedad OrderByAttribute.
  • AttributeName, los miembros se ordenan por el nombre del atributo especificado en la propiedad OrderByAttribute.
  • OrderByAttribute. Si en OrderBy hemos decidido que se ordenen por otro atributo, es decir, hemos elegido el valor AttributeKey o AttributeName, en esta propiedad indicaremos el atributo por el que deseamos realizar la ordenación.
  • Type. Especifica el tipo de información que contiene el atributo.
  • Usage. Especifica el uso del atributo. Valores: Regular, Key, Parent.
  • IsAggregatable. Indica si el atributo se puede agregar en una jerarquía.
  • DiscretizationMetod. “Discretizar” consiste en convertir valores continuos en valores discretos. Por ejemplo, el salario es un valor continuo, puede haber cualquier valor, pero a nivel de análisis de información podemos convertirlo en continuo, haciendo tres grupos, el primero entre 0 y 10.000, el segundo entre 10.001 y 50.000 y el tercero para más de 50.000. Con la propiedad DiscretizationMetod elegimos el método a utilizar para este proceso. Valores: None, Automatic, EqualAreas, Cluster.
  • DiscretizationBucketCount. Especifica el número de depósitos en los que se “discretizarán” los atributos. En el ejemplo anterior serían tres.
  • AttributeHierarchyEnabled. Determina si se ha generado una jerarquía de atributos para ese atributo. Esto tiene implicaciones, ya que si no está habilitada no se puede utilizar ese atributo en una jerarquía definida por el usuario, ni se puede hacer referencia a la jerarquía de atributos desde instrucciones MDX.
  • AttributeHierarchyOptimizedState. Determina el nivel de optimización aplicado a la jerarquía de atributos. Valores: FullyOptimized, NotOptimized. Por defecto está completamente optimizada, lo que implica que se generarán índices para optimizar las consultas. Es conveniente que no estén optimizadas aquellas jerarquías que no se utilicen para realizar consultas, y sólo estén para otros fines como la ordenación. Esto ahorrará tiempos de procesamiento.
  • AttributeHierarchyOrdered. Indica si la jerarquía de atributos asociada está ordenada. Valores: True, False. Al igual que en el caso anterior, si no se va a utilizar para realizar consultas, mejor ponerla a False, y ahorrar tiempos de procesamiento innecesarios.
  • AttributeHierarchyVisible. Indica si la jerarquía de atributos asociada está visible para las aplicaciones cliente. Valores: True, False. Se debe poner a False cuando no se utiliza para realizar consultas.

 

Salvador Ramos

Consultor, Formador y Mentor en Business Intelligence. SQL Server MVP.
Director de Formación en SolidQ.
Microsoft MCSE 2012: Business Intelligence.

Latest posts by Salvador Ramos (see all)