三种最典型的大数据存储技术路线

近期由中关村大数据产业联盟举办的“大数据100分”线上研讨会中,南大通用的CTO、资深业界专家武新博士同众多网友分享了底层数据处理技术的发展趋势和正在经历的巨大变革。以下为分享实录:

大数据这个领域过去5年发展很快、热度很高,但是总的来说目前还在起步阶段。本次研讨会我会先谈谈数据,以及大数据对数据处理技术的压力,然后为大家分享一下为什么这几年数据处理技术上的创新很多。

1. 数据价值的发现与使用

在大数据的4个V中,最显著的特征应该是Value(价值)。不管数据多大,是什么结构,来源如何,能给使用者带来价值的数据是最重要的数据。

我跟数据打了20多年的交道,从来没感觉到搞数据的地位有今天这么高。整个社会对数据的认知变了,大数据最大的贡献至少是让社会各个层面开始认识到数据的重要性,包括最高领导和底层的老百姓。

目前大家基本达成共识:数据像石油、煤一样是宝贵的资产,其内在的价值非常巨大。另外一个显著的贡献无疑是互联网企业对于数据的巧妙使用和价值体现。

2. 数据处理技术的回顾

互联网的数据“大”是不争的事实,现在分析一下数据处理技术面临的挑战。目前除了互联网企业外,数据处理领域还是传统关系型数据库(RDBMS)的天下。传统RDBMS的核心设计思想基本上是30年前形成的。过去30年脱颖而出的无疑是Oracle公司。全世界数据库市场基本上被Oracle,IBM/DB2,Microsoft/SQL Server 垄断,其他几家市场份额都比较小。SAP去年收购了Sybase,也想成为数据库厂商。有份量的独立数据库厂商现在就剩下Oracle和Teradata。开源数据库主要是MySQL,PostgreSQL,除了互联网领域外,其他行业用的很少。这些数据库当年主要是面向OLTP交易型需求设计、开发的,是用来开发人机会话应用为主的。这些传统数据库底层的物理存储格式都是行存储,比较适合数据频繁的增删改操作,但对于统计分析类的查询,行存储其实效率很低。在这些成熟的数据库产品中,有2个典型特例:一个是Teradata,一个是Sybase IQ。

Teradata一开始就使用MPP(Massive Parallel Processing)架构,以软硬一体机的产品方式提供给客户,其定位是高端客户的数据仓库和决策分析系统,Teradata在全世界的客户只有几千个。在这个数据分析高端市场上,Teradata一直是老大,在数据分析技术上Oracle和IBM打不过Teradata。Sybase IQ是一款最早基于列存储的关系型数据库产品,其定位跟Teradata类似,不过是以软件方式销售的。Teradata和Sybase IQ在数据分析应用上的性能其实都比Oracle,DB2等要普遍好。

3. 数据增长加速,数据多样化,大数据时代来临

如果说现在是大数据时代了,其实是数据来源发生了质的变化。在互联网出现之前,数据主要是人机会话方式产生的,以结构化数据为主。所以大家都需要传统的RDBMS来管理这些数据和应用系统。那时候的数据增长缓慢、系统都比较孤立,用传统数据库基本可以满足各类应用开发。

互联网的出现和快速发展,尤其是移动互联网的发展,加上数码设备的大规模使用,今天数据的主要来源已经不是人机会话了,而是通过设备、服务器、应用自动产生的。传统行业的数据同时也多起来了,这些数据以非结构、半结构化为主,而真正的交易数据量并不大,增长并不快。机器产生的数据正在几何级增长,比如基因数据、各种用户行为数据、定位数据、图片、视频、气象、地震、医疗等等。

所谓的“大数据应用”主要是对各类数据进行整理、交叉分析、比对,对数据进行深度挖掘,对用户提供自助的即席、迭代分析能力。还有一类就是对非结构化数据的特征提取,以及半结构化数据的内容检索、理解等。

传统数据库对这类需求和应用无论在技术上还是功能上都几乎束手无策。这样其实就给类似Hadoop的技术和平台提供了很好的发展机会和空间。互联网公司自然就选择能支撑自己业务的开源技术了,反过来又推动了开源技术的快速发展。

4. 新的数据处理技术、产品和创新

为了应对数据处理的压力,过去十年间在数据处理技术领域有了很多的创新和发展。除了面向高并发、短事务的OLTP内存数据库外(Altibase, Timesten),其他的技术创新和产品都是面向数据分析的,而且是大规模数据分析的,也可以说是大数据分析的。

