Schema
Schema is a logical description of the entire database. It includes the name and
description of records of all record types including all associated data-items and
aggregates.
Star Schema
Each dimension in a star schema is represented with only one-dimension
table.
This dimension table contains the set of attributes.
The following diagram shows the sales data of a company with respect to
the four dimensions, namely time, item, branch, and location.
There is a fact table at the center. It contains the keys to each of four
dimensions.
The fact table also contains the attributes, namely dollars sold and units
sold.
Snowflake Schema
Some dimension tables in the Snowflake schema are normalized.
The normalization splits up the data into additional tables.
Unlike Star schema, the dimensions table in a snowflake schema are
normalized. For example, the item dimension table in star schema is
normalized and split into two dimension tables, namely item and supplier
table.
Now the item dimension table contains the attributes item_key,
item_name, type, brand, and supplier-key.
The supplier key is linked to the supplier dimension table. The supplier
dimension table contains the attributes supplier_key and supplier_type.
Fact Constellation Schema
A fact constellation has multiple fact tables. It is also known as galaxy
schema.
The following diagram shows two fact tables, namely sales and shipping.
The sales fact table is same as that in the star schema.
The shipping fact table has the five dimensions, namely item_key,
time_key, shipper_key, from_location, to_location.
The shipping fact table also contains two measures, namely dollars sold
and units sold.
It is also possible to share dimension tables between fact tables. For
example, time, item, and location dimension tables are shared between
the sales and shipping fact table.