June 12, 2012

QlikTech acquired ETL-vendor Expressor: first impressions

Today QlikTech announced that they acquire Expressor -- an ETL-tool producer which introduced extension for connecting to QlikView files a few months ago. What does it mean and how does it work?

First, I'd like to congratulate QlikTech with extremely smart move -- acquiring a decent ETL tool was a long-anticipated step and finally it happened. Expressor itself is nothing extraordinary -- there're probably a dozen of similar tools on the market, but the point is not in Expressor itself -- QlikView long time was missing more visual, reusable and semantic way of performing ETL. Script-based ETL was one of major complaints of new users.

This acquisition also positions QlikView one level higher and closer to large enterprise market, however not very significantly -- big companies already possess enterprise ETL platforms like Informatica, Ab Initio, IBM Information Server (aka DataStage) so they would better prefer to have integration of QlikView with these tools rather than having one more. But at least they feel more comfortable dealing with "normal" visual ETL than writing loading scripts in proprietary language.

Now, let's talk about Expressor and how it works with QlikView.

Expressor is rather typical ETL tool with classic approach -- graph-like representation of ETL procedures where nodes are operators and links are data flows, drag-n-drop field mappings, etc. However, I liked 2 things about Expressor:

  • It looks like it compiles ETL jobs into binary code, which is very good from performance standpoint (this is similar to major ETL platforms mentioned above)
  • It's scripting language (Datascript) is an extension from Lua -- very popular and well-documented open-source scripting language, which is better than proprietary languages
Currently QlikView files are not "native" data sources for Expressor -- instead there is an "QlikView Extension" which adds Read QlikView and Write QlikView operators.However, we can expect that this will change soon.

The extension allows the following:
  • Extract field metadata (names, types) from QVW, QVD and QVX files, which can be used for mappings
  • Read data from QVX files
  • Write data into QVX files

As you see, neither QVW nor QVD are not currently supported as data source. They can only be used for extracting metadata. When I tried to load a QVD in Expressor it failed with error message "Qvd header was found instead of Qvx header". That leaves an open question --  will QlikTech add support for QVD files which are so popular among QlikView developers because of fast loading or they will stick to QVX only which have reputation of slow one?

Also current level of error-logging is not developer-friendly now. If something fails one should examine poorly readable extension logs. Hope this will change as QlikView migrate into Expressor's standard data sources list.

And the final remark -- Expressor Studio will be renamed to QlikView Expressor Desktop and will be available for free, including support for QlikView data sources. Free QlikView Personal Edition + free Expressor Desktop -- not bad combination for departments and small businesses, right?