Should I make my dimension a "List" dimension?
List dimensions are usually recommended for use over a hierarchical dimension for three reasons:
- They generally have a faster performance than hierarchical dimensions when loading sheets and reports.
- They allow you to add dimension attributes to be associated with the dimensions. These dimension attributes are also very efficient in terms of performance, and they allow greater flexibility for reporting purposes.
- List dimensions allow you to specify version availability. Thus, you can enable list dimensions for some versions, but disable them for other versions. This can be helpful in terms of maintenance if dimension values become obsolete in future versions.
However, there are two requirements for a dimension to be a "list" dimension:
- It must have a "flat" hierarchy (one parent, with multiple values that are all on the same plane)
- It cannot be used as a "level" dimension (in other words, which would be tagged to specific levels in the organization structure page).
If either of the last two functions are things that are needed, it may make more sense to not make this dimension a list dimension. Otherwise, list dimensions are recommended for their faster performance in the model and flexibility in terms of assigning dimension attributes. For more information on dimension attributes, please see this page.