大数据热点技术综述

(整期优先)网络出版时间:2017-12-22
/ 2

大数据热点技术综述

谢志良

广东省电信规划设计院有限公司广东广州510630

摘要:在信息时代的发展过程中,大数据技术已经成为人们关注的关键性技术,只有不断的对这项技术进行研究与创新,才能够顺应时代发展的潮流,促进信息时代社会的发展。本文将对大数据技术中的几项热点技术进行阐述,并对这些技术的发展进行展望。

关键词:大数据;文件系统;计算框架

1引言

在如今社会的发展中,大数据技术已经成为信息时代应用最为广泛的技术之一,以至于引起了大部分人的关注。大数据就是指不能够使用人工或计算机在合理的时间内进行截取、处理与管理,并将其整理为人类可读的信息,这类数据能够应用于人们日常生产与生活中的各个领域中,尤其是在科研领域应用更加广泛。一般情况下,人们无法从巨大数量的数据中发现其中存在的关系,而应用大数据技术,就可以快速发现这些关系,以便人们对其进行深入的研究。

2大数据热点技术概述

大数据也称巨量数据或大资料等,是通过人工或计算机,利用适当的时间进行截取、管理以及处理与整理,成为我们能够解读的形式的信息,这类数据在商业模式的探究、疾病预测、交通运输以及学研究领域,例如基因科学、生物工程中发挥巨大的作用。通常,我们在面对大数据时,很难直接的了解这些数据的因果关系,但是,通过大数据相关技术,我们可以更加容易地发现数据间的关系,有助于对这些关系进行研究。大数据具有规模大、速度快、形态多、识别难与价值密度低的特点,只有提高数据存储效率与处理速度,才能提高大数据的利用率。因此,Google、Amazon与Apache等公司分别开始从实际需求入手,提出了大数据相关文件系统、计算框架、数据库系统、机械学习等热点技术。

3大数据文件系统综述

3.1基于存储的分布式文件系统

分布式文件系统就是文件系统管理中存储的资源不一定与本地节点直接相连,而是通过网络与这些节点相连。分布式文件系统需要以网络为基础,由于数据规模过大、数据结构相对复杂,造成大数据被访问的频率较高,对操作系统中的文件系统提出来巨大的挑战。为了解决这一问题,Google公司研发了GFS文件系统,这种系统能够实现Web环境下大规模数据的处理,其开源版本HDFS支持TB级以上的数据,可以在普通硬件的基础上支持数据的一次写入、多次读取。HDFS使用的架构为主/从架构,一个HDFS集群由一个Namenode与一组Datanodes构成。其中Namenode为中心服务器,其功能就是对文件系统中的名字空间与客户端对文件的访问进行管理,而一个Datanode通常是一个节点,负责对其自身所在节点的存储进行管理。

3.2基于分布式内存的文件系统

在大数据技术的发展过程中,对实时计算的需求正在不断增加,造成分布式内存计算逐渐成为热点话题,怎样能够实现大量数据的实时计算,并且进一步提升离线批处理速度逐渐成为人们研究的重点问题。固态硬盘等存储设备的出现与发展,大幅度的增加了内存吞吐量,但是,磁盘吞吐量仍然增长缓慢,只有实现利用内存文件代替磁盘文件,才能够有效的提高系统运行效率。为了解决这一问题,AmpLab研发了Tachyon系统,这个系统是具有高容错能力的分布式内存文件系统,其设计宗旨就是满足目前对“低延迟”数据处理的要求。Tachyon能够在内存中完成缓存文件的处理,并且能够实现将文件以访问内存的速度完成共享,其吞吐量是HDFS的100多倍。Tachyon架构底层分布式存储与上层的计算间的中间件,能够将不需要存储到DFS的文件存入分布式内存文件系统中,以提高处理效率、减少内存冗余与垃圾回收时间等。

3.3数据文件格式

