大数据处理模式的发展趋势

近几年来,由于大数据处理和应用需求急剧增长,同时也由于大数据处理的多样性和复杂性,针对以上的典型的大数据计算模式,学术界和工业界不断研究推 出新的或改进的计算模式和系统工具平台。目前主要有以下三方面的重要发展趋势和方向:Hadoop性能提升和功能增强,混合式大数据计算模式,以及基于内 存计算的大数据计算模式和技术

1.Hadoop性能提升和功能增强

尽管Hadoop还存在很多不足,但由于Hadoop已发展成为目前最主流的大数据处理平台、并得到广泛的使用,因此,目前人们并不会抛弃 Hadoop平台,而是试图不断改进和发展现有的平台,增加其对各种不同大数据处理问题的适用性。目前,Hadoop社区正努力扩展现有的计算模式框架和 平台,以便能解决现有版本在计算性能、计算模式、系统构架和处理能力上的诸多不足,这正是目前Hadoop2.0新版本“YARN”的努力目标。目前不断 有新的计算模式和计算系统出现,预计今后相当长一段时间内,Hadoop平台将与各种新的计算模式和系统共存,并相互融合,形成新一代的大数据处理系统和 平台。

2.混合式计算模式

现实世界大数据应用复杂多样,可能会同时包含不同特征的数据和计算,在这种情况下单一的计算模式多半难以满足整个应用的需求,因此需要考虑不同计算模式的混搭使用。

混合式计算模式可体现在两个层面上。一个层面是传统并行计算所关注的体系结构与低层并行程序设计语言层面计算模式的混合,例如,在体系结构层,可根 据大数据应用问题的需要搭建混合式的系统构架,如MapReduce集群+GPU-CUDA的混合,或者MapReduce集群+基于MIC(Intel Xeon Phi众核协处理系统)的OpenMP/MPI的混合模型。

混合模型的另一个层面是以上所述的大数据处理高层计算模式的混合。比如,一个大数据应用可能同时需要提供流式计算模式以便接收每天产生的大量流式数 据,这些数据得到保存后成为历史数据,此时会需要提供基于SQL或NoSQL的数据查询分析能力以便进行日常的数据查询分析;进一步,为了进行商业智能分 析,可能还需要进行基于机器学习的深度数据挖掘分析,此时系统需要能提供线下批处理计算模式以及复杂机器学习算法的迭代计算模式;一些大数据计算任务可能 还直接涉及到复杂图计算或者间接转化为图计算问题。因此,很多大数据处理问题都需要有多种混合计算模式的支持。此外,为了提高各种计算模式处理大数据时的 计算性能,各种计算模式都在与内存计算模式混合,实现高实时性的大数据查询和计算分析。

混合计算模式之集大成者当属UC Berkeley AMPLab研发、现已成为Apache开源项目的Spark系统,其涵盖了几乎所有典型的大数据计算模式,包括迭代计算、批处理计算、内存计算、流式计 算(Spark Streaming)、数据查询分析计算(Shark)以及图计算(GraphX),提供了优异的计算性能,同时还保持与Hadoop平台的兼容性。

3.内存计算

为了进一步提高大数据处理的性能,目前已经出现一个基本共识,即随着内存成本的不断降低,内存计算将成为最终跨越大数据计算性能障碍、实现高实时高 响应计算的一个最有效的技术手段。因此,目前越来越多的研究者和开发者在关注基于内存计算的大数据处理技术,不断推出各种基于内存计算的计算模式和系统。

内存计算是一种在体系结构层面上的解决方法,因此可以适用于各种不同的计算模式,从基本的数据查询分析计算,到批处理计算和流式计算,再到迭代计算 和图计算,都可以基于内存计算加以实现,因此我们可以看到各种大数据计算模式下都有基于内存计算实现的系统,比较典型的系统包括SAP公司的Hana内存 数据库、开源的键值对内存数据库Redis、微软公司的图数据计算系统Trinity、Apache Spark等。

;