Archive for the 'mondrian' Category

Agile BI Milestone 1 is now available

We’ve been working hard at Pentaho to deliver the first milestone of Agile BI.  A little over a month ago, James Dixon, our CTO, presented to the community the initial concept, which includes integrating dimensional modeling and visualization within Spoon, our ETL environment.  Since that time, James and the engineering team at Pentaho have been sprinting towards this release, making the source code available in the open, along with adding additional capabilities including the ability to persist models and visualizations.

You can download the first milestone and begin experimenting with the beginnings of what we are considering phase 1 of the Agile BI initiative, which includes the ability to quickly model and visualize a single fact table metadata and olap model.  Feedback is always welcome, check out the Agile BI forum for more discussion.

More than just Analyzer

There has been a lot of buzz recently about Pentaho’s acquisition of LucidEra’s ClearView technology, now known as Pentaho Analyzer Enterprise Edition, including this detailed writeup by Julian Hyde. But one
important aspect of this acquisition that has gone unmentioned, which I am most excited about, is the addition of Benny Chow to the Pentaho engineering team.

At LucidEra, Benny was the Director of Engineering and was responsible for the development of ClearView. In his short time here at Pentaho, he’s already had a great impact on our engineering efforts especially with the integration work necessary to make Analyzer an integral part of Pentaho’s User Console. Let me be the first to publicly welcome Benny to the Pentaho team!

Aggregate Table Naming in Aggregation Designer

This week, Nick Goodman and I worked together on Aggregation Designer’s approach to naming aggregate tables and their columns.    The team’s initial approach to table naming was to use Mondrian’s AggName convention, where you must explicitly define aggregate tables in Mondrian’s schema.  Our decision was made to guarantee that the tables would be recognized.

After working with Agg Designer in the wild, Nick created PAD-22, a feature request asking for a change in naming aggregate tables to match Mondrian’s default recognition rules.

When developing Agg Designer originally, we used Spring, which makes this type of change very easy to implement and configure.  To implement this change, we first started off by implementing an AggregateNamingService thatnames the tables to match Mondrian’s default pattern, agg_.+_${fact_table_name}.  We then implemented an OutputFactory which generates the appropriate names for the Aggregate Table columns.  These classes are now checked in to the core and ui projects, named RuleBasedAggregateTableOutputFactory and RuleBasedAggregateNamingServiceImpl.  To configure Agg Designer to use these classes, simply modify the Spring applicationContext.xml and the plugin.xml files.

I’ve provided compiled versions of these classes and instructions in the feature request, until we release a new version of Pentaho Aggregation Designer.  Thanks Nick for the help, hopefully this will make it easier to use the Aggregation Designer to increase Mondrian performance!

log4j, Mondrian MDX and SQL Logging

I’ve always struggled to get log4j working perfectly within the Pentaho BI Platform.  Before the release of JBoss 4.2.1, there was a log4j.xml conflict between JBoss’s config and regular web applications.  Now that Pentaho 1.7 PCI by default runs in JBoss 4.2.1, we finally have a hastle free way to manage logging.

We can now manage all of Pentaho’s logging within the pentaho war’s WEB-INF/classes/log4j.xml file.  Another reason why this is important to note is that Mondrian’s SQL and MDX logging, something we’re always taking a look at, moved from a Mondrian debug property to a log4j category in Mondrian 3.0.  To get MDX and SQL logging out of Mondrian:

Add two new categories to the log4j.xml file:

<category name="mondrian.sql">
<priority value="DEBUG"/>
</category>

<category name="mondrian.mdx">
<priority value="DEBUG"/>
</category>

Also, you’ll want to remove the explicit Threshold element from within the appenders.  When a Threshold is defined in an Appender, it overrides the individual category thresholds.  log4j is a powerful logging tool, but sometimes it can be difficult to configure.

MySQL Conference Highlights

I just got back from spending the week in Santa Clara, California at the MySQL Conference. I really enjoyed spreading the word about Open Source Business Intelligence. Many folks attending the conference were new to Business Intelligence and Pentaho, so I enjoyed demoing our products, showing off Adhoc Querying with Metadata and building Transformations with Kettle.

I was very impressed with Marten Mickos and Jonathan Schwartz’s keynotes. Both focused on the value and benefits of Open Source technology. Marten celebrated the MySQL community by recognizing some of the top community contributors of MySQL, and Jonathan discussed the big picture of how Sun powered by Open Source can change the world.

Other great highlights included Lance Walter giving a talk on Operational Business Intelligence, and Julian Hyde discussing Interactive OLAP, which included a demo of Halogen. To cap off the week, I visited my good friend Dan Morrill at the Googleplex and got a tour of their wonderfully creative environment, including pin ball machines and space ships!

Sprinting At Pentaho - Mondrian Platform Sprint

For the past couple of months, Pentaho’s Orlando developers have been using the Scrum methodology for managing our projects.  For the past two weeks, I’ve been working part time on the Mondrian Platform Sprint.  We’re delivering some exciting new features into open source.  The first story we’re tackling is the ability to create new analysis views within Pentaho’s BI Platform.  What I’ve enjoyed most about this story is working closely with Mat Lowery and Nick Baker.  We’re all working together on the various components, and things are coming together nicely.

The second story we’re delivering on this sprint is the ability to publish Mondrian Schemas to the BI Platform from Mondrian’s Schema Workbench.  I’ve taken the publishing dialog source code from Pentaho’s Report Designer and bended it to fit within the Workbench.  It’s been a while since I’ve had the pleasure of writing Swing UI code, I’m enjoying every minute.

Both of these stories will make Mondrian more usable within Pentaho’s BI Platform.  What is great about sprinting is that we know we’re focused on high priority items that make our products easier to use.