EzDevInfo.com

Mondrian

A static php code analysis tool using the Graph Theory Mondrian by Trismegiste

Connecting to Database Cube that uses MySQL database from PHP (using JDBC)

My database team has set up a database Cube using MySQL database. I need to connect to this Cube from PHP and get the data using MDX queries.

I can't find how to do that. Could someone please help me with this ASAP?

Reference document :- Creating Interactive OLAPApplications with MySQLEnterprise and Mondrian


Source: (StackOverflow)

Cannot find a handle to Mondrian's CacheControl

I am using Mondrian as my server olap engine.

I have a scenario where some of my dimensions data is changing. When this happens I would like to clear mondrian cache.

I cannot understand how I can get a handle to Mondrian's cache control.

I have a reference to OlapConnection object, but I could not find any method that would give a handle to the CacheControl

Any suggestions?

Yosi


Source: (StackOverflow)

Advertisements

Mondrian Olap drilldown algorithm

I didn't found but may be someone could me explain - OLAP cube is a combination of all possible aggregation, so related to Mondrian - leaf level is data in fact table or it is a minimum aggregate (cell) ? Thanks.


Source: (StackOverflow)

How do you initialize RolapStars for a distributed cache?

I need create a distributed cache for Mondrian so I looked at a hazelcast cache implementation https://github.com/webdetails/cdc/blob/master/src/pt/webdetails/cdc/mondrian/SegmentCacheHazelcast.java#L141

It warns:

All relevant RolapStars must have been initialized inside mondrian for this to work.

How do I initialize the the relevant RolapStars?

Thanks.


Source: (StackOverflow)

What is difference between Numeric and Integer types, and how I can use timestamp level type in Mondrian?

While reading manual of Mondrian I found that it has not so much types including Integer and Numeric - what's difference between this types?

And how can I use timestamp level type?


Source: (StackOverflow)

Pentaho: Best way to convert a date into a drill-down-able cube dimension?

My datawarehouse table just contains a single date SQL column, but I want to be able to drill down using the usual year/quarter/month/day levels.

I could manually create new column using Pentaho Kettle, and then create the levels one-by-one in Pentaho Schema Workbench.

But this is such a common task (I guess everybody creating sales-related cubes has to do it), so I am sure Pentaho developed something to do it in seconds. What is the recommended way of doing it?


Source: (StackOverflow)

Difference between hierarchy and levels

I have just started working on Mondrian. I am having a hard time understanding hierarchies and levels. What is Difference between a level and a hierarchy of a dimension in a cube ? Why do we need to have level inside a hierarchy while building a Mondrian schema ?

Thanks for reading


Source: (StackOverflow)

R clients to OLAP MDX servers

Has anyone tried to access an OLAP server offering a XMLA API (such as Mondrian) from R?

I'd love to run MDX queries from R against Mondrian and retrieve result sets.


Source: (StackOverflow)

Why use ROLAP instead of plain MySQL?

Are there any performance advantages in using a ROLAP server such as Mondrian on top of a MySQL database, as opposed to simply querying the MySQL database?

I am asking this in the context in which most of my queries will be relatively simple (such as finding all the sales in a certain period), but the size of the database is rather large (hundreds of thousands of entries).

My idea was to use OLAP to speed up queries, but now I'm confused as to whether or not this is actually the purpose of this technology, especially in its ROLAP form. While trying the olap4j API, I realized that I can use it to make MDX queries without even having an actual OLAP server (just having a relational database and an OLAP schema for it). How could that be of any use in terms of performance?

Thanks


Source: (StackOverflow)

Presentation of data from Mondrian OLAP engine + Olap4j

I'm doing a little bit of planning of an application that uses Mondrian OLAP engine with Olap4j and should present/display data to user. I understand all the back-end stuff, but I'm not sure how should I display the data in the view layer.

For example olap4j has a formatter that prints the SELECT nicely into the console.

How is the data that I get from olap4j displayed in view layer ? I just went through the olap4j API, and there doesn't seem to be anything for getting the result in a form that can be somehow further processed and displayed. Is this process part of the Pentaho solution ? So that otherwise it is really not easy to present data just from Mondrian OLAP engine and olap4j ?

EDIT: I'm used to traditionally get some data from a database into my DTO and display it in view layer. But how do I create DTOs for such a complicated result set ?


Source: (StackOverflow)

Mondrian: How to turn a continuous value into N bands

