Olap4ld - Olap4j Driver Component
From www.b-kaempgen.de
Revision as of 13:17, 23 March 2014 by Benedikt Kämpgen (Talk | contribs)
Contents
Interfaces between olap4j and Linked Data Engine in olap4ld
- Asking a query, schematically:
Metadata queries
Analytical queries
Overview: Current olap4ld transformation pipeline
- MDX (SELECT ... ON COLUMNS .. ON ROWS WHERE)
- MDX Parse Tree
- Initial Logical Query Plan
How to get from MDX to Initial Logical Query Plan
- Parse Tree is created by olap4j.
- Select node
- From Parse Tree to Initial Query Plan:
- A cellset is created and the metadata from the parse tree retrieved.
- cube <= Note, here, metadata queries to the cube and its elements are issued via Olap4ldDatabaseMetadata.executeMetadataRequestOnLdce(), e.g., to identify elements in the MDX query and to resolve functions such as Member().
- COLUMN axis: columnPositions and columnHierarchies
- ROW axis: rowPositions and rowHierarchies
- An Initial Query Plan from the cellset metadata is created
- BaseCubeOp - First, all metadata about the cube is transformed from olap4j metadata to List<Node[]> so that it can be inserted to Base-cube. We could also not have such parameters and have the Base-cube evaluator do that. In my opinion, Base-cube should do more, anyway: Load and validate one single data cube.
- RollupOp - Contains all in MDX mentioned dimensions.
- SliceOp - Contains all not in MDX mentioned dimensions.
- DiceOp
- ProjectionOp
- DrillAcrossOp
- A cellset is created and the metadata from the parse tree retrieved.
- OLAP cellset (cube, filter, hierarchies, positions, column, hierarchies, positions, row, hier, positions...)
- OLAP query
- OLAP query (cube, slicerrollups, dices, projections)
- Initial Logical Query Plan
- cellset Metadata (MetaData cube, filterAxisMetaData with axis and hierarchies, axisMetaData with axis and hierarchies, filter cell set axis with axis and filter positions, cell set axes with axis and positions)