CPSY209 till125
CPSY209 till125
•
•
•
•
•
Measures
Dimensions
Attributes
Hierarchies
•
•
•
•
•
•
•
•
•
•
•
•
Online analytical processing systems enable users to quickly and
easily retrieve information from data (e.g. a data mart).
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
•
•
•
•
•
•
•
•
•
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
Parent/Child Dimensions
• If a table has a self-referential relationship.
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
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.
•
•
•
•
• [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
•
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
•
•
•
•
•
•
•
•
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.