張勇,張雙雙,李新雙,陳文典,趙東
(1.成都市勘察測繪研究院,四川 成都 610081; 2.四川省城市信息化測繪工程技術研究中心,四川 成都 610081;3.成都市城市地下空間勘察和數字化測繪工程技術研究中心,四川 成都 610081)
隨著經濟社會發展和自然資源機構改革后管理需求變化,地理數據種類不斷增多,多源、多尺度數據不斷涌現,數據更新工作量大、更新頻率加快、更新難度提升,對地理數據生產組織和管理提出了更高要求。
測繪數據生產管理單位和GIS廠商在地理數據生產技術上進行了長期研究,并取得豐碩的研究成果,但由于地理數據生產范圍擴展、數據源較多、數據量龐大、更新頻率加快等因素,在實際生產中急切需要協同作業,提高作業效率的方法。目前主流的地理數據協同生產方法是采用ArcSDE結合關系型數據庫的方式,實現對空間數據和屬性數據進行統一管理,為多用戶提供版本化數據訪問、協同編輯等服務[1~3]。其中關系型數據庫提供遵循OGC標準的空間數據管理方法,支持標準的T-SQL[4],具有操作通用、簡單、運行高效的特點。
本文立足地理實體數據生產和更新工作,分析了常規生產模式的局限性,提出了基于空間數據庫驅動的地理數據協同生產應用方案,通過研究數據協同生產應用,分析空間數據引擎結構,并基于數據庫觸發器和T-SQL函數研究空間數據庫變化監測、數據規整處理等提升生產效率的方法,為地理數據協同生產提供強有力的技術支撐。
常規的地理數據生產模式采用文件系統構建的地理數據庫,分庫進行地理數據生產更新作業,如圖1所示,該模式在作業前期需對數據分區裁剪,后期需對分區成果進行合并接邊,從成果質檢到返工作業等環節均需花費大量時間,無法發揮數據庫的優勢,不適合海量級地理數據生產管理。在大范圍、多用戶的作業環境下傳統生產模式無法滿足多用戶共享、安全性、完整性、一致性、并發控制等要求[5]。

圖1 常規生產模式示意圖
協同生產環境采用客戶端/服務器模式作為應用架構,客戶端基于ArcMap軟件進行數據生產、質檢和管理,服務器基于ArcSDE空間數據引擎和SQL Server數據庫基礎平臺,提供版本化數據訪問、編輯等服務。同時,結合數據庫觸發器和T-SQL函數對空間數據引擎結構進行優化,擴展要素新增、編輯、刪除操作監聽函數,實現要素變化信息自動記錄,擴展幾何圖形規整函數和屬性規整函數,達到海量地理數據快速規整的目的。應用架構如圖2所示:

圖2 基于空間數據庫驅動的地理數據協同生產應用架構圖
基于SQL Server數據庫觸發器技術[8],對空間數據引擎結構進行優化,創建新增、編輯、刪除操作監聽函數,在服務器端實現對點、線、面要素的空間位置和要素屬性變化進行監測并記錄。要素新增監測實現新增的數據轉存到變化庫,并記錄操作人、客戶端IP、時間等操作信息;要素編輯監測實現編輯的數據轉存到變化庫,并判讀要素空間變化或屬性變化,記錄變化類型和操作信息;要素刪除監測實現刪除的數據轉存到變化庫,并記錄操作信息。要素變化監測實現核心方法如下:
(1)判斷數據新增、編輯、刪除操作類型,如下所示:

(2)獲取操作人、客戶端IP信息,如下所示:

(3)通過地理數據庫Next_RowID過程,將變化要素表作為輸入參數,返回OBJECTID字段的下一個值,如下所示:

(4)通過SQL Server Spatial提供的STEquals()方法進行編輯前后空間數據比較,判斷要素空間位置是否變化,若空間位置未變則判斷屬性變化內容,如下所示:

在地理數據生產過程中存在固定屬性賦值、幾何圖形修復、幾何圖形屬性計算等數據規整操作。SQL Server Spatial提供了基于OGC標準的空間數據存儲和地理操作,采用.Net CLR與SQL內核集成,無須經過ArcSDE層的數據存取、網絡傳輸環節,可直接進行數據查詢、統計、分析,通過SQL Server Spatial在地理數據庫中定義幾何圖形規整函數和屬性規整函數,實現海量地理數據快速規整。部分數據庫擴展函數如表1所示:

表1 部分數據庫擴展的函數
成都市勘察測繪研究院利用數據庫驅動的地理數據協同生產技術,對成都市面積約 14 300 km2范圍內的二維地理實體數據庫進行協同更新、變化信息庫生產。項目更新要素主要包括交通、居民地、水系、植被等7大類53個圖層,更新數據源包括每季度衛星影像、多測合一竣工成果、1∶500/1∶2000 DLG等,數據量大小約 5 GB,要素個數約 1 300萬條記錄,更新頻率為每季度一次,共4次。通過協同生產模式,極大提高了數據生產效率,滿足項目多數據源、高頻率和大數據量的應用需求。
本項目生產過程中摒棄了數據分區裁剪、成果合并接邊等生產環節,采用多人協同的生產模式(如圖3所示),實時動態呈現作業進度,為項目順利完成提供保障。

圖3 生產流程圖
通過協同生產基礎環境的搭建,實現生產和質檢可同步進行、可多人協同的質檢模式(如圖4所示),可以及時發現和解決問題,保障成果質量。

圖4 協同質檢模式示意圖
利用要素變化監測環境自動提取初步變化信息(如圖5所示),并結合FME程序將變化要素與變化前后的數據庫分別進行判斷,區分新增、刪除及不變要素,生產最終的變化庫成果。經過質量檢查,數據變化記錄正確,無要素遺漏,符合變化庫生產相關規定。

圖5 要素更新變化記錄示意圖
基于空間數據庫驅動的地理數據協同生產應用方案,通過對地理數據生產技術和流程的優化,實現生產質檢一體化、多人協同的生產與質檢的模式,能有效地提升地理數據生產效率,滿足當前地理數據高效生產與更新的要求。