论文部分内容阅读
近年来,农产品安全问题屡见不鲜,已经引起了社会广泛关注,农产品安全监管体系的构建迫在眉睫。通过农村信息化监管平台的建设可以有效地对农产品安全进行监管,传统的相关技术在后端采用单节点数据库的方式对监管数据进行采集与处理,遇到海量数据时处理和响应速度都变得非常慢,很难突破当前对农产品监管过程中遇到的性能瓶颈。因此,将当下云计算的相关技术应用于农产品监管平台之上并系统地提出对构建基于云计算的农产品安全监管平台的整体框架的优化成了文本需要重点研究的问题。 在所有的云计算平台中,Hadoop是最流行的开源云平台架构,其核心技术分布式存储系统和分布式处理框架分别实现了Google云平台中的GFS和MapReduce,它们分别具有对海量数据进行存储和处理的功能。平台监管着大量的农产品,而面对各种各样的的多个安全指标以及的生产环境等进行相应的数据采集,会产生大量的数据,Hadoop是云计算平台中的佼佼者,平台采用Hadoop大大提高了平台的稳定性和安全性。但该平台由于设备更新等原因会处于异构状态,作业无法按时完成,消耗平台资源。为了解决异构环境下的资源调度问题,对比LATE、SAMR等异构调度算法,SAMR调度策略表现出了对异构环境更好的处理能力。SAMR通过历史信息进行学习对节点以及任务的类型进行划分,但是该调度策略沿用了静态时间预测模型,使得该调度算法在时间预测上存在这不足。通过强化对历史信息学习,从而对节点的能力进行等级的划分,并动态更新节点能力从而对时间进行动态的预测。 同时,随着用户的实时性要求的增加,分布式计算的实时调度的难点不仅在于作业实时调度的模型,而且又要考虑到数据的本地性。而对于平台分布式处理框架中的Map端的本地化都是默认实现的,而对于Reduce端的数据本地化却被忽略了,使得作业的完成时间超出预期。为了解决异构环境下数据本地化,采用资源预取与延迟调度相结合并且根据节点的能力,对Reduce端进行节点预选、任务预选和资源预选。而实验结果表明基于该策略的Reduce端执行时间优于其他调度算法。 通过研究集群的异构性,本文提出了一种基于节点能力分类算法,用于划分集群中不同能力的节点。在节点分类算法的基础上,结合节点类型任务类型以及延迟预取技术完成数据本地化,最终提出了对SAMR的改进算法(Improvement of MapReduee adaptive algorithm,IAMR)。IAMR为了实现动态预测任务时间,提出了一种任务剩余时间评估模型;进一步为了实现Reduce本地化,结合了延迟预取技术。通过实验表明IAMR提高了平台上作业的执行效率,降低平台资源的消耗。本文的研究为农产品安全预警体系的高效运行提供了一定的技术层面的支撑。