Considerations
Try to model as basic as possible. You probably don't need the following:
- Multiple date dimensions
- Bi-directional references/relations
- Calculated columns
- Any other SCD type than 1 as in ONE.
Most of the problems come from bad modelling. It's difficult sometimes to model easily. But the dimensional model can handle a lot of cases with just the simple use of facts and dims in the most regurlar way.
Most of the problems come from models that are made to complex, by having too many relationships or a snowflake schema instead of a star schema. Once you need a lot of complex things like partitioning tables that only have less than 100 million rows or for the most simple things very complex DAX measures, you are probably going in the wrong direction.