Studierende stehen vor dem LC und blicken lächelnd einer Kollegin mit einer Mappe in der Hand nach.

Exercise No. 15: Restaurant Order (log)

We will now build a logical model for the "restaurant order" case.

We have four dimensions with the following hierarchical structure:

Table L.E.41.1 - restaurant order

There are two key figures in this example, "sum" and "no. of customers". Each meal has an additional attribute "M_me_des", the description of the meal

Please draw the Classic Star and the Fact Constellation Schema. Then draw the example's dimension tables partitioned and normalized and use them to build a Snowflake Schema!

Solution

The Star Schema for this case includes a central fact table and four dimension tables. The dimension tables consist of a generated key as well as a key and a text field for each hierarchy (except the total aggregation) and the level attribute. The fact table uses the generated keys from the dimension tables as a combined key and contains two key figures ("sum" and "no. of customers") in this example:

Figure L.E.41.1 - The Classic Star Schema

The Fact Constellation Schema for this case consists of four dimension tables and six fact tables (1x1x2x3):

Figure L.E.41.2 - The Fact Constellation Schema

Partitioning the Classic Star's dimension tables by the level attribute results in one table for each hierarchy level (in each dimension). All tables include the fields of the higher levels, the level attribute itself is omitted:

Figure L.E.41.3 - DT partitioned (left) and normalized (right)

Normalizing the dimension tables completely means that only the key of the next higher level is kept in each table. Please note that the tables for the total aggregation level have been neglected in Figure L.E.41.3

The Snowflake Schema is a combination of the Fact Constellation Schema's fact tables and the dimension tables either partitioned or normalized:

Figure L.E.41.4 - The Snowflake Schema

This exercise is part of a case study:

dfm

- apa - log