3. Requirements
● A company with 6 departments
– Marketing
– Inventory
– Purcashing
– Finance
– IT
– HR
● Need data warehouse for HR department
4. HR Class Diagram
● Contains 6 parent tables
– employee
– dependent
– leave
– position
– department
– degree
● 5 cross-reference tables
– Example: emp_degree table
● 1 Daily transactional data
5. Question #1
What kind of data warehouse implementation approach will be
suitable for this scheme and give your reason?
6. Data Warehouse Implementation Approach
● Top-down(by inmon)
– Enterprise view-point
– Time consuming
● Bottom-up(by kimball)
– Department view-point
– Faster
● How to choose?
– View-point: enterprise-wide or departmental?
– Time
– Resource availability
7. Top-down vs Bottom-up
"You can catch all the minnows in the ocean and stack them together
and they still do not make a whale."
~ Inmon ~
"The data warehouse is nothing more than the union of all the data
marts"
~ Kimball ~
computerweekly.com
8. HR Data Warehouse/Data Mart Approach
● Bottom-up is the most suitable approach
– HR department view-point
– There have been 4 another department data marts
– Faster and easier to maintain
– Good as a proof-of-concept
9. Question #2
What kind datawarehouse architecture will be suitable for this
HRD department and please figure out that data warehouse
architecture?
10. Architecture
● Data comes from a data source(OLTP)
● Pushed to ETL process
● Loaded into the data mart
● All data marts combined to be a data warehouse
tdan.com
11. Question #3
Design star schema for this HRD department based on 1 of
example report which is created by you and please explain what
is inside the schema such as how many tables, what kind of the
name of Tables, how many primay, foreign and composite key
and what are they?
12. Star Schema
● Report: list of employee leave that can be filtered by
department and employee position
● Fact_Leave, DimEmployee and DimLeave
● 2 primary keys and 1 composite key
13. Question #4
Design snowflake schema for this HRD department based on 1
of example report which is created by you and please explain
what is inside the schema such as how many tables, what kind
of the name of Tables, how many primay, foreign and composite
key and what are they ?
14. Snowflake Schema
● Report: list of employee leave that can be filtered by
department and employee position
● Fact_Leave, DimLeave, DimEmployee, Dim_Department, and
Dim_Position
● 4 primary keys and 1 composite key