Richard Currey | Senior Technical Trainer–New
Description: Richard Currey Senior Technical TrainerNew Horizons United George Squillace Senior Technical TrainerNew Horizons Great Lakes Implementing a Data Warehouse with SQL Server Jump Start Meet Richard Currey Senior Technical Trainer New
Related Topics
Download Presentation
"Richard Currey | Senior Technical Trainer–New" is the property of its rightful owner. Permission is granted to download and print the materials on this website for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Presentation Transcript
slide1. Richard Currey | Senior Technical Trainer–New Horizons United
George Squillace | Senior Technical Trainer–New Horizons Great Lakes Implementing a Data Warehouse with SQL Server Jump Start<br>
slide2. Meet Richard Currey Senior Technical Trainer – New Horizons United
Focused on database and development technologies
MCDBA, MCITP Dev / Admin / BI, MCSE Data Platform, BI
MCSD, MCPD Web Developer, ASP .NET Developer, Windows Developer 28 Years Industry Experience
Designed, developed and managed BI-centric projects at several Fortune 500 organizations
Extensive consulting and project management background<br>
slide3. Meet George SQUILLACE Senior Technical Trainer – New Horizons Great Lakes (20 Years)
“SQL” is in his name!
Focused on database technologies
MCT Since 1997 28 Years Industry Experience
SQL Server 2012: certified as MCSA, MCSE: Data Platform, & MSCE: Business Intelligence
Certified in every version of SQL Server since SQL 2000
Certified in every version of Windows Server from NT 4.0 through Windows Server 2008
Certified in Exchange Server 5.5 through Exchange Server 2007<br>
slide4. Course Modules<br>
slide5. Setting Expectations Target Audience
Data warehousing specialists who want to expand their knowledge of SQL Server Integration Services (SSIS)
Database professionals who want to take exam 70-463 and get certified in data warehouse implementations
Suggested Prerequisites/Supporting Material
SQL Server development experience and exposure to extract, transform, and load (ETL) processes
Course 10777, Implementing a Data Warehouse with Microsoft SQL Server 2012
MS Press Book: Training Kit (Exam 70-463): Implementing a Data Warehouse with Microsoft SQL Server 2012<br>
slide6. 01 | Design and Implement Dimensions and Fact Tables Richard Currey | Senior Technical Trainer–New Horizons United
George Squillace | Senior Technical Trainer–New Horizons Great Lakes<br>
slide7. Schema Design: Star vs. Snowflake
Facts and Fact Tables
Fact and Dimension Granularity
Conformed and Non-Conformed Dimensions
Time Dimensions Module 1 Overview<br>
slide8. Topic: Schema Design: Star vs. Snowflake<br>
slide9. Topic: Schema Design: Star versus Snowflake Star Schema
Snowflake Schema
Processing and Performance Considerations<br>
slide10. Star Schema A star schema has a single table for each dimension
Each table supports all attributes for that dimension
Typically a de-normalized solution<br>
slide11. Implementing a Star Schema<br>
slide12. Snowflake Schema More normalized solution
Typically contains multiple tables per dimension
Each table contains dimension key, value, and the foreign key value for the parent<br>
slide13. Implementing a Snowflake Schema<br>
slide14. Processing and Performance Considerations Star schema requires de-normalization during the load process
Can impact the ETL times
Snowflake schema can increase dimension complexity
Can impact Analysis Services solutions, negatively affecting cube performance<br>
slide15. Topic: Facts and Fact Tables<br>
slide16. Topic: Facts and Fact Tables What Is a Fact?
Grouping Facts
What Is Granularity?
Design Considerations<br>
slide17. What Is a Fact? Facts are the key metrics used to measure business results:
Sales
Production
Inventory
Can be additive, semi-additive, or non-additive<br>
slide18. Grouping Facts Facts are grouped into fact tables
Related facts should be in the same fact table
Facts with different granularity should be in different tables<br>
slide19. What Is Granularity? Granularity refers to the level of detail in which facts are recorded
Facts can be at different levels of granularity<br>
slide20. Design Considerations Fact tables should have all keys relating to dimensions
Primary key should be composite of all dimension keys
Separate additive, semi-additive, and non-additive facts<br>
slide21. Topic: Fact and Dimension Granularity<br>
slide22. Topic: Fact and Dimension Granularity How to Determine Fact Granularity
Dimension Granularity<br>
slide23. How to Determine Fact Granularity Granularity is determined based on business needs
Should be the lowest level of detail that needs to be examined
If data from transactional systems has more detail than needed for analysis, ETL should aggregate the details<br>
slide24. Dimension Granularity Dimension granularity needs to be matched with fact granularity
Each dimension has its own granularity
Fact tables are keyed to the granularity of the dimensions<br>
slide25. Topic: Conformed and
Non-Conformed Dimensions<br>
slide26. Topic: Conformed and Non-Conformed Dimensions What Are Conformed and Non-Conformed Dimensions?
Shared and Degenerate Dimensions
What Is a Slowly Changing Dimension?<br>
slide27. What Are Conformed and Non-Conformed Dimensions? Conformed dimension
Shared by multiple fact tables
Used when all business users have the same definitions for the dimension
Non-conformed dimension
Dimension table targeted to a single fact table
Used when dimensions have different definitions for different business units<br>
slide28. Creating Conformed and Non-Conformed Dimensions<br>
slide29. Shared and Degenerate Dimensions Shared dimension
Used by multiple facts
Dimension key is stored in the fact table
Dimension value is stored in the dimension table with other attributes of that dimension
Degenerate dimension
Used by a single fact table
Dimension value is stored directly in the fact table
No corresponding dimension table<br>
slide30. What Is a Slowly Changing Dimension? When the historical attribute values are retained if the attributes are updated
Used when the organization does not want to lose track of what actually happened
Example: customer moves from Connecticut to Seattle
Slowly changing dimension types:
Type 1: Attribute history is not retained
Type 2: Attribute change creates a new record
Type 3: Original attribute value recorded and latest value recorded with an effective date<br>
slide31. Implementing a Slowly Changing Dimension<br>
slide32. Topic: Time Dimensions<br>
slide33. Topic: Time Dimensions Types of Time Dimensions
Time Dimensions and Hierarchies<br>
slide34. Types of Time Dimensions Based on standard calendar breakdowns
Year => Month => Day
Year => Quarter => Week => Day
Based on fiscal calendar
Year => Fiscal Quarter => Fiscal Month => Fiscal Week => Day
Time dimension needs to contain all hierarchy elements to the lowest granularity for the fact tables<br>
slide35. Time Dimensions and Hierarchies Establishes the “buckets” that the business uses
Typically there are multiple hierarchies in the dimension
Calendar
Business
Created using Microsoft Excel, scripts, or are auto-generated<br>
slide36. Creating a Time Dimension<br>
George Squillace | Senior Technical Trainer–New Horizons Great Lakes Implementing a Data Warehouse with SQL Server Jump Start<br>
slide2. Meet Richard Currey Senior Technical Trainer – New Horizons United
Focused on database and development technologies
MCDBA, MCITP Dev / Admin / BI, MCSE Data Platform, BI
MCSD, MCPD Web Developer, ASP .NET Developer, Windows Developer 28 Years Industry Experience
Designed, developed and managed BI-centric projects at several Fortune 500 organizations
Extensive consulting and project management background<br>
slide3. Meet George SQUILLACE Senior Technical Trainer – New Horizons Great Lakes (20 Years)
“SQL” is in his name!
Focused on database technologies
MCT Since 1997 28 Years Industry Experience
SQL Server 2012: certified as MCSA, MCSE: Data Platform, & MSCE: Business Intelligence
Certified in every version of SQL Server since SQL 2000
Certified in every version of Windows Server from NT 4.0 through Windows Server 2008
Certified in Exchange Server 5.5 through Exchange Server 2007<br>
slide4. Course Modules<br>
slide5. Setting Expectations Target Audience
Data warehousing specialists who want to expand their knowledge of SQL Server Integration Services (SSIS)
Database professionals who want to take exam 70-463 and get certified in data warehouse implementations
Suggested Prerequisites/Supporting Material
SQL Server development experience and exposure to extract, transform, and load (ETL) processes
Course 10777, Implementing a Data Warehouse with Microsoft SQL Server 2012
MS Press Book: Training Kit (Exam 70-463): Implementing a Data Warehouse with Microsoft SQL Server 2012<br>
slide6. 01 | Design and Implement Dimensions and Fact Tables Richard Currey | Senior Technical Trainer–New Horizons United
George Squillace | Senior Technical Trainer–New Horizons Great Lakes<br>
slide7. Schema Design: Star vs. Snowflake
Facts and Fact Tables
Fact and Dimension Granularity
Conformed and Non-Conformed Dimensions
Time Dimensions Module 1 Overview<br>
slide8. Topic: Schema Design: Star vs. Snowflake<br>
slide9. Topic: Schema Design: Star versus Snowflake Star Schema
Snowflake Schema
Processing and Performance Considerations<br>
slide10. Star Schema A star schema has a single table for each dimension
Each table supports all attributes for that dimension
Typically a de-normalized solution<br>
slide11. Implementing a Star Schema<br>
slide12. Snowflake Schema More normalized solution
Typically contains multiple tables per dimension
Each table contains dimension key, value, and the foreign key value for the parent<br>
slide13. Implementing a Snowflake Schema<br>
slide14. Processing and Performance Considerations Star schema requires de-normalization during the load process
Can impact the ETL times
Snowflake schema can increase dimension complexity
Can impact Analysis Services solutions, negatively affecting cube performance<br>
slide15. Topic: Facts and Fact Tables<br>
slide16. Topic: Facts and Fact Tables What Is a Fact?
Grouping Facts
What Is Granularity?
Design Considerations<br>
slide17. What Is a Fact? Facts are the key metrics used to measure business results:
Sales
Production
Inventory
Can be additive, semi-additive, or non-additive<br>
slide18. Grouping Facts Facts are grouped into fact tables
Related facts should be in the same fact table
Facts with different granularity should be in different tables<br>
slide19. What Is Granularity? Granularity refers to the level of detail in which facts are recorded
Facts can be at different levels of granularity<br>
slide20. Design Considerations Fact tables should have all keys relating to dimensions
Primary key should be composite of all dimension keys
Separate additive, semi-additive, and non-additive facts<br>
slide21. Topic: Fact and Dimension Granularity<br>
slide22. Topic: Fact and Dimension Granularity How to Determine Fact Granularity
Dimension Granularity<br>
slide23. How to Determine Fact Granularity Granularity is determined based on business needs
Should be the lowest level of detail that needs to be examined
If data from transactional systems has more detail than needed for analysis, ETL should aggregate the details<br>
slide24. Dimension Granularity Dimension granularity needs to be matched with fact granularity
Each dimension has its own granularity
Fact tables are keyed to the granularity of the dimensions<br>
slide25. Topic: Conformed and
Non-Conformed Dimensions<br>
slide26. Topic: Conformed and Non-Conformed Dimensions What Are Conformed and Non-Conformed Dimensions?
Shared and Degenerate Dimensions
What Is a Slowly Changing Dimension?<br>
slide27. What Are Conformed and Non-Conformed Dimensions? Conformed dimension
Shared by multiple fact tables
Used when all business users have the same definitions for the dimension
Non-conformed dimension
Dimension table targeted to a single fact table
Used when dimensions have different definitions for different business units<br>
slide28. Creating Conformed and Non-Conformed Dimensions<br>
slide29. Shared and Degenerate Dimensions Shared dimension
Used by multiple facts
Dimension key is stored in the fact table
Dimension value is stored in the dimension table with other attributes of that dimension
Degenerate dimension
Used by a single fact table
Dimension value is stored directly in the fact table
No corresponding dimension table<br>
slide30. What Is a Slowly Changing Dimension? When the historical attribute values are retained if the attributes are updated
Used when the organization does not want to lose track of what actually happened
Example: customer moves from Connecticut to Seattle
Slowly changing dimension types:
Type 1: Attribute history is not retained
Type 2: Attribute change creates a new record
Type 3: Original attribute value recorded and latest value recorded with an effective date<br>
slide31. Implementing a Slowly Changing Dimension<br>
slide32. Topic: Time Dimensions<br>
slide33. Topic: Time Dimensions Types of Time Dimensions
Time Dimensions and Hierarchies<br>
slide34. Types of Time Dimensions Based on standard calendar breakdowns
Year => Month => Day
Year => Quarter => Week => Day
Based on fiscal calendar
Year => Fiscal Quarter => Fiscal Month => Fiscal Week => Day
Time dimension needs to contain all hierarchy elements to the lowest granularity for the fact tables<br>
slide35. Time Dimensions and Hierarchies Establishes the “buckets” that the business uses
Typically there are multiple hierarchies in the dimension
Calendar
Business
Created using Microsoft Excel, scripts, or are auto-generated<br>
slide36. Creating a Time Dimension<br>