使用缓存的分布式迭代应用编程框架研究

来源 :中国科学院大学 | 被引量 : 0次 | 上传用户:sddhyyj
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着互联网的发展,分布式应用的需求不断增长。从MapReduce产生开始,各种数据并行的分布式计算系统层出不穷,如Microsoft的Dryad,Google的Pregel,UC Berkeley的Spark。针对不同的分布式应用需要构建不同的计算框架以支持其运算。现在的分布式应用根据特征可以划分成许多种类,如迭代式、分布式流处理、数据仓库应用、图计算等。其中迭代式计算作为重要的大数据分析应用,在分布式应用当中广泛出现,也是其他许多应用的基础。  Hadoop/MapReduce作为一个广泛使用分布式计算系统,能够有效地处理许多大数据批处理作业。MapReduce在作业的输入与输出上需要与分布式文件系统(Distributed File System)的交互。在MapReduce上实现迭代计算时,计算会被分解成多个作业并按作业依存关系顺序提交运行,这使得程序与DFS有多次交互。与文件系统的多次交互将影响整个程序的运行时间。在迭代程序当中对这些交互相关的数据进行缓存会减少与DFS的交互时间,从而提升程序总体的性能。在集群中,多数结点有大量内存,这些内存在多数情况下处于空闲状态,充分利用现有的内存会减少读写时间。基于上述两项观察,本文提出了一种使用内存缓存的迭代式应用编程框架MemLoop。  MemLoop是一个在HaLoop上进行扩展的分布式编程框架。HaLoop基于一个这样的假设,多数迭代程序有一些数据是在迭代体之间多次使用的(称作迭代间驻留数据),导致了不必要的性能损失,因此在本地磁盘上缓存这些数据以减少执行时间与网络带宽消耗。MemLoop基于HaLoop并主要进行了以下的扩展:1.作业提交API,在原有的HaLoop的提交API上,加入了关于依存关系的描述,将需要缓存的数据分成迭代间可驻留的数据与迭代内依存的数据。2.调度算法。除了考虑关于迭代间可驻留数据的调度之外,还考虑针对迭代内依存数据的调度。3.缓存管理模块。在每个TaskTracker管理一个文件在结点上的缓存的生存周期。通过对三个方面的扩展,MemLoop充分利用内存以减少存取的时间,提升性能。  将MemLoop框架与已有相关框架进行了比较,在一个小型的集群上运行了常见的迭代式程序。实验结果表明通过对于迭代程序的依存关系的描述与内存的缓存,MemLoop能够有效地提升迭代程序的性能。
其他文献
在该论文中,采用空间数据库实现技术对非空间OLAP进行集成的方法来研究空间OLAP,提出了一个由空间和非空间的维和度量组成的空间数据仓库模型,并研究空间数据立方体以及基于
本文主要介绍通用报表工具控件ReportCtrl的设计与实现。具体内容如下: 首先,文中概要地讲述了报表工具的发展概况,分析了开发通用报表工具的一般性需求,并提出了通用报表工具
根据2000年科技型中小企业技术创新基金重点项目,沈阳工业大学特种电机研究所以开发高性能的电机设计软件为核心,立项开发电机CAD开发平台。由于作者完成的是电机CAD开发平台的部分模块,本文以永磁同步电动机二维动态电磁场软件为主题,通过对原有软件的各个模块进行详细的分析,以所涉及的共性的关键问题为主要研究内容,在以下几个方面进行了研究。 首先,由于原有的电磁场计算程序都以计算静态电磁场为主体,
该文首先介绍了蓝牙技术的概念,蓝牙系统的技术特点及该课题的研究背景.接着详细描述了蓝牙协议,蓝牙应用模型和LT-90掌上电脑蓝牙文件传输应用软件所采用的HCI功能规范.然后
网络流量分类是指如何识别网络流(flow)的应用或应用类型的研究课题。通过识别网络流的应用类型,可进一步研究不同应用的流量特性,实现有针对性的网络资源优化配置。传统上基于
本论文构造了一个轨道仿真软件,介绍了轨道仿真软件的设计思想和实现过程。轨道仿真程序核心部分是轨道计算,本文首先介绍了轨道动力学基础,包括轨道摄动问题,以及飞行器姿态控制
演化计算是模拟自然界生物演化过程产生的启发式优化策略与技术.由于它具有稳健性、通用性等优点和自组织、自适应、自学习等智能特征,已广泛应用于许多领域.该文主要研究了
多传感器数据融合是现代CI系统中的一项关键技术,在军事和民用方面有着极为广泛的应用背景,是目前科技界的一个热门研究领域.该文对多传感器数据融合中几个关键技术进行了较
彩色图象分割是智能交通系统工程中视频检测技术的重要组成部分,本论文为图象分割技术的应用探索切实可用的方法。论文对彩色图象分割算法的研究进行了三个步骤的工作:1、色彩
该篇论文是根据作者在台湾DLINK公司成都研发中心实习期间开发Linux-based Two Port Router(LTPR)项目的辅助项目“基于ARM7TDMI芯片和uCliunx系统的软件调试器”而写成的.论文