Short note on Snowflakes Schema..
Snowflakes Schema.
- The snowflake schema is a variant of the star schema model, where some dimension table is normalized, thereby further splitting the data into additional tables. The resulting schema graph forms a shape similar to a snowflake.
- For example, the item dimension table in a star schema is normalized and split into two dimension tables, namely item and supplier table.
Advantages and Disadvantages of Snowflakes Schema
- Due to normalization table is easy to maintain and saves storage space. However, this saving of space is negligible in comparison to the typical magnitude of the fact table.
- Furthermore, the snowflake structure can reduce the effectiveness of browsing, since more joins will be needed to execute a query. Consequently, the system performance may be adversely impacted.
- Hence, although the snowflake schema reduces redundancy, it is not as popular as the star schema in data warehouse design.
Defining a Snowflake Schema in DMQL
define cube sales_snowflake [time, item, branch, location]:
dollars_sold = sum(sales_in_dollars), avg_sales = avg(sales_in_dollars), units_sold = count(*)
define dimension time as (time_key, day, day_of_week, month, quarter, year)
define dimension item as (item_key, item_name, brand, type,
supplier(supplier_key, supplier_type))
define dimension branch as (branch_key, branch_name, branch_type)
define dimension location as (location_key, street, city(city_key, province_or_state, country))
Comments
Post a Comment