Mondrian and OLAP

简介:

Mondrian是一个用Java编写的OLAP引擎。他执行用MDX语言编写的查询,从关系数据库(RDBMS)中读取数据并且通过Java API以多维度的格式展示查询结果。

Online Analytical Processing 联机分析处理(OLAP)指在线实时的分析大量数据。与联机事务处理系统(On-Line Transaction Processing,简称OLTP)不同,OLTP中典型的操作如读和修改单个的少量的记录,而OLAP批量处理数据并且所有操作都是只读的。“online”意味着即使是处理大量的数据----百万条数据记录,占有几个GB内存----系统必须足够快的反回查询结果以允许数据的交互式响应。正如我们将看到,数据展示面临相当大的技术挑战。

OLAP引入了一种多维度查询的技术。鉴于一个关系数据库以行和列的形式存储所有数据,一个多维数据集包括轴和列。考虑下面的数据集:

行轴包括"All products", "Books","Fiction"等等,并且列轴包括生产年份"2000"”和"2001"、"Growth"的计算值以及"Unit sales"和"Dollar sales"的测量值。每个单元代表在某一年的一个产品类别的销售额,例如2001年Magazines的$销售额是2426美元。

这是一个比关系型数据库展现出来的更加丰富的视图。多维数据集的只不是永远都来自于一个关系数据库的列。 'Total', 'Books' and 'Fiction' 是一个具有层次结构连续的成员,每一个成员都包括其下一层的成员。即使是在"2000"和"2001"一行,"Growth"是一个计算出来的值,它引入一个公式从其他列计算当前列的值。

该例中使用的维度有:产品、生产线和测量值,仅仅是这个数据集可以分类和过滤的许多维度中的三个。维度,层次结构和测量值的集合被称为一个立方体。

结论 我希望我已经证明垛位是一个首选的数据显示方式。虽然一些多维数据库以多维度的格式存储数据库,我仍然认为这比以关系的格式存储数据要简单。
现在,你可以看看OLAP系统的架构。查看Mondrian architecture。http://mondrian.pentaho.com/documentation/architecture.php

说明

这是一篇翻译,原文来自http://mondrian.pentaho.com/documentation/olap.php。翻译水平有限,难免翻译不当,请见谅。
相关实践学习
阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
云原生数据仓库AnalyticDB MySQL版是一种支持高并发低延时查询的新一代云原生数据仓库,高度兼容MySQL协议以及SQL:92、SQL:99、SQL:2003标准,可以对海量数据进行即时的多维分析透视和业务探索,快速构建企业云上数据仓库。 了解产品 https://www.aliyun.com/product/ApsaraDB/ads
目录
相关文章
|
前端开发 JavaScript 测试技术
CSS3 动画效果对网站性能有什么影响?
CSS3动画效果在为网站带来丰富视觉体验的同时,也会对网站性能产生多方面的影响
551 58
|
存储 缓存 监控
美团面试:说说OOM三大场景和解决方案? (绝对史上最全)
小伙伴们,有没有遇到过程序突然崩溃,然后抛出一个OutOfMemoryError的异常?这就是我们俗称的OOM,也就是内存溢出 本文来带大家学习Java OOM的三大经典场景以及解决方案,保证让你有所收获!
6542 1
美团面试:说说OOM三大场景和解决方案? (绝对史上最全)
|
并行计算
最新YOLOv8(2023年8月版本)安装配置!一条龙傻瓜式安装,遇到问题评论区提问
最近需要使用YOLOv8,百度了一下现在网上大多数教程都是比较早期的教程,很多文件已经大不相同,于是我根据官方readme文档,总结了一套安装方法,只需要按照本教程,复制每一段代码,按照教程配置好相应文件即可直接使用。
9792 2
|
弹性计算 运维 自然语言处理
|
监控 Java 开发者
Java虚拟机(JVM)深度优化指南####
本文深入探讨了Java虚拟机(JVM)的工作原理及其性能优化策略,旨在帮助开发者通过理解JVM的内部机制来提升Java应用的运行效率。不同于传统的技术教程,本文采用案例分析与实战技巧相结合的方式,为读者揭示JVM调优的艺术。 ####
448 8
|
11月前
|
消息中间件 人工智能 Apache
Apache RocketMQ 中文社区全新升级!
Apache RocketMQ 中文社区全新升级!
247 7
|
11月前
|
SQL XML Java
七、MyBatis自定义映射resultMap
七、MyBatis自定义映射resultMap
322 6
|
11月前
|
人工智能 运维 Serverless
0代码!2种方式,一键部署DeepSeek
0代码!2种方式,一键部署DeepSeek
263 0
|
12月前
|
人工智能 Java 程序员
一文彻底搞明白PCB加工工艺
PCB加工工艺简介:从覆铜板开始,经过设计、钻孔、显影、蚀刻、阻焊涂层、保留焊盘、丝印等步骤,最终制成电路板。覆铜板由铜箔和绝缘基材组成,设计阶段使用EDA软件完成布线图。钻孔后,通过显影将防腐材料印刷在板上,蚀刻去除多余铜层,形成导电路径。阻焊涂层保护铜线,防止老化和短路。保留焊盘确保电子元件可焊接,丝印则添加标识符号简化焊接与维修。可选镀金处理提高抗氧化性和电气稳定性,广泛应用于高性能设备的接口。
487 0
|
文字识别 PyTorch 算法框架/工具
【Python】已解决:Python正确安装文字识别库EasyOCR
【Python】已解决:Python正确安装文字识别库EasyOCR
2987 0