Amazing. Every single release is the same. I know months in advance what the release date is. And every-single-f'in-time I'm always able to somehow mess up the dates and end up with one of those "what do you mean it's tomorrow??" situations....

Oh well. It's done. And I need to sleep.

Anyway. This is, by far, the best release so far! This blog post only touches the overview, but there are absolutely amazing details that I'll focus on later

Pentaho 6.1 (EE and CE) is available

You can get it from the usual places:

Here are some of the main changes:

Data Services improvements

On to my favorite topic - Data services. As I mentioned before, with data services we can expose any point of our transformation as a virtual / umaterialized table that can be accessed from the outside through a jdbc interface.

This will be key to us going forward, and we're improving on this topic
Data services with auto-modeling & Analyzer (EE)

Build model - Data services edition

You can use a Pentaho Data Service as the source in your Build Model job entry, which streamlines the ability to generate data models when you are working with virtual tables. Logical Data Warehouse - I salute you! Insanely powerful stuff.
Parameter push down optimization (CE/EE)

Parameter push down optimization
Data services supported 2 types of optimizations as of 6.0:

  • Cache optimization
  • Query pushdown, that allowed passing parameters down to a table or mongodb input

The query push down optimization, while insanely useful, has an obvious drawback: what if we're not using a sql or mongo query?

The parameter push down optimization aims to complement that drawback; When you do a data service query of the type "where country='Portugal'" you can say that you want the country value to be mapped to a COUNTRY_QUERY parameter; While this doesn't work for all the queries (it's limited to the equal operation, doesn't work for ranges or in lists), it can be used in tons of different use cases. The screenshot above applies this optimization to a rest call, a situation where the format option proves being particularly useful.

You can see the (amazing!) documentation on data services optimizations here

Simplified JDBC driver download (EE/CE)

Simplified driver download
You're going to hear us talking a lot about usability going forward, and this follows that theme. It's now very easy to get not only the details for how to use the data services jdbc driver, but also to get the driver as well.

Download the driver, configure the client, drop the jars and you're done!

Execute transformation/job dialog improvements (EE/CE)

Run options

Still on spoon, still on usability; We refreshed the execute transformation / job run dialog. You'll notice the difference

JSON step improvements (EE/CE)

Did you ever need to parse json in PDI? Most like yes. And most likely you felt the performance was, hum... sub-optimal, to say the least.

Well, not anymore. And the credits to this go entirely to our Community friends at Graphiq. They submitted a Fast JSON Input step to the Pentaho Marketplace and we worked with them to incorporate that into the main product.

The result? See for yourself:

JSON step results
Yep - you're looking at - at least - a 10x + improvement. This is huge. Etienne, Jesse and Nicholas, we we have the chance to meet in person the beer is on me! :)
Analyzer Inline modeling improvements (EE)

We're improving the ability for the end user (that has the appropriate permissions) to do global changes on the available models for the business users. Two new features are available in 6.1
Edit Calculated Measures in Analyzer (EE)

Applying calculated measure to the model

You can now update the properties on a calculated measure created via inline model editing within Analyzer, such as if you want to rename the measure or adjust the MDX formula on the calculation. Also, you can now easily identify calculated measures in the Available fields list by the icon, 'f(x)', which only displays next to calculated measures created in Analyzer via inline model editing.
Show and Hide Available Fields (EE)

Show / hide fields

You can select to hide or show fields in the list of Available fields for a report in Analyzer. Hiding fields is helpful when you want a clear view of only those fields you are interested in for your report. When you hide a field, it is no longer available for selection in the report.

Official CTools documentation

Ah! I promised this in my Pentaho World presentation last year and we delivered it (me keeping up to my promises doesn't actually happen often :p).

We already supported CTools; But this is a very important checkpoint; It's now part of the official documentation!
CTools documentation in

You can now learn the basics of the Community Dashboard Editor (CDE) with the CDE Quick Start Guide and its companion articles:

Metadata Injection (CE)

Oh, you're going to hear a lot about this. Power users know it already.

I won't dive into this in many detail because: 1) I'm hungry and it's lunch time and 2) Jens did an amazing job doing that in his blog post.

Metadata Injection (MDI) gives you the ability to modify transformations at execution time. It refers to the dynamic passing of metadata to PDI transformations at run time in order to control complex data integration logic. The metadata (from the data source, a user defined file, or an end user request) can be injected on the fly into a transformation template, providing the “instructions” to generate actual
Metadata Injection principles
What did we do in this release (and will continue doing going forward)? We added to the list of supported steps. This is how things look currently:

List of MDI enabled steps
But like I said - Just go read Jens' blog. It's his baby
Enable community testing of new platform infrastructure (CE)

I saved the best of last. If MDI is Jens' baby... this is my baby. And my baby is prettier than his! :p

This is something that I'll have to dedicate a blog post later. I'll just ask you to do the following, if you're a CE user (EE users will also be able to enable this):

  1. Run the BA server
  2. Open PDI
  3. Create a new repository connection - but point it to your BA server instead of a DI server...
  4. Connect to it
  5. Take a look at the repository explorer. Give yourself a moment to understand what you're looking at
  6. Yep - you're starting to understand.... Hell yeah! ;)

Have fun!