Becoming a BIDeveloper
Different end users with different expectations
Reports and clarity versus proper normalization
Transaction speed is not a core requirement
Preprocessing of data to store aggregates for ease of reporting tools to leverage
Types of Objects
FactTable
◦ Stores the data that measures tied to dimensional keys
◦ Count, Sum, Invoice Total
Dimensions
◦ Stores the attributes that describe the fact table records
◦ Time, Product, Customer, Location
Aggregate tables
Views
Functions and code reuse
◦ First day of the Month
◦ Last day of the month
◦ Active Customer
Types of Dimensions
Type1
◦ Overwrites the old data in the dimension table with the new data
Type 2
◦ SCD type 2 stores the entire history the data in the dimension table. Three different ways to store the
data:
◦ Versioning
◦ Flagging
◦ Effective Date
Type 3
◦ The current status and previous status of the row is maintained in the table
12.
Designing for ReportingTools
How does each tool consume data?
What is the best way to stage the data for the tool to leverage?
Always refer to best practices when starting.
SSRS
Powerview
Tableau
13.
Reporting Speeds
Know theaudience
How often will they view the report?
Are you emailing the report versus online viewing?
How fast should a report run?
◦ It Depends
◦ Dashboards – as fast a possible
◦ Summary Reports - minutes
◦ Detail Operational Reports – minutes/hours
◦ Cubes – as fast as possible