Relaciones de atributo

Se aplica a: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

En Microsoft SQL Server SQL Server Analysis Services, los atributos de una dimensión siempre están relacionados directa o indirectamente con el atributo clave. Al definir una dimensión basada en un esquema en estrella, donde todos los atributos de la dimensión se derivan de la misma tabla relacional, se define automáticamente una relación de atributo entre el atributo clave y cada atributo no clave de la dimensión. Al definir una dimensión basada en un esquema de copo de nieve, donde los atributos de la dimensión se derivan de varias tablas relacionadas, se define automáticamente una relación de atributo del modo siguiente:

  • Entre el atributo clave y cada atributo sin clave enlazado a columnas de la tabla principal de dimensiones.

  • Entre el atributo clave y el atributo enlazado a la clave externa de la tabla secundaria que vincula las tablas de dimensiones subyacentes.

  • Entre el atributo enlazado a la clave externa de la tabla secundaria y cada atributo no clave enlazado a las columnas de la tabla secundaria.

Sin embargo, hay una serie de razones por las que puede que desee cambiar estas relaciones de atributo predeterminadas. Por ejemplo quizás desee definir una jerarquía natural, un orden personalizado o una granularidad de dimensión basados en un atributo no clave. Para obtener más información, vea Referencia de propiedades de atributo de dimensión.

Nota:

Las relaciones de atributo se conocen como propiedades de miembros en las Expresiones multidimensionales (MDX).

Relaciones de jerarquías naturales

Una jerarquía es natural cuando cada atributo incluido en la jerarquía definida por el usuario tiene una relación de uno a varios con el atributo situado inmediatamente debajo. Por ejemplo imagine una dimensión de cliente basada en una tabla de origen relacional con ocho columnas:

  • CustomerKey

  • CustomerName

  • Age

  • Sexo

  • Correo electrónico

  • City (Ciudad)

  • País

  • Region

La dimensión correspondiente de Analysis Services tiene siete atributos:

  • Customer (basado en CustomerKey; CustomerName proporciona los nombres de miembro)

  • Age, Gender, Email, City, Region, Country

Las relaciones que representan jerarquías naturales se aplican al crear una relación de atributo entre el atributo de un nivel y el atributo del nivel situado debajo. Para SQL Server Analysis Services, especifica una relación natural y una posible agregación. En la dimensión de cliente, existe una jerarquía natural para los atributos Country, Region, City y Customer. La jerarquía natural de {Country, Region, City, Customer} se describe al agregar las siguientes relaciones de atributo:

  • El atributo Country como una relación de atributo con el atributo Region.

  • El atributo Region como una relación de atributo con el atributo City.

  • El atributo City como una relación de atributo con el atributo Customer.

Para navegar por los datos en el cubo, también puede crear una jerarquía definida por el usuario que no represente una jerarquía natural en los datos (que se denomina jerarquía ad hoc o de informes ). Por ejemplo, podría crear una jerarquía definida por el usuario basada en {Age, Gender}. Los usuarios no ven ninguna diferencia en cómo se comportan las dos jerarquías, aunque la jerarquía natural se beneficia de la agregación y las estructuras de indexación , ocultas al usuario, que tienen en cuenta las relaciones naturales en los datos de origen.

La propiedad SourceAttribute de un nivel determina qué atributo se usa para describir el nivel. La propiedad KeyColumns del atributo especifica la columna de la vista del origen de datos que proporciona los miembros. La propiedad NameColumn del atributo puede especificar una columna de nombre diferente para los miembros.

Para definir un nivel en una jerarquía definida por el usuario mediante SQL Server Data Tools, el Designer dimensión permite seleccionar un atributo de dimensión, una columna de una tabla de dimensiones o una columna de una tabla relacionada incluida en la vista del origen de datos para el cubo. Para obtener más información sobre cómo crear jerarquías definidas por el usuario, vea Crear jerarquías de User-Defined.

En Analysis Services, se suele hacer una suposición acerca del contenido de los miembros. Los miembros hoja no tienen descendientes y contienen datos derivados de los orígenes de datos subyacentes. Los miembros no hoja tienen descendientes y contienen datos derivados de agregaciones realizadas en miembros secundarios. En los niveles agregados, los miembros se basan en agregaciones de niveles subordinados. Por lo tanto, cuando la propiedad IsAggregatable se establece en False en un atributo de origen para un nivel, no se debe agregar ningún atributo aggregatable como niveles por encima de él.

Definir una relación de atributo

La principal restricción al crear una relación de atributo consiste en asegurarse de que el atributo al que la relación de atributo hace referencia no tenga más de un valor para ningún miembro en el atributo al que pertenece la relación de atributo. Por ejemplo, si se define una relación entre un atributo City y uno State, cada ciudad solo puede relacionarse con un único estado.

Consultas de las relaciones de atributo

Puede usar consultas MDX para recuperar datos de relaciones de atributo, en forma de propiedades de miembro, con la palabra clave PROPERTIES de la instrucción MDX SELECT . Para obtener más información sobre cómo usar MDX para recuperar propiedades de miembro, vea Using Member Properties (MDX).

Consulte también

Atributos y jerarquías de atributos
Referencia de las propiedades de los atributos de dimensión
Jerarquías de usuario
Propiedades de jerarquía de usuario