一种基于Storm的分布式实时增量计算框架的研究与实现

被引量 : 0次 | 上传用户:dayu1215
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
互联网的普及、智能手机的广泛使用,给海量数据分析处理技术带来了新的挑战。传统的单机处理方法需要几天甚至几月的时间来处理海量数据,而分布式计算通过把复杂计算任务的子集分配给多台计算机协作完成,从而提高了计算效率。在批处理场景中广泛应用的是Hadoop平台的MapReduce框架。MapReduce应用广泛的原因之一在于它的易用性,它提供了一个因高度抽象化而变得异常简单的编程模型。Hadoop的设计理念主要针对大批量数据处理场景,它在处理大规模数据集时具有良好的吞吐量,但是不适合实时性要求较高的场景。任务的启动和磁盘读写花费了较多的时间,导致Hadoop的计算需要秒级的延迟。在实时处理场景中Twitter公司开发的Storm框架表现不错,Storm是个实时的、分布式以及具备高容错的计算系统。正在发展的Storm Trident对Storm进行了批处理的封装,但是Storm Trident的编程模型较复杂,不易使用,中间数据的传递存在内存溢出的风险,Trident不能对状态进行Checkpoint方式的容错,而且状态存在分布式不一致的风险。本文研究了分布式并行处理技术,提出了一种基于Storm的分布式增量计算框架,具有编程模型简单、计算时延小、高效容错等优点。主要工作如下:(1)抽象Storm较底层的原语,提出并设计了一种基于Storm的MapReduceMerge增量计算模型。开发者可以轻易的从MapReduce模型过渡到MapReduceMerge模型。(2)设计Map到Reduce批计算模式的数据传递,并处理Reduce的数据溢出。使用Push和自主协调的方式来改善中间数据传递的实时性。采用散列因子来均衡各批次的任务分配,从而提高在数据倾斜情况下的系统吞吐量。(3)采用Checkpoint的容错机制来降低Merge状态容错对计算性能的影响。使用间隔批次的检查点方案,以出错后恢复时间的增加来换取正常计算性能的提升。使用异步的数据存储能在计算资源充足时不干扰正常计算,使用数据的多版本来保证分布式环境的一致性。(4)使用内存Snapshot来保证Merge状态计算的偏序和幂等,并能避免数据的反复计算,从而降低计算失败时的重做花费时间。设计主节点与计算节点的协作来保证Checkpoint的全序。为了验证本文框架的实时和易用等优点,搭建了分布式计算环境,编写了实例,选择并构建MapReduce和Storm进行对比。测试结果证明,本文所提出的框架提高了分布式增量计算的实时性,并且能在不牺牲性能的情况下完成增量结果的容错。
其他文献
现代企业提高效率和效益的必由之路是集约化管理。电力体制改革使电力产业价值链发生变化,电网企业面临诸多市场主体的压力,而更多的还是管理上的挑战。在实现电网企业集约化
关于小篆的生成,历来存在着很多不同的观点,本文试图从李斯等人对小篆生成的贡献以及小篆与籀文、小篆与大篆、籀文与大篆等方面的关系出发,对小篆的形成作出一个较客观的评
2009年底,希腊政府的财政赤字和公共债务占国内生产总值的比例严重超出《马斯特里赫特条约》规定的上限,其财政状况恶化,世界三大评级机构标准普尔,穆迪和惠誉相继下调希腊的
随着航空航天技术的发展,飞机、发动机、航天器及运载系统的各种振动、结构动力学和噪声问题日益突出。动态信号分析仪是噪声和振动分析、模型分析、电子设计及声学测试的主
本论文研究了近红外光谱分析技术在线检测核壳结构乳胶粒子的几何尺寸(核层、壳层和核壳间过渡层厚度)的快速分析方法。以苯丙乳液聚合体系为研究对象,通过控制核壳和壳层聚
随着互联网经济和网络技术的迅猛发展,一种有别于传统虚拟货币的新型开源型货币-比特币诞生。在不到7年的时间里,比特币已经初步形成了较为完整产业链和市场,成为赤手可热的
随着知识经济的不断发展,企业之间的竞争越来越激烈。越来越多的企业认识到人才是企业发展的核心竞争力。如何吸引、激励、保留人才,是企业面临的一大难题。企业要想留住人才
从有极分子的电偶极矩与电场相互作用的微观机制出发,讨论了电介质的极化现象,计算了有极分子的电偶极矩与转动能级随外电场的变化情况.
以苯酚和对苯二甲醇为单体、浓盐酸为催化剂,经Friedel—Crafts烷基化反应合成了苯酚-芳烷基型树脂。利用傅里叶变换红外光谱、核磁共振、凝胶渗透色谱等技术分别对产物的结构