近期由中关村大数据产业联盟举办的“大数据100分”线上研讨会中,南大通用的CTO、资深业界专家武新博士同众多网友分享了底层数据处理技术的发展趋势和正在经历的巨大变革。如下为分享实录:数据库
大数据这个领域过去5年发展很快、热度很高,可是总的来讲目前还在起步阶段。本次研讨会我会先谈谈数据,以及大数据对数据处理技术的压力,而后为你们分享一下为何这几年数据处理技术上的创新不少。服务器
1. 数据价值的发现与使用架构
在大数据的4个V中,最显著的特征应该是Value(价值)。无论数据多大,是什么结构,来源如何,能给使用者带来价值的数据是最重要的数据。并发
我跟数据打了20多年的交道,历来没感受到搞数据的地位有今天这么高。整个社会对数据的认知变了,大数据最大的贡献至少是让社会各个层面开始认识到数据的重要性,包括最高领导和底层的老百姓。分布式
目前你们基本达成共识:数据像石油、煤同样是宝贵的资产,其内在的价值很是巨大。另一个显著的贡献无疑是互联网企业对于数据的巧妙使用和价值体现。高并发
2. 数据处理技术的回顾oop
互联网的数据“大”是不争的事实,如今分析一下数据处理技术面临的挑战。目前除了互联网企业外,数据处理领域仍是传统关系型数据库(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数据库。
图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,。这就对数据分析平台对数据的分析能力和性能提出了新的要求和挑战。
图2将来大数据处理的核心技术
8. 总结——新型MPP数据库的价值
技术:基于列存储+MPP架构的新型数据库在核心技术上跟传统数据库有巨大差异,是为面向结构化数据分析设计开发的,可以有效处理PB级别的数据量。在技术上为不少行业用户解决了数据处理性能问题。
用户价值:新型数据库是运行在x-86 PC服务器之上的,能够大大下降数据处理的成本(1个数量级)。
将来趋势:新型数据库将逐步与Hadoop生态系统结合混搭使用,用MPP处理PB级别的、高质量的结构化数据,同时为应用提供丰富的SQL和事务支持能力;用Hadoop实现半结构化、非结构化数据处理。这样可同时知足结构化、半结构化和非结构化数据的处理需求。
下图是南大通用正在作的大数据处理平台架构图,将逐步把MPP与Hadoop技术融合在一块儿,为用户提供透明的数据管理平台。
图3 MPP与Hadoop技术融合的产品架构图