Hi
We are planning a rebuild of our existing multi-dimensional cubes and replacing them with tabular cubes. At the moment I am going through the design and planning what we are going to do.
We have multiple products that we need to report on, each product has different dimensionality, and granularity. We do also have some data that crosses products.
The current MD cubes are designed by product area, with specific databases and cubes for each product, holding the data relating to these products. We also have some cross product cubes which aggregate data so we can report on overall performance by the common dimensions.
The idea for the new design is to have a single model, with all products in it. The issue would be how we lay out the data in this model.
- Multiple facts per product area as per design, with an aggregated fact for the cross product reporting. This has cons in having to load data multiple times.
- Single fact table. This would be by shaping each fact table to have the same columns, and load everything into a single fact. This fact would have an identifier of what the data is to allow for splitting and then creating measures off of this
fact. The data would be at different dimensionality, and granularity, but would work with summary data.
One con is that each dataset would have a large number of columns with nulls in them for columns where they do not have data for that particular dimension.
The partitioning is also going to be very complicated due to the need to load data at different times when it comes available.
Has anyone tried the single fact table design unioning multiple facts together with different dimensionality?
Thanks