Mondrian + JPivot环境配置和演示

本文详细介绍了ROLAP的概念及Mondrian作为ROLAP的一种实现方式,通过实例演示了如何利用Mondrian和JPivot进行数据立方体的构建与查询,并解决了中文乱码等问题。

本文主要讲解ROLAP,以及ROLAP的实现Mondrian的使用和部署问题。目前网上关于Mondrian部署的帖子较少,连官网也是若干年前的版本,因此,开贴记录一下Mondrian在使用上的一些坑,关心Mondrian的使用请直接移步第二章。

1.OLAP简介

1.1什么是OLAP

OLAP系统,英文为OnLine Analytical Processing,中文为联机分析处理系统,它在数据分析决策方面为用户或“知识工人”提供服务,以不同的格式组织和提供数据,满足不同用户的形形色色的需求。与之相对的为OLTP(Online Transaction Processing,联机事务处理)系统,该系统主要用于单位的大部分日常操作,如购物、库存、制造、银行、工资、注册、记账等。

OLAP和OLTP的主要区别如下:

  • 用户:OLTP是面向顾客的,用于事办员、客户和信息技术专业人员的事务和查询处理。OLTP是面向市场的,用于知识工人(包括经理、主管和分析人员)的数据分析。
  • 数据内容:OLTP系统管理日常的、琐碎的数据,而这种数据一般很难用于决策。OLAP系统管理大量的历史数据,提供汇总和聚集机制,并在不同的粒度层上存储和管理系统。这些特点使得数据更容易用于有根据的决策。
  • 数据库设计:通常,OLTP系统采用实体-联系(ER)数据模型和面向应用的数据库设计。而OLAP系统通常采用星形或雪花模型和面向主题的数据库设计。
  • 视图:OLTP系统主要关注一个企业或部门内部的当前数据,而不涉及历史数据或不同单位的数据。相比之下,由于单位的演变,OLAP系统尝尝跨越数据库模式的多个版本。OLAP系统还处理来自不同单位的信息,以及由多个数据库集成的信息。
  • 访问模式:OLTP系统的访问主要由短的原子事务组成。这种系统需要并发控制和恢复机制。然而,对OLAP系统的访问大部分是只读操作,大多数是复杂的查询。

OLTP和OLAP的主要区别之一在于数据库的选择,由于OLTP系统是面向顾客的、需要并发控制和恢复机制,因此OLTP系统往往采用关系数据库,如MySQL、Oracle数据库等。而OLAP系统一般是只读的、大量历史数据的汇总和聚集,因此OLAP往往使用数据仓库。

宽泛地讲,数据仓库是一种数据库,它与单位的操作数据库分别维护。数据仓库系统允许将各种应用系统集成在一起,为统一的历史数据分析提供坚实的平台,对信息处理提供支持。面向主题的、集成的、时变的、非易失的是数据仓库的主要特征,也是将数据仓库与其他数据存储系统(如关系数据库系统、事务处理系统和文件系统)相区别。

  • 面向主题的(subject-oriented):数据仓库围绕一些重要主题,如顾客、供应商、产品和销售组织,关注决策者的数据建模与分析,拍除对于决策无用的数据,提供特地主题的简明视图。
  • 集成的(integrated):构造数据仓库通常是将多个异构数据源,如关系数据库、一般文件和联机事务处理记录集成在一起。
  • 时变的(time-variant):数据存储从历史的角度提供信息。数据仓库中的关键结构都隐式或显示地包含时间元素。
  • 非易失的(nonvolatile):数据仓库不需要事务处理、恢复和并发控制机制。通常,它只需要两种数据访问操作:数据的初始化装入和数据访问。

通常,数据仓库采用三层体系结构:

1.2 为什么需要使用分离的数据仓库

分离的主要原因是有助于提高两个系统的性能。操作数据库是为已知的任务和负载设计的。另一方面,数据仓库的查询通常是复杂的,涉及大量数据在汇总级的计算,可能需要特殊的基于多维视图的数据组织、存取方法和实现方法。在操作数据库上处理OLAP查询,可能会大大降低操作任务的性能。此外,操作数据库支持多事务的并发处理,需要并发控制和恢复机制,以确保一致性和事务的鲁棒性。通常,OLAP查询只需要对汇总和聚集数据记录进行只读访问。最后,数据仓库与操作数据库分离是由于这两种系统中数据的结构、内容和用法都不相同。

1.3 OLAP服务器的结构:ROLAP、MOLAP和HOLAP

用于OLAP处理的数据仓库服务器的实现包括了ROLAP(关系OLAP)、MOLAP(多维OLAP)和HOLAP(混合OLAP),ROLAP服务器是一种中间服务器,介于关系的后端服务器和客户前端工具之间,它们使用关系的或扩充关系的DBMS存储并管理数据仓库数据,而OLAP中间件支持其余部分,相应的实现有Mondrian等;MOLAP服务器通过基于数组的多维存储引擎,支持数据的多维视图,它们将多维视图直接映射到数据立方体数组结构。使用数据立方体的优点是能够对预计算的汇总数据快速索引,相应的实现有Cognos,SSAS,Kylin等;HOLAP服务器结合ROLAP和MOLAP技术,得益于ROLAP较大的可伸缩性和MOLAP的快速计算,比如微软的SQL Server2000。它们的区别的表格如下:

名称 描述 细节数据存储位置 聚合后的数据存储位置 代表
ROLAP 基于关系数据库的OLAP实现 关系型数据库 关系型数据库 Mondrian
MOLAP 基于多维数据组织的OLA
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值