...
Similar to the snowflake schema, there is one table for each level of a dimension hierarchy and the tables of a dimension are connected by a 1:n foreign key relationship according to the hierarchy (e.g., tables D1.K0, ..., D1.Km). The Fact table references case dimension (i.e., each dimension representing a case attribute) by a foreign key reference to the table of its most fine-grained dimension level. Additionally, it also stores a unique id for the easy identification of cell of the data cube. The following table gives an overview of the columns of the Fact table.
Column Name(s) | Type | Cardinality | Description |
---|---|---|---|
id | arbitrary | 1 | id of cell, must be unique |
dim_1 ... dim_s | arbitrary | 1...* | foreign key to table of most fine-grained dimension level |
Using a foreign key, the cell id of the Fact table is referenced by the Case table which stores each single case as a row. Each tuple requires a mandatory unique id to identify the cases. Additionally, the Case table can also have an arbitrary number of additional attributes (A1, ..., Ap) to store the simple case attributes (i.e., all case attributes that are modeled as simple attributes). The simple attribute columns of the Case table may have arbitrary types. Tthe following table gives an overview of the columns of the Case table.
Column Name(s) | Type | Cardinality | Description |
---|---|---|---|
id | arbitrary | 1 | id of case, must be unique |
cell_id | arbitrary | 1 | foreign key reference to id column of Fact table |
A_1 |
... A_p | arbitrary | 0...* | columns for storing simple case attributes |
The Event table stores one event per row. Similar to the Case table, it references the tables of the most fine-grained dimension levels of all event dimensions (i.e., event attributes that are modeled as dimensions). The simple event attributes (i.e., event attributes modeled as simple attributes) are represented by an additional table column for each simple attribute (similar to Case table). The Event table also has a unique id and a foreign key reference to the id of the case that own the event. The following table summarizes the columns of the Event table.
Column Name(s) | Type | Cardinality | Description |
---|---|---|---|
id | arbitrary | 1 | id of event, must be unique |
case_id | arbitrary | 1 | foreign key reference to id column of Case table |
dim_1 ... dim_w | arbitrary | 0..* | foreign key to table of most fine-grained dimension level |
A_1 ... A_p | arbitrary | 0...* | columns for storing simple event attributes |