文章目录

  • 基本概念
  • OLAP的核心概念和基本操作
    • OLAP的核心概念
    • OLAP的基本操作
  • 关系&对比
  • olap的分类
    • MOLAP(Multi-dimensional OLAP)
    • ROLAP (Relational OLAP)
    • HOLAP(混合 OLAP)

基本概念

  • OLTP(on-line transaction processing)→ 联机事务处理

    • 事务处理
    • 对数据增删改
  • OLAP(on-line analytical processing)→ 联机分析处理
    • 分析处理
    • 对数据的查询
  • BI工具(Business Intelligence)
    • BI是Business Intelligence的英文缩写,中文解释为商务智能,是利用数据提高决策质量的技术集合,是从大量的数据中钻取信息与知识的过程
    • OLAP和BI常常在一起出现,OLAP是BI工具的一种底层技术。BI工具通常可以对接OLAP系统,但不限于此,也可以直接与其他数据库、存储系统对接
  • 即席查询(Ad Hoc Queries)
    • Ad hoc是一个拉丁文常用短语,意思是“特设的、特定目的的(地)、临时的、专案的”。即席查询(Ad Hoc Queries)是指用户根据自己的需求动态创建的查询,与预定义查询相反,即席查询对数据模型没有要求,只要能提供动态查询的能力即可;
    • 而OLAP系统,一般要求数据模型是多维数据模型。对于ROLAP系统,通常都能提供即席查询能力,二者之间差别很小,所以经常混用.

OLAP的核心概念和基本操作

OLAP的核心概念

  • 维度(Dimension)

    • 维度是描述与业务主题相关的一组属性,单个属性或属性集合可以构成一个维。如时间、地理位置、年龄和性别等都是维度。
  • 维的层次(Level of Dimension)
    • 一个维往往可以具有多个层次,例如时间维度分为年、季度、月和日等层次,地区维可以是国家、地区、省、市等层次。这里的层次表示数据细化程度,对应概念分层。后面介绍的上卷操作就是由低层概念映射到高层概念。概念分层除了可以根据概念的全序和偏序关系确定外,还可以通过对数据进行离散化和分组实现。
  • 维的成员(Member of Dimension)
    • 若维是多层次的,则不同的层次的取值构成一个维成员。部分维层次同样可以构成维成员,例如“某年某季度”、“某季某月”等都可以是时间维的成员
  • 度量(Measure)
    • 表示事实在某一个维成员上的取值。例如开发部门汉族男性有39人,就表示在部门、民族、性别三个维度上,企业人数的事实度量

OLAP的基本操作

  • 钻取(Drill-down)

    • 在维的不同层次间的变化,从上层降到下一层,或者说是将汇总数据拆分到更细节的数据,比如通过对2010年第二季度的总销售数据进行钻取来查看2010年第二季度4、5、6每个月的消费数据,如上图;当然也可以钻取浙江省来查看杭州市、宁波市、温州市……这些城市的销售数据
  • 上卷(Roll-up)
    • 钻取的逆操作,即从细粒度数据向高层的聚合,如将江苏省、上海市和浙江省的销售数据进行汇总来查看江浙沪地区的销售数据,如上图
  • 切片(Slice)
    • 选择维中特定的值进行分析,比如只选择电子产品的销售数据,或者2010年第二季度的数据
  • 切块(Dice)
    • 选择维中特定区间的数据或者某批特定值进行分析,比如选择2010年第一季度到2010年第二季度的销售数据,或者是电子产品和日用品的销售数据
  • 旋转(Pivot)
    • 即维的位置的互换,就像是二维表的行列转换,如图中通过旋转实现产品维和地域维的互换

