Projects:Mondrian Saiku Upgrade/Specs
Contents |
Functional Requirements
The main functional requirement for this project is to keep the Analytics module working as in previous version, no new features will be added, apart from those which come by default with the Mondrian and Saiku upgrades themselves.
Together with this, there is a set of Openbravo modules based on Analytics, which will require to be updated also, in order to support the changes introduced within this upgrade:
- Multi-Dimensional Financial Reports Infrastructure
- Multi-Dimensional Profit And Loss Report
- Multi-Dimensional Balance Report
- Multi-Dimensional Trial Balance Report
- Retail Analytics
Technical Specs
Upgrade core libraries
As a previous step, there are a couple of libraries included in the core of Openbravo which must be upgraded also, in order to support the new Analytics engine:
- Apache FOP library from version 1.0 to version 1.1. See issue: https://issues.openbravo.com/view.php?id=32110
- Jackson libraries from version 2.1.4 to version 2.5.1. See issue: https://issues.openbravo.com/view.php?id=32149
Mondrian
Mondrian is an open source Online Analytical Processing server (OLAP) written in Java. It is able to execute queries written in the MDX language, reading data from a relational database, and presents the results in a multi-dimensional format via Java API.
Mondrian makes use of an schema in order to define a multi-dimensional database. This schema contains two models:
- A logical model consisting of the constructs used to write queries in MDX language: cubes, dimensions, hierarchies, levels and members.
- A physical model which is the source of the data which is presented through the logical model. Typically is a set of tables in a relational database.
In Openbravo Analytics we create this schema by taking the information from the Application Dictionary and generating an XML definition which describes it.
In this project we are upgrading Mondrian to its version 4.3.0.1 which implies a new way of generating the XML schema: Mondrian 4 Schema. So appart from the upgrade itself, the main effort in this part will be to adapt the generation of the cubes done in Analytics to this new schema definition.
Saiku
Saiku is a modular analysis suite offering lightweight OLAP which remains easily extendable and configurable. With the Analytics module, it is embedded in Openbravo and used as the user interface to communicate and display the results provided by Mondrian.
With this project we are upgrading Saiku to version 3.7.4.