老钱说大数据(1)----大数据OLAP与OLTP分析

1. 首先,咱们先不拿大数据说事,先分析一下OLAP及OLTP。

OLAP: 联机分析处理(OLAP)系统是数据仓库系统最主要的应用,专门设计用于支持复杂的分析操作,侧重对决策人员和高层管理人员的决策支持。

OLTP: 联机事务处理(OLTP,On-line Transaction Processing)应用,它所存储的数据被称为操作数据或者业务数据。

所以从定位上来讲,OLAP的定位是用来做数据分析(类BI),OLTP适合做一些事务的类的数据管理如查询如订单数据的产生。

举个通俗的例子,一个小规模的电商网站,会有下单的流程,那么这个下单流程产生的订单会是在OLTP数据库中,而如果电商的CEO想看本个月的运营情况,如果订单统计,理论上是应该在OLAP数据库(或者仓库)。

所以从本质上来讲,OLAP是读为主而OLTP以写为主。

然后,我们在来做一个基本的分析,就是常见的分析方式:

  1. Ad-hoc query:即席查询(Ad Hoc)是用户根据自己的需求,灵活的选择查询条件,系统能够根据用户的选择生成相应的统计报表。
  2. 固定字段分析:即用户的查询条件是固定的,我们可以按照定义好的字段进行报表提供,如周报、月报
  3. 关键字查询:如,用户的地址为 北京市朝阳区XXXXX,那么提供按照北京市XXX为关键字的检索查询
  4. 统计类查询:如生成一些箱图,热力图等

可以简单分析一下就是,在OLTP中,合理设计的情况下会存在1,3类查询,而在OLAP中会在1,2,3,4类查询。

2. 接下来,我们分析一下传统技术的问题:

大家知道,不管在牛逼的系统,都逃不开硬件的限制,如磁盘IO、内存、CPU(往往也是大家忽略的)、网络IO。一般SATA硬盘的读写速度是在50~75M之间,普通网络均为千兆交换机,即100M传输速度。

那我们在来分析一下,数据库的特性:(本文章不讨论数据库的具体实现)

  1. 数据库能进行较快查询的原因是因为索引(及缓存)的存在,不同数据库的索引实现结构会稍微不太一样。索引也需要维护。

再结合我们之前讲到的分析,大家可以认为数据库在查询上的性能其实还是比较容易实现优化(结合数据库缓存),但是大家需要注意的是,如果查询的时候同时存在聚合(group by,sum,count),那么压力就会落在IO上,比如排序(因为单机内存有限,必须通过硬盘来实现排序)  这个时候压力就会落到IO上(请回顾上文提到的性能),所以当我们需要返回的数据条数越大(尤其分页),那么数据库就会变的非常非常的慢。

  • 很多人会用数据库来进行数据清洗,也是因为IO的问题,导致变慢
  • 大家不能忽略:当数据不大时,也会出现分析很慢的问题,是因为CPU计算能力有限的问题。

所以综合我的分析,大家可以得出几个结论:

  • 数据库的问题在计算资源的有限
  • 本身也没有支持关键字查询的方式(搜索引擎)。
  • 主要是在查询+统计的场景下,数据库会有问题,其实本质来讲Ad-hoc query 如果没有统计的话,咱们通过分库+hash的方式是可以做到非常快的。

3.目前开源大数据方案,是否Ready?

接下来,我通过工作中使用的一些技术给大家做一些分析,希望大家能对这个东西的解决方案有一些了解

我们在几个方面做比较,架构、效率、成熟度、学习难度等。

Hadoop+Hive+Tez:

  • 架构 : Hive 目前是Hadoop上的数据仓库,底层的技术为Tez(DAG MapReduce),采用Yarn 作为资源管理平台,提供类SQL 接口,HQL,采用数据库作为元数据管理工具。
  • 成熟度:Hive目前已经被非常多的人来使用,所以整体比较成熟。
  • 效率:Hive目前结合Orcfile+压缩整体还是比较快的,但是也没有达到一些ad-hoc query要求的3秒内返回
  • 学习难度 :HQL,Hadoop 入门的难度都不高,所以学习曲线比较简单。