关系&对比

  • OLTP主要用来记录某类业务事件的发生,如购买行为,当行为产生后,系统会记录是谁在何时何地做了何事,这样的一行(或多行)数据会以增删改的方式在数据库中进行数据的更新处理操作,要求实时性高、稳定性强、确保数据及时更新成功,像公司常见的业务系统如ERP,CRM,OA等系统都属于OLTP。
  • 当数据积累到一定的程度,我们需要对过去发生的事情做一个总结分析时,就需要把过去一段时间内产生的数据拿出来进行统计分析,从中获取我们想要的信息,为公司做决策提供支持,这时候就是在做OLAP了。
  • 因为OLTP所产生的业务数据分散在不同的业务系统中,而OLAP往往需要将不同的业务数据集中到一起进行统一综合的分析,这时候就需要根据业务分析需求做对应的数据清洗后存储在数据仓库中,然后由数据仓库来统一提供OLAP分析。所以我们常说OLTP是数据库的应用,OLAP是数据仓库的应用,下面用一张图来简要对比。
  • 所以OLAP和OLTP之间的关系可以认为OLAP是依赖于OLTP的,因为OLAP分析的数据都是由OLTP所产生的也可以看作OLAP是OLTP的一种延展,一个让OLTP产生的数据发现价值的过程

olap的分类

