浅谈大数据相关产学研实践后思考
发布时间:2014-02-21 作者: 信息来源:中国行业研究网 提供者:熊曼君
程学旗先生是中科院计算所副总工、研究员、博士生导师、网络科学与技术重点实验室主任。本次程学旗带来了中国大数据生态系统的基础问题方面的内容分享。大数据的发展越来越快,但是对于大数据的认知大都还停留在最初的阶段——大数据是一类资源、一类工具,其实“大数据”更多的体现的是一个认知和思维,是一种战略、认知和文化。
一年多来,通过组织中国大数据技术大会、CCF大数据学术会议以及各类大大小小的应用峰会与学术论坛,结合我们科学院网络数据科学与技术重点实验室所承担的与大数据相关的重大基础课题研究以及与情报分析、互联网数据分析相关的应用开发实践,我谈谈自己的一些思考。
今天引导性讨论的内容可以包括三大块,包括:对大数据的再认识、引擎平台系统支撑下的大数据分析技术、建立大数据产学研生态环境的基础性问题思考。
1、关于大数据的再认识
大数据是一个宽泛的概念,见仁见智。关于大数据的概念,当前比较普遍使用的定义都与维基百科中的描述类似:“大数据,指的是所涉及的资料量规模巨大到无法透过目前主流软件工具,在合理时间内达到撷取、管理、处理、并整理成为帮助企业经营决策更积极目的的资讯”。而这类定义的一个明显的局限是仅仅从大数据的计算机处理视角给出的关于大数据的一个特点描述。
我们知道,对一门学科的认识,往往是从分类开始的。就像达尔文提出进化论,原始的动机就是将从全世界观察到的动物和植物进行划分,形成体系。在分类体系上进行提炼,最终形成了一个全新的世界观和认识论。我们现在所关注的网络大数据、金融大数据、科学大数据等相关领域的问题,正像欧洲文艺复兴开始的的时候那样,从不同领域观察现象,挖掘价值,而最终我们可能能够发现本质,形成全新的“数据认识论”,从而产生本质性的价值效应。
我个人认为,“大数据”更多的体现的是一个认知和思维,它与钱学森先生提倡的“大成智慧学”的要义非常接近。钱老将“大成智慧”翻译成“WisdominCyberspace”,强调“必集大成,才能得智慧”。大数据从内涵来看的四个V的特性,体现出来的是大量的“零金碎玉”,相互之间还有关联性和作用力,但是局部看都非常零散、价值不明显。所以有了数据,不等于就有价值、出智慧,出智慧的关键在“集”。大数据中包括的全部事实、经验、信息都是“集”的对象和内容。采集到的原始数据往往是些没有什么逻辑,不一定能直接用现在掌握的科学技术解释,需要集成融合各个侧面的数据,才能挖掘出前人未知的大价值。每一种数据来源都有一定的局限性和片面性,事物的本质和规律隐藏在各种原始数据的相互关联之中。只有融合、集成各方面的原始数据,才能反映事物的全貌。开展大数据研究和应用,因此,大数据不仅仅是一类资源、一类工具,而是一种战略、认知和文化,要大力推广和树立“数据方法论”、“数据价值观”。
当然,我们既要抬头看路,更要脚踏实地。因此,在大数据概念满天飞的时候,我们既要抓住时机,挖掘价值,还要思考本质,不在混乱的时候迷失方向!
从业界来看,当前大数据系统有三个明显的特点与我们2013年底发布的十大趋势相关!
【1】大数据的高效深度分析需要专用化的系统
在应用数据快速增长的背景下,为了降低成本获得更好的能效,大数据系统需要逐渐摆脱传统的通用技术体系,趋向专用化的架构和处理技术。这方面,国内百度、阿里巴巴和腾讯三大互联网巨头做出了尝试并取得了很好的效果。众所周知,百度的大数据典型应用是中文搜索,阿里巴巴的大数据典型应用是基于交易日志分析的数据服务,腾讯的大数据典型应用是图片数据存储和基于用户行为的广告实时推荐。百度去年底成立专门的大数据部门,旨在深度挖掘大数据的价值。阿里巴巴已将不同业务部门的大数据技术整合在一起为数据产品提供统一的服务。腾讯的数据平台部正在将全公司的数据纳入统一管理平台。阿里巴巴在技术上与开源社区结合得最为紧密;腾讯大数据目前正在向开源技术靠拢;百度在技术层面偏好自行研发,包括软硬件定制化方案也是最先投入实用。技术上,他们的共同之处是,不再依赖传统的IOE,而基于开源系统(如Hadoop等)开发面向典型应用的大规模、高通量、低成本、强扩展的专用化系统。
【2】大数据处理架构多样化模式并存
当前,克隆了Google的GFS和MapReduce的ApacheHadoop自2008年以来逐渐被互联网企业所广泛接纳,并成为大数据处理领域的事实标准。但2013年出现的Spark作为一匹黑马终结了这一神话,大数据技术不再一家独大。由于应用不同导致Hadoop一套软件系统不可能满足所有需求,在全面兼容Hadoop的基础上,Spark通过更多的利用内存处理大幅提高系统性能。此外,Scribe、Flume、Kafka、Storm、Drill、Impala、TEZ/Stinger、Presto、Spark/Shark等的出现并不是取代Hadoop,而是扩大了大数据技术的生态环境,促使生态环境向良性化和完整化发展。今后在非易失存储层面、网络通信层面、易失存储层面和计算框架层面还会出现更多、更好和更专用化的软件系统。
【3】实时计算逐步受到业界关注
Google于2010年推出了Dremel,引领业界向实时计算迈进。实时计算是针对MapReduce这种批量计算的性能问题提出的,可分为流式计算和交互式分析计算两种模式。在大数据背景下,流式计算源于服务器日志的实时采集,如Facebook开源的Scribe是分布式日志收集系统,ApacheFlume是类似的系统。ApacheKafka是高吞吐率的分布式消息系统,特点是高通量和容错。Storm是容错的分布式实时计算系统,可以可靠的处理流式数据并进行实时处理,单机性能可达到百万记录每秒。Storm可集成ApacheKafka作为其队列系统。作为批量计算的补充,交互式分析计算的目标是将PB级数据的处理时间缩短到秒级。ApacheDrill是开源的Dremel实现,虽已有应用但尚不成熟。由Cloudera主导的Impala也参照Dremel实现,同时还参考了MPP的设计思想,目前已经接近实用阶段。Hortonworks主导开发了TEZ/Stinger,TEZ是运行在YARN(Hadoop2.0的资源管理框架)上的DAG计算框架,而Stinger是下一代的Hive。2013年底,由Facebook开源的Presto分布式SQL查询引擎可对250PB以上的数据进行交互式分析,比Hive的性能高出10倍。类似的Shark是Spark上的SQL执行引擎,得益于Shark的列存储和Spark的内存处理等特性,Shark号称可以比Hive的性能提高100倍。