总结如下:

  1. Hive 目前这个软件适合做OLAP数据仓库类分析、数据清洗等对实时性要求不高的场景
  2. Hive 不支持按照关键词查询,所以不能做搜索
  3. Hive 索引比较弱,达不到数据库的性能。
  4. Hive 不能满足3秒,5秒类似的快速返回的Ad-hoc query(即便将HDFS数据加入内存)
  5. 有Insert,update 等初级事务操作,所以可以认为未来可能可以做oltp。

Spark+Hadoop:

  • 架构:Spark 技术中有一个比较好的技术就是-Spark SQL,这个技术可以实现使用SQL来操作Spark的RDD,当然Spark SQL最终也是要通过Spark的引擎,来使用所以最终会转换成Spark的MapReduce。
  • 成熟度 :目前仍是告诉发展。
  • 效率: 整体比Hive率高,但是如果数据量非常大,没有特别好的效果。数据加入内存后查询(无统计)非常快。
  • 学习曲线:需要学习Hadoop,Spark等,比较陡峭。

总结如下:

  1. 数据量不是特别大,完全装入内存,可以提供秒内的非统计类查询。
  2. 不能完全装入内存的统计分析,结果与hive+tez的组合不会差太多,也不会领先特别多。
  3. 适合一定的Ad-hoc query场景与Olap 场景,不能做oltp
  4. 没有索引,无法做精确的查找,都是暴利扫描。

Impala+Hadoop:

  • 架构:Impala技术目前性能不错,抛弃了MapReduce设计,结合HDFS缓存可以做更好的性能提高
  • 成熟度:比较成熟
  • 效率:配合Parquet ,性能与Hive+Tez接近,因为不需要启动在一定程度分析比Hive快
  • 学习曲线:学习SQL与Impala 本身,所以难度一般。

总结:

  • Impala性能不错,但是在大数据排序上,需要限制返回的行数,大表间Join也是个问题。
  • 适合一定的Ad-hoc query场景与Olap 场景,不能做oltp
  • 没有索引,无法做精确的查找,都是暴利扫描。

所以综合看,目前开源的大数据SQL方案,没有一个是完美的,都是或多或少的缺陷,我们需要由搜索引擎+nosql+redis等方案配合,来完成很多的场景。

我们需要对性能有一个结论:要求5秒内的,基本不适合用这种大数据SQL方案手段来做。需要借助更昂贵的数据库,或者等待开源技术成熟。

时间: 2024-08-27 13:18:34

老钱说大数据(1)----大数据OLAP与OLTP分析的相关文章

大数据落地的大挑战,明略数据在老环境中寻找新路径

"大数据"一词进入了十九大报告中,报告提出要"推动互联网.大数据.人工智能和实体经济深度融合".换句话说,就是要把大数据这样的先进技术,落地到实际的行业应用和业务场景中,对实体经济发挥真正的作用,创造实在的价值. 从2015年起,"大数据"一词就被移出了Gartner的新兴技术炒作曲线.然而,据有关统计,截至2017年8月初,我国大数据领域有183家企业获得融资,其中A轮81家.天使轮51家,也就是72%的大数据企业仍处于创业初期,商业模式仍有待

上篇 | 大数据公司挖掘数据价值的49个典型案例(值得收藏)

导读:本文是近年来不同行业.不同领域的大数据公司的一些经典案例总结.尽管有些已经是几年前的案例,但其中的深层逻辑对于未来仍有启发. 本文力图从企业运营和管理的角度,梳理出发掘大数据价值的一般规律:一是以数据驱动的决策,主要通过提高预测概率,来提高决策成功率:二是以数据驱动的流程,主要是形成营销闭环战略,提高销售漏斗的转化率:三是以数据驱动的产品,在产品设计阶段,强调个性化:在产品运营阶段,则强调迭代式创新. 01 上篇:天然大数据公司的各种套餐 从谷歌.亚马逊.Facebook.LinkedIn

大数据公司挖掘数据价值的49个典型案例!信息量很大