MOLAP(Multi-dimensional OLAP)

  • MOLAP是一种基于多维数据库索引的 OLAP。

    • Cognos Powerplay, Oracle Database OLAP Option, MicroStrategy, Microsoft Analysis Services, Essbase, TM1, Jedox ,icCube和kylin
  • 设计理念
    • 预先将客户的需求计算好以结果的形式存下来(比如一张表分为10个维度,5个度量,那客户提出的需求会有2的10次方种可能,然后将这么多种可能提前计算好存储下来
    • 好比你提前一天将领导明天会布置的任务先做好,明天领导布置对应任务后你直接告知他已做好
  • 优点
    • 当命中需求后返回非常快(所以MOLAP非常适合常见固定的分析场景),同等资源下支持的数据体量更大,支持的并发更多
  • 缺点
    • 空间和时间开销大。update cube的时间跟计算维度(degree)相关,随着维度增加计算时间大幅增加,此外预计算还会造成数据库占用急剧膨胀。
    • 查询灵活度比较低。需要提前设计维度模型,查询分析的内容仅限于这些指定维度,增加维度需要重新计算。

ROLAP (Relational OLAP)

  • ROLAP 是一种对关系数据库存储的数据进行动态多维分析的 OLAP。

    • Vertica、Amazon Redshift、Google Dremel、Hulu Nesto、Presto、Druid、Impala、Greenplum、HAWQ和Doris
  • 优点
    • 能同时连接明细数据和汇总数据,实时根据用户提出的需求对数据进行计算后返回给用户,所以用户使用相对比较灵活,可以随意选择维度组合来进行实时计算。
  • 缺点
    • 当计算的数据量达到一定级别或并发数达到一定级别的时候,一定会出现性能问题
    • 就好比如果领导一次性给你安排非常多的工作,你一个人是无法马上将所有事情做完答复领导的

HOLAP(混合 OLAP)

  • HOLAP 是 ROLAP 和 MOLAP 的各种集成。

  • 细节的数据以ROLAP的形式存放,更加方便灵活

  • 而高度聚合的数据以MOLAP的形式展现,更适合于高效的分析处理。

  • 公司使用HOLAP的目的是根据不同场景来利用不同OLAP的特性

  • 参考一

  • 参考二

数仓-oltp和olap相关推荐

  1. 咖啡汪日志——遇见数仓,理想与现实的碰撞,前景与难点的对接

    嗷呜! 作为不是在戏精,就是在戏精的路上的二哈 本汪最近又搞到了新玩意儿 做数仓,主要用于支撑大数据分析和架构层决策 前言 通过这篇文章,我们能学到什么: 1.了解数仓的前景. 2.了解到数仓前期ET ...

  2. 数据仓库系列文章一:浅谈数仓设计

    数仓设计指对数据仓库的各项组成进行规划,在正式建设数仓之前形成指导性建设方案. 数仓设计主要分为两部分:数据仓库同操作型业务系统的数据接口设计和数仓自身建设设计. 本文从多个方面探讨数仓的设计要点,给 ...

  3. 知识图谱数据库还有OLTP、OLAP(MOLAP、ROLAP、HOLAP)的区别? 首个实时图数仓架构分析...

    目录导读 数据库与数据仓库与数据湖泊的介绍 图数据库与图数据仓库的区别 图库发展与现状 HOLAP(ROLAP+MOLAP)图数仓的优点 HOLAP数仓数据摄入方式 HOLAP数仓数据存储方式 总结 ...

  4. 从数仓到数据中台,谈技术选型最优解

    本文根据颜博老师在[Deeplus直播第218期]线上分享演讲内容整理而成. 颜博 马蜂窝数仓研发总监 现任马蜂窝数据仓库团队负责人,曾供职于京东.IBM.亚信等公司. 数据行业老兵一名,历经传统数据 ...

  5. Apache Flink不止于计算,数仓架构或兴起新一轮变革

    作者 | 蔡芳芳 采访嘉宾 | 王峰(莫问) 维基百科的"Apache Flink"词条下,有这么一句描述:"Flink 并不提供自己的数据存储系统,但为 Amazon ...

  6. Forrester发布最新云化数仓象限报告: 阿里云获评“强劲表现者”,排名国内第一

    **简介:**2021年3月24日,全球权威IT分析机构Forrester发布最新云化数据仓库- "The Forrester Wave: Cloud Data Warehouse Q1 2 ...

  7. 实时数仓与离线数仓总结(一)

    精选30+云产品,助力企业轻松上云!>>> 今天主要聊聊数仓的基础知识,分为两篇文章介绍,这是第一篇. 主要内容: 数仓基本概念 数仓架构演变 实时数仓和离线数仓的区别 数仓基本概念 ...

  8. 数仓(六)从0到1简单搭建数仓ODS层(埋点日志 + 业务数据)

    数仓(一)简介数仓,OLTP和OLAP 数仓(二)关系建模和维度建模 数仓(三)简析阿里.美团.网易.恒丰银行.马蜂窝5家数仓分层架构 数仓(四)数据仓库分层 数仓(五)元数据管理系统解析 最近工作一 ...

  9. 数据仓库系列(四)数仓架构以及多维数据模型的设计

    文章目录 一.前言 二.数据仓库的定义 三.数据仓库的特点 四.数据仓库的作用 五.数据仓库的架构 六.数据仓库的要求 七 .数据仓库分层 八.数据仓库四个层次的划分 8.1 ODS层 8.2 PDW ...

最新文章

  1. HiCar人-车-家全场景智慧互联
  2. linux shell 数组添加元素
  3. python基本语法语句-Python基本语法,python,基础
  4. 数字图像处理——第三章 空间域图像增强(灰度变换和直方图处理)
  5. friend之友元函数和友元类
  6. 五个使Java变得更好的功能
  7. 数学建模及其算法概述
  8. 哪三级分类java_技术汇总:第五章:使用angularjs做首页三级分类
  9. 谈谈主策划需要的能力
  10. linux 7自定义服务,CentOS 7.x设置自定义开机启动,添加自定义系统服务
  11. shp格式详解(一)
  12. lomboz连接mysql数据库_将Lomboz Eclipse 连接上 Oracle 11g
  13. 微信扫码登录原理解析
  14. 苹果笔记本硬盘怎么解锁_笔记本如何加装内存、硬盘,怎么增大C盘容量
  15. Docker的深入浅出(入门新手篇)
  16. OpenWrt操作系统移植SIM7600CE驱动及调试
  17. doc转swf,主流文档在线查看解决方案--类似百度文档功能
  18. [附源码]计算机毕业设计SpringBoot高血压分析平台
  19. 究竟怎样写代码才算是好代码
  20. ip地址分类及预留ip地址大全

热门文章

  1. 【3DMax】细节1【将几何体模型移动到世界中心】
  2. 如何让div靠右_css想让块靠右该如何实现
  3. 【物联网】物联网时代25大开源IoT框架(一)
  4. [python]python实现文件夹压缩成zip包
  5. 【Webpack】1105- 深入学习 Webpack Loader 知识
  6. EXT.NET NumberField 数字输入框
  7. java 星形线代码,从小数学就不及格的我,竟然用极坐标系表白了我的女神!(附代码)...
  8. HTB_Preignition 靶机之 Http 协议与目录暴破
  9. 魅族回应被吉利收购:已签署协议;腾讯下架QQ影音所有版本;PyPI多个软件包因拼写错误包含后门|极客头条...
  10. iOS11使用技巧:玩转“iMessage”