论文部分内容阅读
随着信息时代的逐步推进,科学工作流得到了广泛的应用。特别是在科研领域的应用更是广泛,如天文学,高性能物理学等。由于科学工作流需要的数据规模很大,为了执行科学工作流,不仅需要很大的存储空间,而且还需要有很强的计算能力和数据共享能力。随着科研任务的日渐复杂和科研问题的日益多样化,如何确保科学工作流的高效执行已成为业界重要研究的问题。云计算是基于网格计算、并行计算和分布式计算等的一种新型计算模式,其为科学工作流提供了一种更好的数据处理方案。云环境有巨大的存储空间和很强的计算能力,但是运用云计算解决科学工作流问题仍然存在许多新的挑战。云计算平台是由多个数据中心所组成,数据存放在它的各个数据中心。随着科学工作流的日益复杂,巨量的数据需要在各个数据中心之间进行传输和交换,这将导致任务执行效率的低下。因此,如何实现更好的数据布局,以显著减少数据的移动规模和移动数据所带来的时间消耗成为了一个崭新的研究课题。本文研究的主要问题是数据布局策略,以此优化云环境执行科学工作流的效率。首先,针对目前已经提出的基于聚类算法的布局策略进行仿真分析。由于已有的聚类算法仅考虑了数据集规模的大小,没有考虑数据中心之间带宽的情况。所以当移动数据规模较大而带宽较小时,任务执行效率将明显下降。本文在数据集移动的规模和带宽对数据布局优化影响的基础上,设计了改进的基于聚类的数据布局策略。改进的聚类算法先基于数据之间的数据依赖程度进行数据的初始化布局;接着在任务执行阶段综合考虑带宽的对性能的影响,对任务进行合理调度;最后对中间生成的新数据进行优化布局,从而提高系统的综合性能。仿真结果证明,改进后的聚类策略能有效减少数据移动的规模和移动数据所消耗的时间。随后提出了两阶段的数据布局策略TSDPS (Two stages of data placement strategy),根据布局数据的不同在各个阶段分别采用相应的算法进行布局。在初始化阶段采用启发式遗传算法,综合考虑到数据之间依赖度和整个云环境的负载均衡,设计了合理的适应度函数,对初始化数据优化布局;在运行时阶段则采用启发式K-Means算法,同时考虑了带宽的影响以及执行任务所带来的数据移动的时间消耗,并对所产生的数据进行布局。通过仿真结果证明,本文所提出的算法有效的减少了移动数据消耗的时间和使整个云环境实现了更好的负载均衡。