Normal Dimensions (Primary and Secondary)
Normal dimensions are based on a dataset. All data for a normal dimension is normalized into a single table or view.
In the example below, the Customer, Product, and Order dimensions would be considered normal dimensions. They are each backed by their own normalized table or view. Normal dimensions are represented on the cube canvas with a green header. Notice that you do not see all of the columns in the underlying dataset from the main cube canvas. You see only the logical representation of what has been modeled in the cube so far (the dimension hierarchies and levels).
The underlying dataset backing each logical dimension, plus any secondary attributes and relationships can be viewed on the respective dimension editor canvases.
Standard Dimensions and Time Dimensions
AtScale allows two types of normal dimension:
- Standard: A standard dimension can have any kind of hierarchy.
- Time: A time dimension must have a time-based hierarchy.
Because time type dimensions were introduced in AtScale 2019.2.0, any dimension created in AtScale 2019.1.x or earlier was automatically created as a standard type dimension, even if it had a time-based hierarchy. Starting from AtScale 2019.2.0, you can create time dimensions, or edit an existing normal dimension's type from standard to time. (See Add a Normal Dimension and Edit the Dimension Type.)
For more information about time dimensions and examples of use cases for them, see the topic Time Dimensions.
Primary vs Secondary Normal Dimensions
On the main cube canvas, you will only see the dimensions that have a direct relationship to the fact data. Normal dimensions that are directly related to the fact data represent the primary dimensions of the cube. When AtScale generates its system aggregates, it summarizes data to the granularity of the primary dimensions.
You may also have normal dimensions in your model that are not directly connected to the fact data - they are connected through a primary dimension instead. These are referred to as secondary dimensions (sometimes called embedded dimensions) and have the following features:
- A secondary dimension is a normal dimension, because it is based on its own table or view. However, it does not join to the fact dataset directly. It joins to the dataset of another normal dimension instead.
- A normal dimension that is used as a basis for secondary dimensions can be recognized on the canvas by the special icon displayed next to its name. You can see this for the Customer dimension in the example above.
For example, in the data model below, the Gender and Geography dimensions would be considered secondary dimensions. They do not join to the fact dataset directly, but do so via the Customer dimension. And the Geography dimension features an icon that shows it is a basis for secondary dimensions on its own.
You cannot create, view, or edit secondary dimensions from the main cube canvas. You have to open the dimension editor to see and manage secondary dimensions.