0% found this document useful (0 votes)
4 views

CPSY209 till125

Uploaded by

stephenzhangcpa
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views

CPSY209 till125

Uploaded by

stephenzhangcpa
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 127

Brightspace Teams

LAB ASSIGNMENTS : QUIZZES : 1*20 = 20 THEORY ASSIGNMENTS


2*20 = 40 : 2*20 = 40
Get data
Approve & Plan your BI
Release solution

Test & Tune Set goals

Create Create data


reports mart / DW

Create cubes ETL





Measures
Dimensions
Attributes
Hierarchies







Online analytical processing systems enable users to quickly and
easily retrieve information from data (e.g. a data mart).

OLAP systems present data using measures, dimensions,


hierarchies, and cubes.

Microsoft has 2 tools for implementing OLAP systems: Power BI, and
SSAS.










Relational OLAP (ROLAP)
Multidimensional OLAP
stores the cube in a Hybrid OLAP (HOLAP)
(MOLAP)
multidimensional db.
• Leaf-level measures are left • Copies of leaf-level • Cube structure & aggregates
in the data mart. measures & aggregates are in multi-d db, leaf-level in
• Preprocessed aggregates both stored in multi- relational data mart.
are stored in a relational db dimensional db. • Loading is fast, retrieving
table. • Very efficient, but longer aggregates is fast, no extra
• When values are requested, load times, not always latency on leaf-level, but
the system pulls from the synced, and more disk slightly slower retrieval.
appropriate source. space.
• Stores lots of data & is
always up-to-date but is the
slowest of the 3.
• Includes server name, db name, logon info
Need 1+ data sources • Could point to a data mart or a table in an
OLTP

Data source views


determine which tables & • Allows for additions: e.g. adding new
fields are used, can filter out
unnecessary items, and relationships, or calculated fields.
assign user-friendly names.
Physical vs
Logical
Architecture











We can create new measures that We can also control the
don’t exist in the data mart. aggregation along our dimensions.










Standard Dimensions
• 1+ tables linked back to fact table

Fact Dimensions (AKA Degenerate Dimensions)


• All their attributes are stored on the fact table
• Not measures: additional descriptions, not linked to a dimension
table

Parent/Child Dimensions
• If a table has a self-referential relationship.

Role Playing Dimensions


• A dimension related to the same measure group multiple times (e.g.
time)

Many-to-many Dimensions
• Many-to-many relationships between dimension members &
measure group members
• Can be done directly (both dimension keys on fact table) or indirectly
using an associative entity (AKA bridging table, “factless” fact table)
01 02 03
Type 1 Type 2 Type 3
• The dimension only tracks the • 4 attributes are added: SCD • 2 attributes are added: SCD
state “right now”: no history. Original ID, Start Date, End Start Date, SCD Initial Value
• Changes in data simply Date, and Status. • We don’t know the full history:
overwrite the “old” • We can then use the status & just the current state & the
information. the dates to figure out what original state.
the state was on a given date.
Cubes can look different to Translations allow us to localize
different users: perspectives our data for international
can be created so that a user audiences, allowing metadata
isn’t overwhelmed with to be translated to another
unnecessary info. language.

We can determine
which items are
visible in each
perspective.
Build Compiles individual file into one file in /bin

Moving the project definition to the production server


Deploy AKA Copy the /bin file, containing measures & dimensions, to the server. Note: there are no members
within the dimensions nor facts in the measures yet.

Process Dimensions are populated with their members, measures are populated with facts, and aggregations are
calculated.
The first step in effective When setting long-term goals,
decision making is to set highly summarized data are
specific, measurable goals. needed by decision makers.

KPIs are these highly


They are often presented
summarized measures: meant
graphically: a traffic light or
to quickly relay the status of
gauge.
that measure, at glance.







• ([2012], [North America], [Marketing])




• [DimProduct].[Clothing].[Pants].[Jeans] →

• [DimProduct].[ProductSubcategory].[Jeans] →
Jeans

• DefaultMember
[DimProduct].[All]


• { (tuple1), (tuple2), (tuple3), (tuple4) } →

• ([Jeans]:[Shorts], [2012].[Q1]:[2022].[Q4])→
• SELECT

SELECT

• SELECT
• SELECT

• SELECT


• SELECT FROM [Cube Name]
• DefaultMember

• SELECT { list of members } ON COLUMNS


