高性能GIS研究進展及評述

左堯,王少華,鐘耳順,蔡文文

1. 北京超圖軟件股份有限公司,北京 100015;2. 超圖地理信息技術研究所,北京 100015;3. 中國科學院地理科學與資源研究所,北京 100101

論文來源:《地球信息科學學報》第19卷 第4期

摘要:互聯(lián)網(wǎng)技術的發(fā)展使地理信息技術得到了前所未有的發(fā)展和應用,地理信息計算呈現(xiàn)出計算速度快、運行效率高、應用多樣化的發(fā)展特征。而隨著計算機硬件性能飛速提升,傳統(tǒng)的 GIS 數(shù)據(jù)處理方式并不能與之匹配,各種缺陷與弊端逐漸顯現(xiàn),亟待更高效的數(shù)據(jù)處理方式。

關鍵詞: 高性能GIS,高性能GIS算法,并行GIS計算,內(nèi)存計算,眾核計算,GIS云計算

1 引言

互聯(lián)網(wǎng)時代來臨,使地理信息技術得到前所未有的應用、推廣和發(fā)展,地理信息計算呈現(xiàn)出計算速度快、運行效率高、應用多樣化的發(fā)展特征。隨著計算機技術的發(fā)展,以分布式、并行化為代表的高性能計算技術正逐漸融入到地理信息領域,如何利用高性能計算的新型硬件體系結構帶來的計算性能提升,解決現(xiàn)有時空數(shù)據(jù)密集、計算密集和通訊密集問題成為 GIS 領域的熱點問題[1-4]。為此,基于并行集群計算技術等的高性能計算[5-9],研究新一代高性能 GIS 系統(tǒng)十分重要。它可以有效地為時空大數(shù)據(jù)集存儲、可視化、空間分析和數(shù)據(jù)服務帶來新的解決方案。

高性能計算是基于一組或幾組計算機系統(tǒng)組成的集群,通過網(wǎng)絡連接組成超級計算系統(tǒng)以加強數(shù)據(jù)處理、分析計算性能的一種技術[10-12]。而高性能 GIS 則利用高性能計算的理論體系、技術架構和數(shù)據(jù)模型等對 GIS 已有的性能進行擴充和增強,從而方便、快捷地實現(xiàn)海量空間數(shù)據(jù)的高性能讀寫,使 GIS 系統(tǒng)更高效地為地理空間信息科學領域中的計算、數(shù)據(jù)、通信密集型的科學問題的解決提供技術支撐[13-17]。其高性能表現(xiàn)在:更龐雜的地理空間數(shù)據(jù)計算,更復雜、多類型的 GIS 模型與算法,處理時間更短[18-21]。

目前,主流的 3 大分布式計算系統(tǒng)包括 Ha-doop,Spark 和 Storm[22-25]。Hadoop 基于 MapReduce分布式計算框架,其核心技術在于通過分布式架構實現(xiàn)性能提升。而 GIS 空間分析常常需要對研究區(qū)進行空間劃分,進一步細劃為地貌特征更加統(tǒng)一的計算單元,利用 Hadoop 的分布式特性及 MapRe-duce 分布式存儲,可極大地提高 GIS 空間分析性能[26-27]。但由于存儲硬件條件的限制,在處理更新快速的 GIS 模型時,則稍顯不足。Spark 是另一種重要的分布式計算系統(tǒng),它基于分布式存儲集(RDD)的概念,利用計算機內(nèi)存來存儲數(shù)據(jù),因而具有更快速的數(shù)據(jù)讀寫功能[28]。相比于 Hadoop, Spark 的優(yōu)勢在于僅需導入一次數(shù)據(jù)即可實現(xiàn)多次迭代運算,具有更快的運行效率;缺點在于不適合處理需要長時間保存的數(shù)據(jù),如果計算環(huán)境發(fā)生電力中斷故障,即會造成數(shù)據(jù)丟失。Storm 并不直接收集數(shù)據(jù),而是通過網(wǎng)絡節(jié)點實現(xiàn)數(shù)據(jù)傳輸、處理。其優(yōu)勢在于處理流式數(shù)據(jù)時,無需進行數(shù)據(jù)收集和作業(yè)調(diào)度,而可以直接進行分析,更適應在線的實時GIS大數(shù)據(jù)處理[29-30]。