在这些面向数据分析的创新和产品中,除了基于Hadoop环境下的各种NoSQL外,还有一类是基于Shared Nothing架构的面向结构化数据分析的新型数据库产品(可以叫做NewSQL),如:Greenplum(EMC收购),Vertica(HP 收购),Asterdata(TD 收购),以及南大通用在国内开发的GBase 8a MPP Cluster等。目前可以看到的类似开源和商用产品达到几十个,而且还有新的产品不断涌出。一个有趣的现象是这些新的数据库厂商多数都还没有10年历史,而且发展好的基本都被收购了。收购这些新型数据库厂商的公司,比如EMC、HP,都希望通过收购新技术和产品进入大数据处理市场,是新的玩家。SAP除了收购Sybase外,自己开发了一款叫HANA的新产品,这是一款基于内存、面向数据分析的内存数据库产品。

这类新的分析型数据库产品的共性主要是:

架构基于大规模分布式计算(MPP);硬件基于X86 PC 服务器;存储基于服务器自带的本地硬盘;操作系统主要是Linux;拥有极高的横向扩展能力(scale out)和内在的故障容错能力和数据高可用保障机制;能大大降低每TB数据的处理成本,为“大数据”处理提供技术和性价比支撑。

总的来看,数据处理技术进入了一个新的创新和发展高潮,机会很多。这里的主要原因是一直沿用了30年的传统数据库技术遇到了技术瓶颈,而市场和用户的需求在推动着技术的创新,并为此创造了很多机会。在大数据面前,越来越多的用户愿意尝试新技术和新产品,不那么保守了,因为大家开始清晰地看到传统技术的瓶颈,选择新的技术才有可能解决他们面临的新问题。

现在的总体趋势是在数据量快速增长、多类数据分析并存的需求压力下,数据处理技术朝着细分方向发展,过去30年一种平台满足所有应用需求的时代已经过去。我们必须开始根据应用需求和数据量选择最适合的产品和技术来支撑应用。世界数据处理市场格局正在发生革命性的变化,传统数据库(OldSQL)一统天下变成了OldSQL+NewSQL+NoSQL+其他新技术(流、实时、内存等)共同支撑多类应用的局面。在大数据时代,需要的是数据驱动最优平台和产品的选择。

5. MPP关系型数据库与Hadoop的非关系型数据库

大数据存储技术路线最典型的共有三种:

第一种是采用MPP架构的新型数据库集群,重点面向行业大数据,采用Shared Nothing架构,通过列存储、粗粒度索引等多项大数据处理技术,再结合MPP架构高效的分布式计算模式,完成对分析类应用的支撑,运行环境多为低成本PC Server,具有高性能和高扩展性的特点,在企业分析类应用领域获得极其广泛的应用。

这类MPP产品可以有效支撑PB级别的结构化数据分析,这是传统数据库技术无法胜任的。对于企业新一代的数据仓库和结构化数据分析,目前最佳选择是MPP数据库。

id="iframe_0.08653575438074768" src="data:text/html;charset=utf8,%3Cimg%20id=%22img%22%20src=%22http://www.d1net.com/uploadfile/2014/0418/20140418045201489.png?_=5166795%22%20style=%22border:none;max-width:673px%22%3E%3Cscript%3Ewindow.onload%20=%20function%20()%20%7Bvar%20img%20=%20document.getElementById('img');%20window.parent.postMessage(%7BiframeId:'iframe_0.08653575438074768',width:img.width,height:img.height%7D,%20'http://www.cnblogs.com');%7D%3C/script%3E" frameborder="0" scrolling="no" style="border-style: none; width: 600px; height: 370px;">

图1 MPP架构图

第二种是基于Hadoop的技术扩展和封装,围绕Hadoop衍生出相关的大数据技术,应对传统关系型数据库较难处理的数据和场景,例如针对非结构化数据的存储和计算等,充分利用Hadoop开源的优势,伴随相关技术的不断进步,其应用场景也将逐步扩大,目前最为典型的应用场景就是通过扩展和封装Hadoop来实现对互联网大数据存储、分析的支撑。这里面有几十种NoSQL技术,也在进一步的细分。对于非结构、半结构化数据处理、复杂的ETL流程、复杂的数据挖掘和计算模型,Hadoop平台更擅长。

第三种是大数据一体机,这是一种专为大数据的分析处理而设计的软、硬件结合的产品,由一组集成的服务器、存储设备、操作系统、数据库管理系统以及为数据查询、处理、分析用途而特别预先安装及优化的软件组成,高性能大数据一体机具有良好的稳定性和纵向扩展性。

6. 数据仓库的重要性

在互联网高速发展之前,无论是电信运营商,还是大银行,保险公司等都花费了巨额资金建立了自己的企业级数据仓库。这些仓库主要是为企业决策者生成企业的一些关键指标(KPI),有的企业有几千张、甚至上万张KPI报表,有日表,周表,月表等等。这些系统有几个主要特征:

技术架构主要基于传统RDBMS + 小型机 + 高端阵列 (就是大家说的IOE),当然数据库有部分DB2,Teradata等。