FROM [Cube Name]
• {list of members} [DimensionName].Members
All

• SELECT { list of members } ON COLUMNS,
{ list of members } ON ROWS
FROM [Cube Name]
• WHERE

• WHERE [Measures].[Total Products]



• WHERE ( [measures dimension
member], [dimension member])
• FILTER ( set, search
condition )

• SELECT FILTER( [Product].Members ,


( [Month].[201512], [Measures].[Number on Backorder]) >
( [Month].[201511], [Measures].[Number on Backorder]))
ON COLUMNS,
[Month].[201512] ON ROWS
FROM [Data Mart name]

NON EMPTY

• SELECT NON EMPTY …


• WITH SET [ name of named set ] AS


{ set definition }

SELECT {[ name of named set ]} ON


COLUMNS
FROM [ name of data mart ]
• WITH

• WITH MEMBER [parent


member].[calculated member name]
AS {definition}

SELECT
• COLUMNS
• ROWS
• PAGES
• SECTIONS
• CHAPTERS


AXIS(n)
• /* this is a multi-line comment */
• -- this is a single line comment
• // this is also a single line comment
• + - * /
• + UNION
• - EXCEPT
• +

• < <= <> = > >=
• AND
• IS
• NOT
• OR
• XOR
[ObjectName].Dimension [ObjectName].Hierarchy [ObjectName].Level
returns the dimension returns the hierarchy that returns the level that an
that an object belongs to. an object belongs to. object belongs to.

IsAncestor(member1, IsEmpty(someExpression)
IsLeaf(member1) returns
member2) is true if returns true if the
true if member1 is the
member1 is an ancestor Expression results in an
lowest level.
of member2. empty cell.

IIF(logical expression,
IsSibling(member1, expr1, expr2) returns
member2) returns true if expr1 if the expression is
the members are siblings. true, and returns expr2
otherwise.

SCOPE

• SCOPE(subcube expression)
[ MDX statement… ]
END SCOPE


1 2 3 4
Collect data & Organize data Sort the data Explore results
load into DW
Association:
• Looking for relationships (e.g. which
products are purchased together)
Classification and Clustering
• Assign object to classes based on
similarities or differences
Decision trees

Regression & predictive analysis


Data Mining in Analysis Services
Software / server updates

Validate backups & monitoring jobs

Anything unexpected logged?


Check server performance
Any failures or outages?

Create a Maintenance Plan for SQL


e.g. backups, integrity checks, statistics
Server Agent to run









Describe key design principles to consider when defining the scope of a
BI project
Describe key design principles to consider when defining the scope of a
BI project
Describe key design principles to consider when defining the scope of a
BI project
Describe key design principles to consider when defining the scope of a
BI project
Describe key design principles to consider when defining the scope of a
BI project
Describe key design principles to consider when defining the scope of a
BI project
Describe key design principles to consider when defining the scope of a
BI project
Describe key design principles to consider when defining the scope of a
BI project
Explain how to identify the business and technical requirements to
ensure that the solution meets the needs of its users.
Steps to Build Good Business Strategy
Explain how to identify the business and technical requirements
to ensure that the solution meets the needs of its users.
Explain how to identify the business and technical requirements to
ensure that the solution meets the needs of its users.
Explain how to identify the business and technical requirements to
ensure that the solution meets the needs of its users.
Explain how to identify the business and technical requirements
to ensure that the solution meets the needs of its users.
Explain how to identify the business and technical requirements
to ensure that the solution meets the needs of its users.
Explain how to identify the business and technical requirements to
ensure that the solution meets the needs of its users.
Explain how to identify the business and technical requirements
to ensure that the solution meets the needs of its users.
Explain how to identify the business and technical requirements to
ensure that the solution meets the needs of its users.
Explain how to identify the business and technical requirements to
ensure that the solution meets the needs of its users.
SSAS Terminology:
Describe design considerations for the relational schema of an OLAP
solution.
Describe design considerations for the relational schema of an OLAP
solution.
Describe design considerations for the relational schema of an OLAP
solution.
Describe design considerations for the relational schema of an OLAP
solution.
Describe design considerations for the relational schema of an OLAP
solution.
Describe design considerations for the relational schema of an OLAP
solution.
Describe design considerations for the relational schema of an OLAP
solution.
Describe design considerations for the relational schema of an OLAP
solution.
Describe considerations for designing and implementing OLAP cubes.

You might also like