在文件系统的发展中,如何对大数据中存在的冗余进行妥善的管理是关键性问题。在以往的数据管理过程中,数据有两种布局方式,即为行式存储与列式存储。其中行式存储可以将不同种类的数据混合在一起并连续的存储,这种存储方式不利于提高数据压缩率,就会造成占用的存储空间更大。而列式存储则无法保证同一数据的全部字段在一个节点上存储,在重构数据时将在网络中大量的数据传输,会消耗大量的性能,导致查询速度缓慢慢。目前大数据系统中采用的存储方式一般为将行式存储与列式存储互相结合,发挥各自的优势。Hive推出的RCFile是面向列的数据格式,其运用“先按列划分,再垂直划分”的设计理念,在进行查询时,如果遇到不关心的列,就会自动上跳过这些列。不仅能够保证数据的全部字段都可以在一个节点上,具有较高的压缩率,而且在读取过程中不会读取不需要的数据,提高读取效率。

4大数据计算框架综述

在不同的应用中,大数据的计算框架主要有针对历史静态数据的批处理框架、针对快速流式数据的处理框架以及针对交互式计算的处理框架等。

4.1批处理框架

在数据量大幅的的提高后,只有提高数据处理效率,才能够促进企业的发展。为了解决这一问题,Google公司推出了MapReduce编程模型,这种编辑模型能够提供简洁的分布式、并发程序开发接口,将大量的计算分布执行,不需要考虑进程、线程与数据访问等方面的问题,释放重复通信带来的压力。其编程模式为:输入键-值对—处理键-值对—产生新键-输出。MapReduce用2个阶段表示这一框架:第一,Map阶段:调用函数,处理输入的键-值对,产生新的中间键-值对。第二,Reduce阶段:调用函数处理上一个Map输出的中间键-值对,与这个中间键相关的值集合。MapReduce能够提供较好的容错机制,容错粒度包括JobTracker、TaskTracker等级别。目前,典型的MapReduce框架主要有Google公司的批处理系统与Hadoop,Hadoop在工业中已经获得了广泛的应用。

4.2流式处理框架

在信息量不断增加的情况下,人们对信息的实时性有了更高的需求,例如应急监控系统,需要实现多个数据源的实时监控,如果出现紧急情况,必须及时进行预警并快速反应,一旦没有把握好时机,就会产生意想不到的后果。所以,这类系统必须具备高性能、低延迟、可扩展等方面的特点。为了满足这些需求,BackType开发了Storm框架,这种框架Storm属于分布式的实时计算系统。在系统中,Spout能够将输入流数据传递到Bolt中,Bolt以指定的方式对数据进行处理,Storm实际上就是由Bolt组成的处理链,每个Bolt都需要对数据进行相关的处理。Storm框架的模型简单、容错性强,能够对消息进行快速、可靠的处理,这种处理框架已经在大部分的IT公司中用于流处理。

4.3交互式计算框架

Google公司的MapReduce与Hadoop能够实现大型集群并行数据的处理。但是,这些工具仍然存在不足之处,实现不同引擎间的动态共享难度较大,而迭代式计算性能不足,对相关数据的研究效率较低。为了解决这些问题,开发了Spark大数据处理框架。这种框架新的数据存储概念RDD,以解决Hadoop处理数据迭代性能不足与数据共享难度大等问题。RDD实际上实现了并行计算各阶段的数据共享,RDD是一个具有只读属性的分区记录集合,是基于稳定物理存储与其他已有的RDD上的性操作而创建的。Spark可以在批处理、交互式查询、实时流处理、机器学习以及图处理过程中应用,并且能够方便地与其他的开源产品融合。

5结束语

总而言之,在大数据的应用过程中,其热点技术都是为了解决现实应用中存在的问题,在不同的行业内获得了广泛的认可与应用,为大数据在各行业内的应用提供了更好的条件,促进了行业的发展。随着业务需求的变化,大数据热点技术将不断变化和发展。

参考文献:

[1]孙大为,张广艳,郑纬民.大数据流式计算:关键技术及系统实例[J].软件学报.2014(04)

[2]程学旗,靳小龙,王元卓,郭嘉丰,张铁赢,李国杰.大数据系统和分析技术综述[J].软件学报.2014(09)

[3]孙少陵,钱岭,石在辉.“热”发展中大数据的冷思考[J].信息通信技术.2017(02)

[4]李国杰,程学旗.大数据研究:未来科技及经济社会发展的重大战略领域——大数据的研究现状与科学思考[J].中国科学院院刊.2012(06)