报表基本都是固定的静态报表,产生的方式是T+1 (无法即时产生)。

数据量增长相对缓慢,DW的环境变化很少。

最终用户只能看汇总的报表,很少能够基于汇总数据做动态drilldown (钻取)。

多数领导基本上认为花了很多钱,但看不出是否值得做,有鸡肋的感觉。最后大家对大量的报表都视而不见了。

这类系统属于“高富帅”,是有钱的企业给领导用的。

最后,目前多数企业和部门根本就没有数据仓库。其实大家对传统数据的分析还没做得太好、还没有普及,现在又遇上了大数据。

数据仓库对企业是真正有用的,其关键还是如何把数据用好。

7. 数据处理技术的核心问题到底是什么?

其实我们一直面临着数据处理中最核心、最大的问题,那就是性能问题。性能不好的技术和产品是没有生命力的。数据处理性能问题不是因为大数据才出现,也不会有了大数据技术而消失。处理性能的提升将促进对数据价值的挖掘和使用,而数据价值挖掘的越多、越深入,对处理技术要求就越高。

目前的数据仓库只能满足一些静态统计需求,而且是T+1模式;也是因为性能问题,运营商无法有效构造超过PB级别的大数据仓库,无法提供即席查询、自助分析、复杂模型迭代分析的能力,更无法让大量一线人员使用数据分析手段。

今天如果做“大数据”数据仓库,运营商面临的挑战比上个10年要大的多。目前没有单一技术和平台能够满足类似运营商的数据分析需求。可选的方案只能是混搭架构,用不同的分布式技术来支撑一个超越PB级的数据仓库系统。这个混搭架构主要的核心是新一代的MPP并行数据库集群+ Hadoop集群,再加上一些内存计算、甚至流计算技术等。

大数据需要多元化的技术来支撑。当前数据处理对企业的挑战越来越大,主要是下面几个原因:

第一个原因是数据量已经是上一代的一个数量级了,1个省份级运营商1年就可超越1PB结构化数据。

第二个原因是“大数据”关注的更多是用户行为、群体趋势、事件之间的相关性等,而不仅仅是过去的KPI,。这就对数据分析平台对数据的分析能力和性能提出了新的要求和挑战。

id="iframe_0.47427594964392483" src="data:text/html;charset=utf8,%3Cimg%20id=%22img%22%20src=%22http://www.d1net.com/uploadfile/2014/0418/20140418045202409.png?_=5166795%22%20style=%22border:none;max-width:673px%22%3E%3Cscript%3Ewindow.onload%20=%20function%20()%20%7Bvar%20img%20=%20document.getElementById('img');%20window.parent.postMessage(%7BiframeId:'iframe_0.47427594964392483',width:img.width,height:img.height%7D,%20'http://www.cnblogs.com');%7D%3C/script%3E" frameborder="0" scrolling="no" style="border-style: none; width: 600px; height: 427px;">

图2未来大数据处理的核心技术

8. 总结——新型MPP数据库的价值

技术:基于列存储+MPP架构的新型数据库在核心技术上跟传统数据库有巨大差别,是为面向结构化数据分析设计开发的,能够有效处理PB级别的数据量。在技术上为很多行业用户解决了数据处理性能问题。

用户价值:新型数据库是运行在x-86 PC服务器之上的,可以大大降低数据处理的成本(1个数量级)。

未来趋势:新型数据库将逐步与Hadoop生态系统结合混搭使用,用MPP处理PB级别的、高质量的结构化数据,同时为应用提供丰富的SQL和事务支持能力;用Hadoop实现半结构化、非结构化数据处理。这样可同时满足结构化、半结构化和非结构化数据的处理需求。

下图是南大通用正在做的大数据处理平台架构图,将逐步把MPP与Hadoop技术融合在一起,为用户提供透明的数据管理平台。

id="iframe_0.4103654359932989" src="data:text/html;charset=utf8,%3Cimg%20id=%22img%22%20src=%22http://www.d1net.com/uploadfile/2014/0418/20140418045202128.png?_=5166795%22%20style=%22border:none;max-width:673px%22%3E%3Cscript%3Ewindow.onload%20=%20function%20()%20%7Bvar%20img%20=%20document.getElementById('img');%20window.parent.postMessage(%7BiframeId:'iframe_0.4103654359932989',width:img.width,height:img.height%7D,%20'http://www.cnblogs.com');%7D%3C/script%3E" frameborder="0" scrolling="no" style="border-style: none; width: 480px; height: 443px;">

图3 MPP与Hadoop技术融合的产品架构图

