数据仓库【十一】:OLAP

OLAP和OLTP的区别

OLTP OLAP
对象 业务开发人员 分析决策人员
功能 日常事务处理 面向分析决策
模型 关系模型 多维模型
数据量 几条或几十条记录 >百万于万条记录
操作类型 增、删、查、改(CRUD) 查询为主
总体概括 联机事务处理 在线分析处理

OLAP分类

MOLAP:基于多维数组的存储模型

基于多维数组的存储模型,也是OLAP最初的形态,特点是对数据进行预计算,以空间换效率,明细和聚合数据都保存在cube中。但生成cube需要大量时间和空间。

ROLAP:基于关系模型进行存储数据

ROLAP,基于关系模型进行存储数据,不需要预计算,按需即时查询。明细和汇总数据都保存在关系型数据库事实表中。其特点是与事务实体对应,关系清晰;但一般需要较为复杂的数据准备。在响应前端需求时,一般较快,但取决于计算引擎能力。

HOLAP:混合模型

HOLAP,混合模型,细节数据以ROLAP存放,聚合数据以MOLAP存放。这种方式相对灵活,且更加高效。可按企业业务场景和数据粒度进行取舍,没有最好,只有最适合。

OLAP基本操作

★钻取

维的层次变化,从粗粒度到细粒度,汇总数据下钻到明细数据。如通过季度销售数据钻取每个月的销售数据。

★上卷

钻取的逆,向上钻取。从细粒度到粗粒度,细粒度数据到不同维层级的汇总。eg. 通过每个月的销售数据汇总季度、年销售数据。

★切片

特定维数据(剩余维两个)。eg. 只选电子产品销售数据。

★切块

维区间数据(剩余维三个)。eg. 第一季度到第二季度销售数据。

★旋转

维位置互换(数据行列互换),通过旋转可以得到不同视角的数据。

OLAP选型

druid

  • 实时查询和分析的高容错、高性能开源分布式系统,用于解决如何在大规模数据集下进行快速的、交互式的查询和分析。
  • 实时的数据消费,真正做到数据摄入实时、查询结果实时。
  • 扩展性强,支持 PB 级数据
  • 极高的高可用保障,支持滚动升级。
  • druid属于时间存储,删除操作比较繁琐,且不支持查询条件删除数据,只能根据时间范围删除数据。Druid能接受的数据的格式相对简单,比如不能处理嵌套结构的数据。

kylin

  • 可扩展超快olap引擎,Hadoop/Spark上百亿数据规模
  • 提供 Hadoop ANSI SQL 接口
  • 交互式查询能力,用户可以与Hadoop数据进行亚秒级交互
  • 百亿以上数据集构建多维立方体(MOLAP CUBE)
  • 与BI工具无缝整合,如Tableau,PowerBI/Excel,MSTR,QlikSense,Hue和SuperSet


转载请注明出处:数据仓库【十一】:OLAP
原文地址:https://www.xiaotanzhu.com/%E6%95%B0%E6%8D%AE%E4%BB%93%E5%BA%93/2022-07-11-dw-olap.html