首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 开源软件 >

Pentaho -Mondrian Architecuture

2012-07-04 
Pentaho --Mondrian ArchitecutureMondrian ArchitectureLayers of a Mondrian systemA Mondrian OLAP Sys

Pentaho --Mondrian Architecuture

Mondrian Architecture

Layers of a Mondrian system
A Mondrian OLAP System consists of four layers; working from the eyes of the end-user to the
bowels of the data center, these are as follows: the presentation layer, the dimensional layer, the
star layer, and the storage layer.

?

1.The presentation layer determines what the end-user sees on his or her monitor, and how he or
she can interact to ask new questions. There are many ways to present multidimensional
datasets, including pivot tables (an interactive version of the table shown above), pie, line and
bar charts, and advanced visualization tools such as clickable maps and dynamic graphics. These
might be written in Swing or JSP, charts rendered in JPEG or GIF format, or transmitted to a
remote application via XML. What all of these forms of presentation have in common is the
multidimensional 'grammar' of dimensions, measures and cells in which the presentation layer
asks the question is asked, and OLAP server returns the answer.

2.The second layer is the dimensional layer. The dimensional layer parses, validates and executes
MDX queries. A query is evaluted in multiple phases. The axes are computed first, then the
values of the cells within the axes. For efficiency, the dimensional layer sends cell-requests to the
aggregation layer in batches. A query transformer allows the application to manipulate existing
queries, rather than building an MDX statement from scratch for each request. And metadata
describes the the dimensional model, and how it maps onto the relational model.

3.The third layer is the star layer, and is responsible for maintaining an aggregate cache. An
aggregation is a set of measure values ('cells') in memory, qualified by a set of dimension column
values. The dimensional layer sends requests for sets of cells. If the requested cells are not in the
cache, or derivable by rolling up an aggregation in the cache, the aggregation manager and
sends a request to the storage layer.

4.The storage layer is an RDBMS. It is responsible for providing aggregated cell data, and members
from dimension tables. I describe below why I decided to use the features of the RDBMS rather
than developing a storage system optimized for multidimensional data.
These components can all exist on the same machine, or can be distributed between machines.
Layers 2 and 3, which comprise the Mondrian server, must be on the same machine. The storage
layer could be on another machine, accessed via remote JDBC connection. In a multi-user
system, the presentation layer would exist on each end-user's machine (except in the case of JSP
pages generated on the server).

热点排行