mondrian stuff julian hyde - mondrian founder & lead developer 3 rd pentaho community meetup...

14
Mondrian stuff Julian Hyde - Mondrian founder & lead developer 3 rd Pentaho Community meetup Cascais September 25 th 2010

Upload: paul-cross

Post on 12-Jan-2016

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Mondrian stuff Julian Hyde - Mondrian founder & lead developer 3 rd Pentaho Community meetup Cascais September 25 th 2010

Mondrian stuff

Julian Hyde - Mondrian founder & lead developer

3rd Pentaho Community meetupCascaisSeptember 25th 2010

Page 2: Mondrian stuff Julian Hyde - Mondrian founder & lead developer 3 rd Pentaho Community meetup Cascais September 25 th 2010

© 2009 Pentaho Corporation. All Rights Reserved 2

Page 3: Mondrian stuff Julian Hyde - Mondrian founder & lead developer 3 rd Pentaho Community meetup Cascais September 25 th 2010

© 2009 Pentaho Corporation. All Rights Reserved 3

Page 4: Mondrian stuff Julian Hyde - Mondrian founder & lead developer 3 rd Pentaho Community meetup Cascais September 25 th 2010

© 2009 Pentaho Corporation. All Rights Reserved 4

What’s new

Analyzer

Luc Boudreauolap4j 1.0

Mondrian 3.2

Mondrian 3.2.1

Mondrian 4

Page 5: Mondrian stuff Julian Hyde - Mondrian founder & lead developer 3 rd Pentaho Community meetup Cascais September 25 th 2010

© 2009 Pentaho Corporation. All Rights Reserved 5

Pedrinho’s problem

Select [Measures].[Unit Sales] on

0,

[Time].[2010].Children on 1

from [Sales]

where [Time].[2010]

Solution: attribute-oriented MDX:

Select [Measures].[Unit Sales] on

0,

[Time].[Time].[2010].Children

on 1

from [Sales]

where [Time].[Year].[2010]

Schema:

<Cube><Dimension>

<Attribute><Hierarchy>

<Level source=a>

<MeasureGroup><Measure><DimensionLink><AggTable>

Page 6: Mondrian stuff Julian Hyde - Mondrian founder & lead developer 3 rd Pentaho Community meetup Cascais September 25 th 2010

© 2009 Pentaho Corporation. All Rights Reserved 6

Richer Semantic Model

Physical schema:Only define attributes and relationships onceCompound keys

Attribute hierarchies

Hierarchies & attributes grouped into dimensionsE.g. Customers dimension contains Customer hierarchy (State-City-Customer) and Age, Gender, Salary attribute hierarchies

Page 7: Mondrian stuff Julian Hyde - Mondrian founder & lead developer 3 rd Pentaho Community meetup Cascais September 25 th 2010

© 2009 Pentaho Corporation. All Rights Reserved 7

Measure groups

In Mondrian 3.x, if you want a cube with multiple fact tables, you

build a virtual cube:<Cube name=“Sales”> <Table name=“sales_fact”/></Cube>

<Cube name=“Warehouse”> <Table name=“warehouse_fact”/></Cube>

<VirtualCube name=“Warehouse and Sales”> <Cube name=“Sales”/> <Cube name=“Warehouse”/></VirtualCube>

Page 8: Mondrian stuff Julian Hyde - Mondrian founder & lead developer 3 rd Pentaho Community meetup Cascais September 25 th 2010

© 2009 Pentaho Corporation. All Rights Reserved 8

Measure groups (2)

In Mondrian 4, cubes can contain multiple measure groups:<Cube name=“Warehouse and Sales”> <MeasureGroups> <MeasureGroup name=“Sales”> <Table name=“sales_fact”/> <Measure name=“unit_sales”/> </MeasureGroup> <MeasureGroup name=“Warehouse”> <Table name=“warehousee_fact”/> <Measure name=“inventory_units”/> </MeasureGroup> </MeasureGroups></Cube>

Virtual cubes are obsolete

(but still supported)

Many-to-many association between

measure groups and dimensions

Different ways to link dimensions to

fact tables

Sales Warehous

e

Time X X

Product X X

Customer X

Warehous

e

X

Page 9: Mondrian stuff Julian Hyde - Mondrian founder & lead developer 3 rd Pentaho Community meetup Cascais September 25 th 2010

© 2009 Pentaho Corporation. All Rights Reserved 9

Physical schema

<Schema><PhysicalSchema>

<Table><Column><CalculatedColumn><Key>

<Link><Cube>

<Dimension><Attribute><Hierarchy>

» <Level><MeasureGroup>

<Measure><DimensionLink><AggTable>

Page 10: Mondrian stuff Julian Hyde - Mondrian founder & lead developer 3 rd Pentaho Community meetup Cascais September 25 th 2010

© 2009 Pentaho Corporation. All Rights Reserved 10

Schema validation

Mondrian 3 validation sucks

In mondrian 4, can validate at runtime or design time

Generate multiple warnings, errors

Each error has a locationWorkbench should navigate to each error

Better validation in EE (!)

Page 11: Mondrian stuff Julian Hyde - Mondrian founder & lead developer 3 rd Pentaho Community meetup Cascais September 25 th 2010

© 2009 Pentaho Corporation. All Rights Reserved 11

Transition to mondrian 4.0

Not easy…

Backwards compatible

Workbench functionality:Upgrade workbenchOR… extend agile BIOR… extend metadata editorOR…

Community can help!

Page 12: Mondrian stuff Julian Hyde - Mondrian founder & lead developer 3 rd Pentaho Community meetup Cascais September 25 th 2010

© 2009 Pentaho Corporation. All Rights Reserved 12

Mondrian 4.0 summary

Attribute-oriented analysis

Physical model

Composite keys

Multiple fact tablesVirtual cubes obsolete

Better validation

Clean up of internals:Make aggregate tables look like fact tablesUnify native SQL optimization, aggregate table usage, fact table selection

Transition will be hard… but worth it

Page 13: Mondrian stuff Julian Hyde - Mondrian founder & lead developer 3 rd Pentaho Community meetup Cascais September 25 th 2010

© 2009 Pentaho Corporation. All Rights Reserved 13

Questions?

Page 14: Mondrian stuff Julian Hyde - Mondrian founder & lead developer 3 rd Pentaho Community meetup Cascais September 25 th 2010

© 2009 Pentaho Corporation. All Rights Reserved 14

Thank you for attending!