olap – creating cubes with sql server analysis services
DESCRIPTION
What is a Cube? Steps in Creating a Cube Demo: Creating a Cube Cube Issues Hands on LabTRANSCRIPT
SQL Server 2008 for Business Intelligence UTS Short Course
Step to the next level!
From Microsoft and the founders of Scrum (Ken Schwaber)
Innovative
For developers
Learn
Modern engineering practices
Visual Studio 2010 and Team Foundation Server
Scrum framework
Assessments and certifications are available
Find a local class
http://go.microsoft.com/fwlink/?LinkId=187778
Specializes in
C# and .NET (Java not anymore)
Testing Automated tests
Agile, Scrum Certified Scrum Trainer
Technology aficionado • Silverlight
• ASP.NET
• Windows Forms
Peter Gfader
Course Timetable & Materials
http://www.ssw.com.au/ssw/Events/2010UTSSQL/
Resources
http://sharepoint.ssw.com.au/Training/UTSSQL/
Course Website
Course Overview
Session Date Time Topic
1 Tuesday
14-09-2010 18:00 - 21:00 SSIS and Creating a Data Warehouse
2 Tuesday
21-09-2010
18:00 -
21:00 OLAP – Creating Cubes and Cube Issues
3 Tuesday
28-09-2010 18:00 - 21:00 Reporting Services
4 Tuesday
05-10-2010 18:00 - 21:00 Alternative Cube Browsers
5 Tuesday
12-10-2010 18:00 - 21:00 Data Mining
Business Intelligence
Data Warehouse
Measure (Facts)
Dimension
ETL
SSIS
Last week
What is a "TYPE"?
Why?
DWCreateScript.sql:
What does the stored procedure "procDimDateInsert" do?
What is the difference
TRUNCATE
DELETE FROM?
SSIS: What for is the Sequence Container?
Homework
Cubes
1. What is a Cube?
2. Steps in Creating a Cube
3. Demo: Creating a Cube
4. Cube Issues
5. Hands on Lab
Session 2: Tonight’s Agenda
Cubes
Data structure for fast analysis of data
Precalculated
On top of a data warehouse
Manipulating and analysing data
from multiple perspectives
Cube
Performance
Relational databases not suited for instantaneous analysis
Cube precalculates (aggregates) data
Why a cube?
Cube Concept
Product
Geog
Time Q1 Q2 Q3 Q4
Clothing
Electronics
Groceries
Garden
Automotive
North
South
East
West
Edges are Dimensions
West
East
South
North
North
Q4
Groceries
„Import“ cube example
Sum over Packages
Max over Last
Aggregate measures over time dimension
Attribute hierarchy
Aggregate measures by multi dimensions
Packages Last
All
Sources Eastern
Hemisphere
Western
Hemisph.
All
Sources Eastern
Hemisph.
Western
Hemisph.
All
Time 25110 6547 18563 Dec-29-99 Dec-22-99 Dec-29-99
1st
half 11173 2977 8196 Jun-28-99 Jun-20-99 Jun-28-99
1st
quarter 5108 1452 3656 Mar-30-99 Mar-19-99 Mar-30-99
2nd
quarter 6065 1525 4540 Jun-28-99 Jun-20-99 Jun-28-99
.
.
.
.
Performance
Relational databases not suited for instantaneous analysis
Cube precalculates (aggregates) data
KPI and trending
Why a cube?
A cube is an
“aggregation of measures
against dimensions”
Adventure Works example
What is a Cube - Example
What is a Cube - Example
1. Data Source
Where the data comes from • Adventure works connection string
2. Data Source View
The tables and how they link together • Orders, Details, Products and relationships • Name matching to detect relationships
3. Dimensions
How we break up the aggregate data • Products, Time
4. Measures (Facts)
The aggregate data • Line Total, Quantity
What is a Cube in SQL 2005/2008
1. Define Data Source
2. Create Data Source View
3. Define Dimensions
4. Define Measures (Facts)
5. Process the Cube
Steps in Creating a Cube
Data Source - Database
Data Source - Impersonation (Authentication)
Data Source View – Data Source
Data Source View – Connect Tables (Name
Matching)
Data Source View – Select Tables and Views
Manually adjust relationships missed by the wizard
Data Source View
Build a Cube – Build Method
Build a Cube – Select a Data Source View
Build a Cube – Select Measures
Build a Cube – Select Dimension
Build a Cube - Select Time Periods
Build a Cube – Process Cube
Build a Cube – Process Cube
Review Auto Generated Cube
Check Hierarchies e.g. Product Category shows ID rather than
name
Build a Cube
Build a Cube – Fix Dimensions
Keeping things Related Dimensions should tie in to Fact tables Use Primary Keys
Keeping things Relevant Multiple fact tables Even more dimensions
Keeping things Fresh Needs to be processed Automated SSIS Packages
Keeping Missing Data Fails to process when keys are missing Change missing keys to Unknown
Cube Issues
That's a Cube!
1. What is a Cube?
2. Steps in Creating a Cube
3. Demo: Creating a Cube
4. Cube Issues
5. Hands on Lab
Summary
What is the difference between
• (local)
• localhost
• .
http://weblogs.asp.net/jgalloway/archive/2005/12/02/432062.aspx
Shared memory comes always first on local machine
http://msdn.microsoft.com/en-us/library/ms187662.aspx
Connectionstring
(local) vs localhost vs .
http://channel9.msdn.com/tags/Data+Warehousing/
http://channel9.msdn.com/tags/Business+Intelligence/
http://blog.sqlauthority.com/2007/07/29/sql-server-data-
warehousing-interview-questions-and-answers-complete-list-
download/
Tips
SSIS Junkie
http://sqlblog.com/blogs/jamie_thomson
Microsoft SQL Server Integration Services ON-DEMAND
WEBCASTS
http://www.microsoft.com/events/series/bi.aspx?tab=webcasts
&id=42664
Great blog about SSIS
http://www.sqlis.com/sqlis/
SSIS resources
Newsletter
http://www.sqlservercentral.com/
BIDS helper
http://www.codeplex.com/bidshelper
Resources
Step to the next level!
From Microsoft and the founders of Scrum (Ken Schwaber)
Innovative
For developers
Learn
Modern engineering practices
Visual Studio 2010 and Team Foundation Server
Scrum framework
Assessments and certifications are available
Find a local class
http://go.microsoft.com/fwlink/?LinkId=187778
Thank You!
Gateway Court Suite 10
81 - 91 Military Road
Neutral Bay, Sydney NSW 2089
AUSTRALIA
ABN: 21 069 371 900
Phone: + 61 2 9953 3000
Fax: + 61 2 9953 3105
www.ssw.com.au