论文部分内容阅读
科学技术的进步带动了信息获取手段的发展,人们获得的空间数据也大幅增多。如何能够充分、有效地利用这些空间数据,是学术界和商业界都在积极思考的问题。并行计算对于提高大规模任务处理速度非常有效,而并行计算系统性能的好坏很大程度上取决于其任务调度,好的任务调度策略不但能够提高任务响应速度和系统吞吐率,也能提高整个集群资源的利用率。因此,对并行计算环境下GIS数据空间分析的任务调度技术进行研究具有很重要的现实意义。云计算是当前炙手可热的并行计算,其开源的分布式并行编程框架Hadoop实现了MapReduce并行编程模型,是目前已得到广泛应用的云计算软件平台。本论文对云计算Hadoop平台下GIS空间分析的任务调度问题进行了研究。主要研究工作如下:在GIS空间分析的并行化处理方面:以基于空间分析操作算子distance()(?)勺空间分析应用为例,用MapReduce并行编程模型实现了并行GIS空间分析编程。在并行GIS空间分析的任务调度方面:总结了云计算环境下任务调度的特点,分析了Hadoop自带的及其他一些常见的调度策略的优点和不足,并通过进一步的探索,提出了基于数据局部性的改进FIFO调度策略。在论文的最后,搭建了Hadoop实验平台,并使用WKT格式表达GIS几何对象,使用CSV文件中的单行表示GIS数据类型,使之适用于Hadoop平台。通过实验对Hadoop处理GIS空间分析作业的性能、以及改进调度算法的性能进行了验证。实验结果表明:Hadoop在处理大型GIS空间分析作业时表现出优于单机环境的性能;本文提出的基于数据局部性的改进FIFO调度算法能使节点的数据本地性得到提高,进而减小通信代价,提高作业的平均响应速度,减少作业的整体执行时间。