Hitachi Vantara Pentaho Community Forums
Results 1 to 8 of 8

Thread: Publish Cube from Metadata Editor

  1. #1

    Default Publish Cube from Metadata Editor

    Hello All,
    We have created a cube using the Pentaho Metadata Editor and used the "Publish to Server" option. But when we checked the Pentaho Analyzer Report , the cube was not being displayed there.

    Any suggestions in this regard would be helpful.

    Thank You.


  2. #2
    Join Date
    Jan 2006


    What are the contents of your pentaho\biserver-ce\pentaho-solutions\system\olap\datasources.xml file?


  3. #3
    Join Date
    Jul 2009



    Cubes and dimensions are defined in Schema Workbench, not Metadata Editor, which is a separate tool for Ad-hoc Reporting. If you did use Schema Workbench, then mikegreen's advice to look at the datasources.xml file is your next step. If you are using Analyzer, then you must be using Enterprise Edition, so his "biserver-ce" in the path is really "biserver-ee" for you.

    The datasources.xml file is where you tell Pentaho to find Mondrian schemas, so publishing the new schema isn't quite enough to get started.


  4. #4


    The requirement that we have is to implement the cube as part of the Pentaho Metadata, such that the reference of the cube remains as part of the XMI file. As the Metadata editor does have an OLAP feature to design cubes, we used that to implement the cube but were not able to view the cube in the Analyzer Report after publishing to the bi-server. We did use Schema workbench earlier and were able to successfully publish the cube and build a report using the Analyzer Report. This is an alternative approach (using the Metadata editor) we are trying. Any further suggestions or help in this regard will be useful.

    Thank you.

  5. #5
    Join Date
    Jul 2009


    I know that you can specify columns as "Dimensions" or "Facts" in the Metadata Editor, but that just tells Pentaho how to build the queries that are sent directly to the relational database. Mondrian does not participate in the query execution for XMI files.

    When you create a Mondrian schema with Schema Workbench and publish it, and use it with Analyzer, it's different. Analyzer sends MDX queries to Mondrian, which then translates those MDX queries into SQL queries on the relational database. Mondrian takes the results from the database and uses them to populate the Mondrian cache, and Mondrian uses its cache to answer the MDX query from Analyzer.

    So Metadata XMI queries go directly to the relational database, while Analyzer reports use Mondrian between them and the relational database. These are two different architectures (as far as I know).

  6. #6


    Hi Rob,
    Thanks for this. This information is very useful. So as I understand that :

    1.) There is no way to modify the Pentaho Analysis cubes to use Pentaho Metadata security model which was earlier applied to to the business tables.

    A Question over here is :

    1.) How do we encapsulate the physical tables of the database from the cubes developed using schema workbench (Indirectly, how do we apply metadata security model to the mondrian cubes.)

    Thank You.

  7. #7
    Join Date
    Jul 2009


    You are correct that Metadata Editor security on an XMI file is different than Mondrian security on a Mondrian schema. There are ways to do each, but you have to do them separately. It sounds like you have already applied security to your XMI file in the Metadata Editor, so I'll just talk about Mondrian.

    Mondrian schemas are secured through "Roles." When a user executes an MDX query, Mondrian checks the schema to see if there is any role-based security there, i.e. <Role> tags in the XML schema file. If there are Roles defined, then Mondrian sees which Roles the user has, and applies those security rules to filter the results. This page describes how it works:

    In a Pentaho User Console environment, there are three choices for defining how you tell Mondrian what a user's Mondrian Roles should be, and you make that choice in the pentahoObjects.spring.xml file.

    One choice is to use Pentaho roles, so for example, if a user joe has a Pentaho role Admin, then Mondrian is told that joe has a Mondrian role called Admin.

    The second choice is to map Pentaho roles to Mondrian roles. So if joe has Admin, but you are mapping roles, and you say that Admin maps to BigKahuna, then joe will have BigKahuna as his Mondrian role.

    The third choice is to use a session variable for the Mondrian role list, so you can set the roles in the variable with an action sequence, probably when the user logs in, and then when the user executes a Mondrian MDX query, Mondrian will get the roles from the variable.

    We have been using the session variable method, but I will change to the first method, because I found that Pentaho doesn't execute any login-related action sequences when a report runs on a schedule, so I don't get my roles. However, when I use the first choice and assign Pentaho roles to Mondrian roles directly, it works for us.

  8. #8


    Thank You Rob for the information. It has been very useful.

    mondrian newbie

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
Privacy Policy | Legal Notices | Safe Harbor Privacy Policy

Copyright © 2005 - 2019 Hitachi Vantara Corporation. All Rights Reserved.