论文部分内容阅读
自地理信息系统(Geographic Information System,GIS)问世以来,它伴随着IT(Information Technology)等技术的迅速发展而得到长足和全方位的进步。GIS应用不仅局限于地学领域,还扩展到其他多个领域。然而,随着其应用领域不断扩展,GIS逐渐面临如何为这些应用提供高性能的存储、获取以及计算处理能力的问题。这些应用主要包括:(1)诸如数据挖掘,知识发现,多维态、多时相动态GIS;(2)诸如飞行模拟、虚拟地理环境(VGE)等需要GIS快速提供实际地形的可视化类应用;(3)对时间要求非常苛刻的应用,如应急服务决策、实时军事指挥等;(4)WebGIS高性能服务应用(由于网络、服务器性能以及提供GIS服务软件本身的限制,WebGIS在应对大量并发用户访问、大数据量GIS算法处理等复杂情况,其服务性能往往不尽人意)。
上述应用往往存在海量数据处理、复杂的分析模型以及实时等需求,从而造成处理过程中高密集的计算和I/O操作(intensive computation and I/O intensive)。由于计算机硬件本身性能不可能无限提升,并且这类GIS应用会随着GIS应用领域的不断扩展而变得更为突出。传统GIS由于其计算平台、体系结构等局限,使得GIS应用面临严峻的计算性能瓶颈问题。
随着并行计算技术的不断成熟,它也被应用到地学计算领域。针对上述问题,结合并行计算技术的并行GIS(parallel GIS)算法或高性能GIS(high performanceGIS)服务的相关研究应运而生。这类研究主要集中在利用高性能计算手段,如并行计算技术来解决这类GIS应用中的高密集计算量问题,从而达到处理功能或服务的高效性。
然而已有研究往往囿于少数具体的并行GIS算法之上,并未探讨结合具体的GIS软件如何在高性能计算平台上实现整体并行的相关理论与技术方法,以及利用并行GIS软件提供高性能GIS服务的相关研究。这是本文研究的初始动力与主要目的。
可见,如何赋予GIS高性能的计算处理能力,并能提供高性能的GIS服务,不仅是GIS发展面临的问题,也是高性能地学计算领域比较关注的问题。显然,这些挑战需要我们以一种有别于传统研究的途径展开,以克服传统并行GIS研究的局限性。
目前并行计算实现的主要手段,是采用基于集群系统(cluster)的硬件系统和MPI软件开发包相结合的模式。考虑到可实现性因素,本文采用将开源GIS软件运行在cluster上,并对该软件各类典型GIS算法实现并行的方案。为此,本文提出基于cluster的并行GIS系统这一概念,即将基于cluster的并行计算手段运用到具体的GIS软件环境中,力图解决GIS应用中的高密集计算问题。借助具体的开源GIS软件--GRASS GIS,按照上述方案展开研究,主要内容如下:
1)由于并行GIS与传统GIS的计算平台的不同,从而造成其计算模式也发生改变,并对其体系结构以及数据结构产生影响。为此,本文探讨基于cluster的并行GIS的计算模式(PGCM)、体系结构以及与之适应的并行GIS数据结构(PGDS)与处理模型等;
2)按照上述并行架构,以GRASS GIS为研究对象,充分利用GRASS GIS的多用户工作环境(MURE),提出GRASS GIS在cluster上的并行化模式:多用户数据并行模式(MUDPP)、GRASS GIS算法并行模式(GGAPP)以及双重并行模式(DPP)。这些并行构建模式可以将不同类型的GIS算法分类并行化,取得比传统GIS算法较高的加速比(Speed-up)和较好的效率(Efficiency),从而形成GRASS GIS的并行功能模块;
3)结合已有GRASS GIS框架,对各类模块重新整合,以形成可以兼容串行/并行运行方式的软件框架(PGSF),从而初步实现一个基于cluster的并行GIS原型系统;
4)针对SIG中高性能GIS服务需求,利用上述并行GIS算法模块,探讨如何实现高性能GIS服务的技术途径。