大数据公司挖掘数据价值的49个典型案例 对于企业来说,100条理论确实不如一个成功的标杆有实践意义,本文的主旨就是寻找"正在做"大数据的49个样本. 力图从企业运营和管理的角度,梳理出发掘大数据价值的一般规律:一是以数据驱动的决策,主要通过提高预测概率,来提高决策成功率;二是以数据驱动的流程,主要是形成营销闭环战略,提高销售漏斗的转化率;三是以数据驱动的产品,在产品设计阶段,强调个性化;在产品运营阶段,则强调迭代式创新. 上篇 天然大数据公司的各种套餐 从谷歌.亚马逊.Facebook

大数据公司挖掘数据价值的49个典型案例

对于企业来说,100条理论确实不如一个成功的标杆有实践意义,本文的主旨就是寻找“正在做”大数据的49个样本.力图从企业运营和管理的角度,梳理出发掘大数据价值的一般规律: 一是以数据驱动的决策,主要通过提高预测概率,来提高决策成功率;二是以数据驱动的流程,主要是形成营销闭环战略,提高销售漏斗的转化率;三是以数据驱动的产品,在产品设计阶段,强调个性化;在产品运营阶段,则强调迭代式创新. 上篇 天然大数据公司的各种套餐 从谷歌.亚马逊.Facebook.LinkedIn,到阿里.百度.腾讯,都因其拥有

记录一次MySQL两千万数据的大表优化解决过程,提供三种解决方案

问题概述 使用阿里云rds for MySQL数据库(就是MySQL5.6版本),有个用户上网记录表6个月的数据量近2000万,保留最近一年的数据量达到4000万,查询速度极慢,日常卡死.严重影响业务. 问题前提:老系统,当时设计系统的人大概是大学没毕业,表设计和sql语句写的不仅仅是垃圾,简直无法直视.原开发人员都已离职,到我来维护,这就是传说中的维护不了就跑路,然后我就是掉坑的那个!!! 我尝试解决该问题,so,有个这个日志. 方案概述 方案一:优化现有mysql数据库.优点:不影响现有业务

大数据与传统数据

小编说:在这个人人都说大数据的时代,许多人对大数据的印象只是停留在仰望的阶段,其实大数据没人们说得那么神奇.玄乎或者是无所不能,今天我们就以传统数据作为比对,看看大数据究竟有什么特点让其处于时代的浪潮之巅. 本文选自<从1开始--数据分析师成长之路>. 大数据与传统数据相比的主要特点可以概括为:数据量"大".数据类型"复杂".数据价值"无限".  数据量大十分好理解,以前我们存储数据使用的单位是 KB,一个Excel表格也就几十到几百

不要让大数据成大窥探

上段时间万维网之父Sir Tim Berners-Lee出席一活动,就互联网隐私.大数据谈了一些个人看法.他称,提高对用户隐私的保护,对互联网来说很有必要,因为人们有权看清他们的数据将如何被使用.他还表示,提供个人数据访问通道的机制可以促成"富数据"而非"大数据"的结果. 他以个人病例为例进行了说明.他说,个人病例应该能够让医生和亲人看到,但是肯定不应该让保险公司以及其他人看到.对于Sir Tim Berners-Lee的言论和观点,笔者是非常赞同的.借此也顺便&q

北风网 零基础到数据(大数据)分析专家-首席分析师

详情请交流  QQ  709639943 00.北风网 零基础到数据(大数据)分析专家-首席分析师 00.快速上手JMeter 00.Jmeter 00.2017年Java web开发工程师成长之路 00.R语言速成实战 00.R语言数据分析实战 00.Python+Django+Ansible Playbook自动化运维项目实战 00.Java深入微服务原理改造房产销售平台 00.Python3入门机器学习 经典算法与应用 00.老司机学python篇:第一季(基础速过.机器学习入门) 00.

【大数据】大数据时代--网络数据与科学的时代

大数据_大数据时代_大数据概念_网络大数据 随着大数据时代的来临,大数据也吸引了越来越多的关注.网络大数据(http://www.raincent.com)整合了大数据,大数据概念,大数据处理,大数据分析,cdn,cdn加速,idc,网络测量,网络监测,网络安全测量,网站性能监测,行业分析报告,行业研究报告,免费行业报告等服务为一体,力争打造中国最大的网络大数据中心. 这两个词最早出现是在上世纪90年代.按照当时的解释,大科学时代主要是指单打独斗的时代结束了,要搞集团军式的科研.也有一种说法是,