Components of a Semantic Model

Fact tables, dimension tables, joins, and hierarchies are a semantic model's key components.

Component Description

Fact Tables

Fact tables contain measures (columns) that have aggregations built into their definitions.

Measures aggregated from facts must be defined in a fact table. Measures are typically calculated data such as dollar value or quantity sold, and they can be specified in terms of hierarchies. For example, you might want to determine the sum of dollars for a given product in a given market over a given time period.

Each measure has its own aggregation rule such as SUM, AVG, MIN, or MAX. A business might want to compare values of a measure and need a calculation to express the comparison.

Dimension Tables

A business uses facts to measure performance by well-established dimensions, for example, by time, product, and market. Every dimension has a set of descriptive attributes. Dimension tables contain attributes that describe business entities (like Customer Name, Region, Address, or Country).

Dimension table attributes provide context to numeric data, such as being able to categorize Service Requests. Attributes stored in this dimension might include Service Request Owner, Area, Account, or Priority.

Dimension tables in the model are conformed. In other words, even if there are three different source instances of a particular Customer table, the model only has one table. To achieve this, all three source instances of Customer are combined into one using database views.

Joins

Joins indicate relationships between fact tables and dimension tables in the model. When you create joins, you specify the fact table, dimension table, fact column, and dimension column you want to join.

Joins allow queries to return rows where there is at least one match in both tables.

Tip: Analysts can use the option Include Null Values when building reports to return rows from one table where there’re no matching rows in another table.

Hierarchies

Hierarchies are sets of top-down relationships between dimension table attributes.

In hierarchies, levels roll up from lower levels to higher levels. For example, months can roll up into a year. These rollups occur over the hierarchy elements and span natural business relationships.