Difference between Name columns, Attributes, and Member properties


  • I am studying for the "70-463 Implementing a Data Warehouse with Microsoft SQL Server 2012" exam. I am using the "Training Kit (Exam 70-463): Implementing a Data Warehouse with Microsoft SQL Server 2012".

    In chapter 1 of this book the different columns of dimension are explained., however I fail to understand the difference between the following column types:

    - Name columns: Used for human names of entities
    - Attributes: Used for pivoting in analyses
    - Member properties: Used for labels in a report

    As far I can understand all those three are labels and can be used interchangeable. Am I correct? Or am I wrong? I suppose there might be some practical differences, but how can you tell?

    I would really appreciate some examples showing the same data in a LOB (OLTP), data warehouse (star schema), and data mart (OLAP cube) form.

    Thank in advance.

    • Edited by Arjen Krap Monday, December 30, 2013 2:11 PM
    Monday, December 30, 2013 2:10 PM


All replies

  • Those refer specifically to attributes in an Analysis Services Multidimensional Model.

    See: Attributes and Attribute Hierarchies

    And a "Member Property" just means an attribute with AttributeHierarchyEnabled = False, so the attribute can be used in report output, but can't be used for filtering or pivoting.



    Monday, December 30, 2013 4:12 PM
  • If I understand correctly the difference is about context or how you use the column.

    I did some further reading, and now I understand that an attribute can consists multiple columns. This way the following is possible:

    • An attribute can be combined of multiple columns: e.g. the attribute address can combined by the apartment number, house number, street name, ZIP code, city, state, and country.
    • An attribute can be column which is also part of another attribute: e.g. apartment number, house number, street name, ZIP code, city, state, and country can all be attributes own their own and simultaneously be part of the address attribute. The difference is the context which depends on business needs and technical requirements.
    • An attribute can also consists of multiple columns which are aliases. This can be needed to support multiple languages or allow user friendly names (which allows spaces and funny characters) to coexist with technical names (which use a more restricted naming convention and typically use camel case.) Another example would be an additional column for abbreviations which might be needed for narrow column headers. Depending on the context a specific column can be used.

    Tuesday, December 31, 2013 9:07 AM