下面简单介绍下各个Manager的大致功能,在后续文章会分开详细介绍:
1 Session Manager:最为重要的一个部分。接受MDX查询、解析MDX,返回结果。
2 Schema Manager:与初始化紧密相关。主要是一些重要的数据结构如缓存池的构建以及多维模型的生成。
3 Aggregate Manager:实现了对聚集表的管理。主要是对OLAP缓存的管理,属于性能优化的部分。
4 Dimension Manager:维度的管理。实现多维模型中维度和关系数据库表中列的映射,在Schema Manager也有部分功能处理这些映射。
3.2 Mondrian Schema Manager分析
3.2.1 准备工作
Mondrian的结果展示分为两种形式:一是利用jpivot展现层在web页面上展示,一种是调用Mondrian api在控制台显示。在分析Mondrian的过程中,后一种方式有利于对结果封装格式的研究以及程序的调试。所以采取后一种方式来对Mondrian进行分析。分析之前要做一些必要的准备工作。
分析环境为:
(1)Window2003
(2)Tomcat5.0
(3)mysql5.0.37
(4)java 1.6.0
(5)Mondrian3.0.3.11016
1 正确配置Mondrian源码
(1)在eclipse中构建一个空的java工程(Mondrian3.0工程);
(2)将Mondrian3.0.3的源码压缩包解压,将其内容全部拷贝到Mondrian3.0工程中;
(3)在工程属性中指定源代码目录为src/main;
(4)ant运行build.xml文件的prepare,parser,generate.resources,def四个目标过程, 按顺序运行;
(5)将mondrian.war发布包中的WEB-INF/lib中的jar包全部拷贝到Mondrian3.0.工程的lib目录中;
(6)根据提示的异常导入必要的jar包文件;
在这个过程中需要注意的是:最后执行ant完成对工程进行清理处理;如果一切正常,之后则不需要用mondrian.jar文件,可以依此为标准检测是否构建成功。
2 数据库建表
在数据库中建立如下三张表:
employee_name int
)
create table tb_time(time_id int,
time_year int,
time_month int)
create table tb_salary(employee_id int,
time_id int,
salary int)
插入适当的数据。
3 编写Schema文件test.xml
在利用Mondrian进行多维分析过程中需要十分注意Schema文件的编写。Schema文件是对数据库中表的多维模型定义,所以有些选项要和数据库中表的定义保持一致,更为重要的是Schema文件的设计的好坏直接影响到多维查询的效率,Mondrian在schema文件定义的过程中提供了很多