三种最典型的大数据存储技术路线相关推荐

  1. 【大数据存储技术】第8章 其他NoSQL数据库

    文章目录 第8章 其他NoSQL数据库 8.1 图数据库简介 8.2 Neo4j 8.2.1 Neo4j 简介 8.2.2 Neo4j 的安装与实践 8.3 Redis和内存数据库 8.3.1 内存数 ...

  2. 2.3大数据存储技术

    大数据存储技术面向的是海量.异构数据,因此,它需要提供高性能.高可靠的存储和访问能力.本节将介绍大数据存储技术的概率和原理,包括Hadoop分布式文件系统(HDFS).列式数据库(HBase)和其他数 ...

  3. 大数据存储技术方案介绍

    2019独角兽企业重金招聘Python工程师标准>>> 大数据存储方案 Cap思想 分布式领域CAP理论, Consistency(一致性), 数据一致更新,所有数据变动都是同步的 ...

  4. 大数据存储技术之KUDU学习总结/快速入门

    KUDU学习总结 1 基础概念 官方:https://kudu.apache.org/ 在 KUDU 之前,大数据主要以两种方式存储: • 静态数据:以 HDFS 引擎作为存储引擎,适用于高吞吐量的离 ...

  5. 【大数据存储技术】思考题及参考答案

    文章目录 第1章 绪论 1. NoSQL和关系型数据库在设计目标上有何主要区别? 2. 简要总结一下NoSQL数据库的技术特点. 第2章 NoSQL数据库的基本原理 1. 描述分布式数据管理的特点. ...

  6. 大数据存储技术期末复习

    单选题 1.以下关于云计算.大数据和物联网之间的关系,论述错误的是: A.物联网可以借助于云计算实现海量数据的存储 B.物联网可以借助于大数据实现海量数据的分析 C.云计算.大数据和物联网三者紧密相关 ...

  7. 大数据存储技术期末复习(自用)

    一.题型 1. 判断题(20*2) 2. 简答题(3个*10) 3. 设计题(2个*15) 二.往年题目 三.知识点 (1)CAP理论 1.定义 一致性C:所有数据备份在同一时刻的值相同.读写请求是原 ...

  8. mongodb如何根据字段(数组类型)的长度排序_大数据存储技术选型(七)——MongoDB设计模式及索引优化...

    关系数据库的时代 关系数据库的设计理念 假设你有一台车,你需要给它存起来,给它找个停车位.传统数据库的存储方式就相当于,把这个车的所有零件拆下来,放在存放对应零件的盒子里,需要用的时候,再把他们取出来 ...

  9. mongodb 字符串转bson_大数据存储技术选型(六)--Mongodb专题介绍

    之前我曾有过一次mongodb的介绍,但那是年少无知,对mongo认识得不够充分,所以当时那篇专题介绍只是介绍了一个大概的轮廓就草草敷衍了事了.对此我做了深刻的反省与自我批评.接下来,今天就mongo ...

最新文章

  1. qmake 简易教程
  2. Elasticsearch 2.20入门篇:基本操作
  3. 如何保持空域与频域滤波结果的一致性
  4. Altium designer常用封装库(原理图+PCB+3D)超级全
  5. netbeans搭建安卓开发环境
  6. WenLan-10亿参数!别只玩GPT,来看看人大中科院联手打造第一个大规模多模态中文预训练模型BriVL...
  7. java getchildren用法_Java ZkClient.getChildren方法代碼示例
  8. 无法打开登录所请求的数据库 sa。登录失败。 用户 sa 登录失败。
  9. 简记mysql在tomcat下和hibernate一起使用,No suitable driver found for的问题
  10. 架构之旅~一个操作的返回要有一个标准,看我的公用消息类
  11. 随机子空间(RSM)
  12. android 自定义剪裁,Android自定义View实现照片裁剪框与照片裁剪功能
  13. 我的所有的浏览器被hao123 挟持了,终极解决方案
  14. 插上U盘显示这个错误ERROR
  15. JavaScript 实现页面内时间实时倒计时 计时器内附完整文件欢迎调用(可用于抢购倒计时,记录恋爱纪念日总时长等)输出对应的天数小时分钟秒数
  16. excel多窗口显示设置
  17. 【canvas使用】
  18. QT——可视化界面ui
  19. Android多媒体开发技术
  20. AAA认证中的RADIUS和TACACS+概述和配置

热门文章

  1. 论文阅读“XAI Beyond Classification: Interpretable Neural Clustering”
  2. Spring 入门教程
  3. mht文件的3dus-ascii编码转换
  4. 坐班族如何对抗颈椎病
  5. Vscode 快速 格式化代码
  6. 约瑟夫问题——C语言实现
  7. 猴子选王)约瑟夫环方法4种方法之一——循环数组法
  8. ImageLoader加载图片 默认方式和自定义方式
  9. 关于 MVVM和MVC的一些总结
  10. iframe参数详解