There are mainly 9 types of dimensions as follows:
Conformed Dimension: A conformed dimension is a dimension that is consistent and identical across multiple data marts or data warehouses. It is used to ensure that the same dimension is used across different data marts or data warehouses, ensuring consistency in the data. Examples of conformed dimensions include time, geography, and product dimensions.
Outrigger Dimension: An outrigger dimension is a dimension table that is attached to another dimension table to provide additional details about a specific attribute in the parent dimension. For example, a customer dimension may have an outrigger dimension that provides additional information about the customer's address.
Shrunken Dimension: A shrunken dimension is a subset of a larger dimension that is used in a specific part of the data warehouse. For example, a time dimension may be shrunk to only include the year and quarter attributes when used in a sales data mart.
Role-Playing Dimension: A role-playing dimension is a dimension that is used in multiple ways within a single fact table. For example, a date dimension may be used to represent both an order date and a ship date within a sales fact table.
Dimension-to-Dimension Table: A dimension-to-dimension table is a table that contains the relationships between two dimensions. For example, a product hierarchy table may contain the relationships between different product categories and subcategories.
Junk Dimension: A junk dimension is a dimension that is created to store low-cardinality attributes that do not fit well into any other dimension. For example, a "promotion flag" dimension may be created to store the different types of promotions that apply to sales transactions.
Degenerate Dimension: A degenerate dimension is a dimension that is derived from a fact table and does not have a separate dimension table. For example, an order number may be used as a degenerate dimension in a sales fact table.
Swappable Dimension: A swappable dimension is a dimension that can be swapped with another dimension without affecting the fact table. For example, a customer dimension and a product dimension may be swappable within a sales fact table.
Step Dimension: A step dimension is a dimension that is used to represent a process or workflow. For example, a manufacturing process may be represented as a step dimension in a manufacturing data warehouse.
Note: These types of dimensions are not mutually exclusive, and a single dimension can exhibit characteristics of multiple types of dimensions.