Creating Interactive OLAP Applications With MySQL Enterprise and Mondrian
Creating Interactive OLAP Applications With MySQL Enterprise and Mondrian
Pentaho Introduction
Mondrian features and architecture
Schemas and queries
olap4j
Roadmap
Case Studies
Business Intelligence suite
Q&A
Pentaho Introduction
World’s most popular enterprise open source BI Suite
2 million lifetime downloads, averaging 100K / month
Founded in 2004: Pioneer in professional open source BI
JDBC
JNDI
RDBMS RDBMS
<mondrian/jpivot demonstration>
Schemas and queries
A Mondrian schema consists of…
Refer to http://mondrian.pentaho.org/documentation/schema.php )
Tools
Schema
Workbench
Pentaho cube
designer
cmdrunner
MDX – Multi-Dimensional Expressions
(Refer to http://mondrian.pentaho.org/documentation/mdx.php )
olap4j
OLAP APIs
Common API
Backed by:
Companies: Jedox, JasperSoft, Loyalty Matrix, LucidEra, Pentaho,
Tensegrity, Tonbeller AG
Projects: Halogen, JPivot, JRubik, Mondrian, OpenI, PALO
Community at SourceForge.net
olap4j connecting to mondrian in-process
import org.olap4j.*;
Class.forName("mondrian.olap4j.Driver");
OlapConnection connection =
DriverManager.createConnection(
"jdbc:mondrian:Jdbc=jdbc:mysql://localhost/foodmart;" +
"JdbcUser=foodmart;JdbcPassword=foodmart;" +
"Catalog=/WEB-INF/queries/FoodMart.xml;" +
"Role='California manager'");
OlapConnection olapConnection =
connection.unwrap(OlapConnection.class);
OlapStatement statement =
olapConnection.createOlapStatement();
OlapResult result =
statement.execute(
"SELECT {[Measures].[Unit Sales]} ON COLUMNS,\n" +
" {[Product].Members} ON ROWS\n" +
"FROM [Sales]");
olap4j connecting to SQL Server Analysis
Services via XMLA
import org.olap4j.*;
Class.forName("org.olap4j.driver.xmla.XmlaOlap4jDriver");
OlapConnection connection =
DriverManager.createConnection(
"jdbc:xmla:Server=http://marmalade/xmla/msxisapi.dll;" +
"Catalog=FoodMart;" +
"Role='California manager'");
OlapConnection olapConnection =
connection.unwrap(OlapConnection.class);
OlapStatement statement =
olapConnection.createOlapStatement();
OlapResult result =
statement.execute(
"SELECT {[Measures].[Unit Sales]} ON COLUMNS,\n" +
" {[Product].Members} ON ROWS\n" +
"FROM [Sales]");
Web client #2
olap4j
Web client #1
Pure HTML AJAX client
web in web
Client:
Application server
In-process
Mondrian
In-process AJAX
XML/A JPivot
XMLA servlet
client server
HTML
olap4j
AJAX
olap4j driver
for Mondrian
Server: olap4j driver
for XML/A
Other olap4j
driver
Mondrian
(in-process)
Mondrian in-process
Mondrian via XMLA
Microsoft SSAS via
XMLA
Other OLAP server via
Mondrian
XMLA XML/A servlet
Microsoft SQL
Server Other XML/A
Analysis Server
Other OLAP server via Mondrian
Services
driver
olap4 components
Metadata
Driver
Driver Cube Level Property
Metadata
Session
MDX Connection MDX
MDX parser
Transform & Query
Transform
MDX object
layout model
Sort/Rank
Result set
Slice/Dice
Layout
Expand/
Collapse
Grid layout Chart layout
olap4j/mondrian roadmap
olap4j API
Rollup policy
Aggregate roles
Allow distinct-count measures to be aggregated
Improve dimension sharing
JNDI in connect string
Over 90 new MDX functions
Halogen
“Pentaho Customer Support has been Providing analytics for billing and
operations supporting 500,000 patients
exceptional. This is a strategic and 600 doctors
application at LLUHC, and working Pentaho Solution
with Pentaho has accelerated our Pentaho Analysis Subscription
deployment and improved our overall Selected over Business Objects and
application delivery.” Cognos
Microsoft Windows Server with SQL Server
Integrated with LDAP and Active Directory
Results
Comprehensive analysis of time periods,
services provided, billing groups,
physicians
Centralized, secured, consistent
information delivery (versus prior Excel-
based system)
Ability to drill and analyze down to the
individual patient level
Why Pentaho
Open standards support and ease of
The big picture
Business Intelligence Suite
Mondrian OLAP
Analysis tools:
Pivot table
Charting
Dashboards
ETL (extract/transform/load)
Integration with operational reporting
Integration with data mining
Actions on operational data
Design/tuning tools
Pentaho Open Source BI Offerings
“Pentaho provided a robust, open “We selected Pentaho for its ease-of-
source platform for our sales reporting use. Pentaho addressed many of our
application, and the ongoing support requirements -- from reporting and
we needed. The experts at OpenBI analysis to dashboards, OLAP and ETL,
provided outstanding services and and offered our business users the
training, and allowed us to deploy and Excel-based access that they wanted.”
start generating results very quickly.”
Next Steps and Resources
Contact Information
Julian Hyde, Chief Architect, [email protected]