So I have a value that represents the length in days on a fact table. I'd like to create queries that break that value out into N number of bands (say 4 bands) by year. Is there a way to do that with CalculatedMembers? For example, I'd like to have bands for: < 1 year, 1-3 years, 3-5 years, 5+ years. I could do it with days like:

0 - 365
365 - 1095
1096 - 1825
1826 - infinity

Any idea how to do this? I'm using Mondrian. I'd like to calculate it on the fly rather than adding a field and changing ETL scripts, etc.

I have a measure defined that represents the average length in days (displayed as 2.4 years) using the aggregation function. But really I want to define a completely new measure that is a calculated measure on that same column where a function returns which band it belongs in as above, then rolls up how many were in each band.

I'm beginning to suspect I have to do this in ETL and create a new column that places them in a band. This is really a new dimension I suspect (not so much a calculated measure).


Source: (StackOverflow)

MDX Filtering at fact level

im pretty newbie at mdx sintaxys.

I have the next requirement that i need to be able to solve it using mdx, if its possible. I need to show the number of SALE transactions which amout value is greater than "X" , the number of SALE transactions which amount value is less than "Y" , the number of CREDIT transactions which amout value is greater than "Z". and so on. my cube has a measure called "amount" with a aggregate function "sum" and transactionNumber with a agregate function "count" and a time dimesion, transactionType dimension and others.

the thing is, that X, Y and Z are dynamics values and configured by users, i need to read those values, build the query and execute it vía xmla.

I'm wating a resultset as the next one

                  Greater than > 200 USD       less than < 0.10       total

          SALE            150                         10               300
          CREDIT          200                         30               600
          VODI            10                           2                60

any help you can provide me, i'll appreciate it


Source: (StackOverflow)

MDX query with dimension attribute between two values and another dimension attribute equal to another value

I'm trying to build a query that selects the Top 10 products (with most likes) made by users with age between 1 and 20 years old, at the year 2014. I'm trying to use the following query:

WITH SET [TopProducts] AS TOPCOUNT([Products].[Name].Members,10,[Measures].[Likes])
SELECT {[Measures].[Likes]}
ON COLUMNS, {[TopProducts]}
ON ROWS FROM [Likes]
WHERE (
  {[Ages].[Age].[1]:[Ages].[Age].[24]},
  [Date].[Year].[2014]
)

This query returns an error: No function matches signature '(<Set>, <Member>)'

If I remove the [Date.Date].[Year].[2014] from the query, it works smoothly, so I think the problem is in the formulation of the where clause. What am I doing wrong here? Is this the way to do this query?

Thanks


Source: (StackOverflow)

Mondrian Can't find Schema in VFS when used in a Webapp

I have a webapp that I'm trying to use Mondrian within. And I'm getting the following exception when I try to open a connection:

Caused by: mondrian.olap.MondrianException: Mondrian Error:Internal error: Virtual file is not readable: /WEB-INF/olap/mycube.xml

I have tested this cube using a plain J2SE program from the command line, and it works fine. However, when I tried to execute the same cube in my web application I get the error above. My connect string is the following:

jdbc:mondrian:Jdbc=jdbc:mysql://${server.db.host}/HRWarehouse?user=${server.db.username}&amp;password=${server.db.password};Catalog=/WEB-INF/olap/mycube.xml;

This is very similar to what I've found in the Mondrian web application. However, somehow that application has installed the ServletContext in the VFS, but there is exactly zero documentation out there that I can find through google about any sort of special configuration for mondrian in a web application.

I have worked around the issue by setting the path to the schema to be absolute reference instead of relative to webapp context. While this has allowed me to continue testing it is not a suitable solution to the problem. I'm looking for a answer on how to that fix the exception that allows a webapp context relative URL.


Source: (StackOverflow)

How to configure Mondrian embedded sample for XMLA communication

I downloaded and installed the the Mondrian 3.4.1 stable community release with the embedded derby database instance. I have many of the examples up and running on a local tomcat instance, but I cannot get the XMLA examples to work, and I am unable to communicate with the XMLA endpoint using xmla4js (http://code.google.com/p/xmla4js/ the discover-schema-rowsets example allows you to specify a url to hit, which for my local instance is localhost:8080/mondrian/xmla).

I have edited the 'datasources.xml' file as found here: http://pentahodave.mywebcommunity.org/#Apache7

The xmlaTest.jsp produces the same error as the one found at the bottom of the page, but the .class link no longer works, and I am not configured to build the source locally yet.

So my question is two-fold: Is there a way to get the xmlaTest.jsp to work without a local build and what else can I do to get xmla4js to talk to Mondrian?


Source: (StackOverflow)