2 研究現(xiàn)狀

當前 GIS 發(fā)展的重要趨勢是服務化、云端一體化,亟待研發(fā)高效的高性能 GIS 關鍵技術[31-32]。其中,分布式并行技術的應用顯著提高了 GIS 空間分析效率,隨著內(nèi)存計算、高性能算法等先進技術的不斷進步,大大加速了高性能 GIS 技術體系的發(fā)展[33-34]。此外,二三維一體化也是當前 GIS 發(fā)展的一大趨勢。隨著硬件成本降低,顯卡性能提升,眾核技術的應用加速了三維 GIS 的發(fā)展[35-36]。因此,本研究將主要從高性能 GIS算法、并行GIS計算、內(nèi)存計算和眾核計算4個方面對高性能 GIS 的發(fā)展進行總結和歸納(圖1)。

2.1 高性能GIS算法

高性能技術出現(xiàn)不久,就開始應用于地理信息領域[37-39]。作為高性能并行 GIS 系統(tǒng)中的一個重要的組成部分,高性能 GIS 算法基于利用向量機和并行計算技術形成的高性能計算系統(tǒng),對海量地理空間數(shù)據(jù)進行實時處理的空間算法,使原本難以計算的全球尺度、長時間尺度的地理空間現(xiàn)象分析模擬得以實現(xiàn)。已有許多學者開始了相關技術研究,如Turton 等[40]研究了職工上下班交通數(shù)據(jù)分析,原本在工作站需要運行 91 h的雙約束地理計算模型,在內(nèi)存共享模型中執(zhí)行并行計算后僅需 3 min,極大地提高了效率。

隨著 IT 技術的不斷進步,高性能 GIS 算法的研究主要分為2個方面:① 對已存在的高密度計算進行并行化處理,利用高性能 GIS 技術對全局性的海量時空數(shù)據(jù)進行地學分析和推演,探索構建新的空間模型等;② 探索新的空間分析方法,并不斷賦予新的內(nèi)涵。具有代表性的空間分析算法有:神經(jīng)網(wǎng)絡模型、遺傳算法模型、元胞自動機模型等[41-45]。這2 個方面各有側重,前者側重于從技術層級提供計算行的優(yōu)化處理,提升運行效率;后者則通過模型、算法,進一步尋找更加高效、便捷的空間分析方法,通過專業(yè)地理信息領域模型達到提高分析效率的目的。

以往,高性能計算常常需要一臺高 CPU、大容量的計算機完成大量計算,這樣勢必繁瑣。近年來,研究人員開始基于一組或幾組計算機組成的高性能計算機集群,計算機之間通過網(wǎng)絡進行連接,對海量 GIS 數(shù)據(jù)進行并行處理和高性能計算,增加了部署的靈活性?;?MapReduce 計算架構的Hadoop 有簡潔的并行計算模型,可對原本串行算法進行快速改造,以適應并行計算等高性能算法[46-47]。目前,這方面研究主要集中在 GIS 空間分析算法上。例如,Cary 等[48]基于 MapReduce 實現(xiàn)了部分GIS 算法,并構建了R樹;Chen 等[49]基于 Hadoop 研究設計實現(xiàn)了高性能地理計算框架。這些研究方法為進一步開展高性能算法研究提供了參考。

在并行空間數(shù)據(jù)結構組織方面,高效的空間數(shù)據(jù)劃分策略有助于合理的空間數(shù)據(jù)組織存儲,可大大提升空間分析的性能。


更多內(nèi)容請點擊下方的PDF下載