Reputation: 15787
I come from a background developing database driven applications. I am now trying to understand Data Warehouse concepts. I have seen plenty of questions here asking about the differences between fact tables; dimensions and measures e.g. here. I understand the differences. I have bought a book on Data Warehouse design using SQL Server and I am working through it.
I do not understand the difference between dimensions in a multidimensional database (SSAS instance) and tables in a relational database. Is it just a difference of terminology? i.e. a dimension is a table?
For example, if you look at this star schema, here; the dimensions contain foreign keys, attributes etc. What is the difference between a dimension and a relational database table?
Upvotes: 0
Views: 118
Reputation: 19184
A dimension can be represented by a table or it might just be a directly created dimension in a cube. In other OLAP systems (i.e. TM1) you can build a dimension inside a cube simply from manually entered data. The dimension never exists in a table.
A dimension is meant to model some part of the business. It might be that the dimension (say a location dimension with states and countries) isn't even represented wholly in any one table or system.
Inside an MOLAP cube, there are no foreign keys or primary keys.
MOLAP stores facts and dimensions in a cube (with aggregations and partitions). ROLAP stores facts and dimensions in a database (with foreign keys etc.)
Upvotes: 1