#45 浅谈数据仓库(DW & BI)
Posted 沉默是金 话唠是银
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了#45 浅谈数据仓库(DW & BI)相关的知识,希望对你有一定的参考价值。
历史文章:
#42 浅谈数据仓库(DW &BI)(一):
#43 浅谈数据仓库(DW &BI)(二):
#44 浅谈数据仓库(DW &BI)(三):
最近一段时间,频繁听到数据中台的概念,尤其是阿里巴巴的数据中台,不太了解数据中台是什么,这几天在网上学习了一下,发现似乎与企业数据仓库差别不大?(求指教)我理解的主要区别在于数据中台做全域数据接入,还有很多非业务系统的非结构化数据,另外数据开放、外部应用更多,对业务支撑的接口更多,也提供了更多平台能力。
做为数仓的重要工具,今天主要聊一下数仓的OLAP(Online Analytical Processing)吧~
OLAP不同于操作型数据库的OLTP(Analytical Transaction),OLTP主要做事务处理,OLAP主要做数据分析和展示,提供直观的查询结果。
OLAP核心建立于数据立方体上(Data Cube)之上,那么什么是数据立方体呢?从网上找了一张图,见下:
其实就是不同维度上(可以是一维、二维、三维甚至N维)的各类度量的一个立方体。
维度(Dimension):观察数据的角度,是一个用来过滤、分类的描述性事实,例如销售的产品、销售的区域、销售的时间。
度量(Measure):具体的统计量,例如总销售额、总销售量、平均销售额等。
维度又有不同的层次(Level),比如销售时间可以是日层次、月层次、季度层次、年层次。
维的具体成员(Member),是指某一维内的具体取值,比如性别中包含男、女、不详三个成员。。
然后OLAP其实在把玩这个数据立方体,通过各种操作,将预设的立方体翻来覆去,以达到分析数据的效果,有点类似获取数据之后,在excel中通过行列转换、筛选器(切片器)的方式做数据透视表。具体的方法有:
1、钻取(Drill-down)& 上卷(Roll-up):钻取是从高维的维度向下钻,例如看2018年的销售情况,向下变成看2018年1月至2018年12月各月的销售情况。上卷反之,例如将桌子和椅子划为一个新整体来观察。
2、切片(Slice):选择特定维成员看具体数据。
3、切块(Dice):选择特定范围内的维成员看具体数据。
4、旋转(Pivot):行列转换。
然后OLAP根据数据存储的架构,分为这么几种:
MOLAP(Multidimensional):多维OLAP架构是实际生成了一张存放数据立方体的表,所有的信息和维度都已经在这张表内被设计、计算好,速度比较快,存储上会耗费多一点。
ROLAP(Relational):关系型OLAP实际后台存储的是事实表和维表(一般是星型模型),前台的查询会直接转化为SQL,后台访问相关表做join处理,速度比较慢。
HOLAP(Hybrid) :混合OLAP,灵活部署,使用频率多的应用采用MOLAP模式,使用频率低、数据量小一点的应用采用ROLAP模式。
OLAP如果按照处理方式划分的话,则可以分为Server OLAP与Client Olap,Server OLAP比较常见,在服务器端进行分析处理,然后将结果返还给用户。ClientOLAP则是用户端下载数据到本地,在本地做数据处理。
目前的一些OLAP工具:Congos、Mondrian、Superset、Druid、Flink等。
就到此吧。
以上是关于#45 浅谈数据仓库(DW & BI)的主要内容,如果未能解决你的问题,请参考以下文章