| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 大数据 -> 数据仓库—什么是OLAP -> 正文阅读 |
|
[大数据]数据仓库—什么是OLAP |
从事数据仓库或者大数据的同学,应该经常会听到OLAP这个词。什么OLAP分析,OLAP引擎等等名词。今天就来聊聊什么是OLAP。 OLAP与OLTP说起OLAP,就不得不提一下他的好兄弟OLTP,两者经常会被拿来比较。 首先,看一下两者的 定义:OLAP(On-Line Analytical Processing):联机分析处理,OLAP是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。 OLTP(on-line transaction processing):联机事务处理,传统的关系型数据库的主要应用,主要是基本的、日常的事务处理。 区别:通俗来讲的话就是:OLTP主要是面向传统的“增删改查”事务系统,数据大都是以实体对象模型来存储数据,并满足3NF(数据库第三范式),追求高并发场景下的快速响应。而OLAP是面向决策分析场景,采用维度建模思想构建模型,追求大规模聚合分析查询的性能表现。 OLAP的分类一般来说,根据建模方式OLAP可分为3种类型:关系型联机实时分析系统(Relational-OLAP,ROLAP),多维联机实时分析系统(Multidimensional-OLAP,MOLAP),混合型联机实时分析系统(Hybrid-OLAP,HOLAP)。 ROLAP一种通过在RDMS后端服务和客户前端之间建立中间层的OLAP实现方式。通过RDMS来存储和管理数据仓库数据,而通过OLAP中间件来实现多维数据上的操作映射为标准关系操作。 ROLAP的处理引擎主要有:Presto,Impala,GreenPlum,Clickhouse、Doris。 ROLAP 适用于对查询模式不固定、查询灵活性要求高的场景,但是处理的数据量级受限于引擎性能,对于超大数据量的复杂查询表现不太好 MOLAPMOLAP一般会根据用户定义的数据维度、度量(也可以叫指标)在数据写入时生成预聚合数据;Query查询到来时,实际上查询的是预聚合的数据而不是原始明细数据,在查询模式相对固定的场景中,这种优化提速很明显。 MOLAP的处理引擎主要有:Druid 和 Kylin MOLAP 适用于查询场景相对固定并且对查询性能要求非常高的场景,灵活性较差。 HOLAPHOLAP是 MOLAP 和 ROLAP 的一种融合。当查询聚合性数据的时候,使用MOLAP 技术;当查询明细数据时,使用 ROLAP 技术。 一般商业OLAP引擎是HOLAP架构,以便可以满足不同客户的需求。 OLAP的基本操作OLAP的多维分析操作包括:钻取(Drill-down)、上卷(Roll-up)、切片(Slice)、切块(Dice)以及旋转(Pivot) 钻取(Drill-down):在维的不同层次间的变化,从上层降到下一层,或者说是将汇总数据拆分到更细节的数据,比如通过对2010年第二季度的总销售数据进行钻取来查看2010年第二季度4、5、6每个月的消费数据,如上图;当然也可以钻取浙江省来查看杭州市、宁波市、温州市……这些城市的销售数据。 上卷(Roll-up):钻取的逆操作,即从细粒度数据向高层的聚合,如将江苏省、上海市和浙江省的销售数据进行汇总来查看江浙沪地区的销售数据,如上图。 切片(Slice):选择维中特定的值进行分析,比如只选择电子产品的销售数据,或者2010年第二季度的数据。 切块(Dice):选择维中特定区间的数据或者某批特定值进行分析,比如选择2010年第一季度到2010年第二季度的销售数据,或者是电子产品和日用品的销售数据。 旋转(Pivot):即维的位置的互换,就像是二维表的行列转换,如图中通过旋转实现产品维和地域维的互换。 常见OLAP引擎对比? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 3:24:17- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |