周藝霖,韓 賡,廖 琪,曹鳳麗,向 強
(1.廣東省土地調查規(guī)劃院,廣東 廣州 510075;2.自然資源部陸表系統(tǒng)與人地關系重點實驗室,廣東 廣州 510075;3.吉奧時空信息技術股份有限公司,湖北 武漢 430223)
建設國土空間規(guī)劃“一張圖”實施監(jiān)督信息系統(tǒng),形成層層疊加打開的國土空間規(guī)劃“一張圖”的核心是完成數(shù)據(jù)庫質檢、匯交和數(shù)據(jù)更新[1],進而為國土空間規(guī)劃全鏈條管理提供信息化支撐[2]。縣級總體規(guī)劃數(shù)據(jù)庫成果應由省級自然資源主管部門質檢合格后向自然資源部匯交,納入全國國土空間規(guī)劃“一張圖”系統(tǒng)[3]。因此,縣級國土空間總體規(guī)劃數(shù)據(jù)庫質檢成為當前的重點任務,國內學者對空間數(shù)據(jù)庫的研究主要集中在數(shù)據(jù)庫建庫[4-6]、質檢規(guī)則制定[7-10]與空間數(shù)據(jù)質檢軟件設計[11-15]等方面;但對短時間內完成大批量的數(shù)據(jù)庫質檢、質檢全過程留痕管理、分布式質檢技術研究等方面鮮有提及。本文以廣東省為例,為保障縣級國土空間總體規(guī)劃數(shù)據(jù)庫的完整性和準確性,開發(fā)了一種空間數(shù)據(jù)分布式質檢方法與系統(tǒng)[16],以統(tǒng)一的數(shù)據(jù)庫標準和質檢規(guī)則為基礎,研發(fā)統(tǒng)一的規(guī)劃數(shù)據(jù)庫成果質檢軟件,實現(xiàn)對縣級國土空間總體規(guī)劃數(shù)據(jù)庫成果的批量質檢和全流程管理,高效支撐國土空間規(guī)劃“一張圖”建設和運行。
1)質檢過程耗時長。執(zhí)行質檢任務時,未考慮質檢任務的編排,對硬件資源利用率較低,多線程之間的調度開銷較大;對于互斥性的質檢任務,無法并行處理,導致質檢任務耗時較長。
2)業(yè)務流程自動化程度低?,F(xiàn)有成果質檢需要人工接收數(shù)據(jù)、創(chuàng)建任務、填寫質檢成果包所屬區(qū)縣、關聯(lián)外部數(shù)據(jù)路徑;再根據(jù)質檢結果人工判斷是否合格;最后導出質檢報告,自動化程度較低。
3)容錯率低。由于所有質檢任務都在單進程內執(zhí)行,若某個線程異常將導致應用程序異常,進而使整個工作進程崩潰,需重新啟動軟件進行再次質檢。
4)部署實施工作量巨大。以廣東省縣級規(guī)劃數(shù)據(jù)質檢為例,需要檢查124 個區(qū)縣的數(shù)據(jù),且每個區(qū)縣數(shù)據(jù)存在多個版本,數(shù)據(jù)量巨大,需利用眾多的服務器資源,給軟件部署更新帶來了巨大的工作量。
用戶需求主要包括:①實現(xiàn)成果版本管理,縣級國土空間總體規(guī)劃成果存在一項成果多次提交的情況,因此需對各個版本的成果數(shù)據(jù)進行規(guī)范化管理,避免版本過多造成混亂;②實現(xiàn)批量質檢,縣級國土空間總體規(guī)劃成果存在集中在截止日期前提交和質檢的情況,質檢軟件應能在短時間內進行大批量質檢;③減少人工干預,實現(xiàn)質檢留痕,確保數(shù)據(jù)的準確性,并實現(xiàn)質檢全過程留痕,便于追溯管理;④實現(xiàn)與國檢軟件的對接,在質檢軟件中能覆蓋或直接集成調用國家檢查軟件,保障質檢成果符合國家要求;⑤與廣東省國土空間規(guī)劃“一張圖”實施監(jiān)督信息系統(tǒng)對接,以系統(tǒng)接口的方式進行集成,通過質檢軟件即可完成區(qū)縣國土空間規(guī)劃成果數(shù)據(jù)的在線匯交、審查、入庫;⑥實現(xiàn)用戶權限管理、質檢規(guī)則和方案管理、質檢任務管理、質檢結果管理、核查依據(jù)管理、成果數(shù)據(jù)管理、成果匯交入庫、數(shù)據(jù)統(tǒng)計分析等功能。
根據(jù)用戶對國土空間規(guī)劃成果數(shù)據(jù)質檢的需求,基于統(tǒng)一質檢規(guī)則和數(shù)據(jù)庫標準,本文設計的數(shù)據(jù)質檢流程見圖1。
圖1 數(shù)據(jù)質檢流程設計
軟件共設計了80余項檢查規(guī)則,涵蓋了數(shù)據(jù)完整性檢查、空間數(shù)據(jù)基本檢查、空間屬性數(shù)據(jù)標準性檢查、空間圖形數(shù)據(jù)拓撲檢查、表格數(shù)據(jù)檢查、圖數(shù)一致性檢查等一般數(shù)據(jù)質量檢查內容,還針對縣級國土空間總體規(guī)劃的業(yè)務要求設計了規(guī)劃內容方面的特色質檢規(guī)則集,主要包括:①底線落實規(guī)則集用于確保永久基本農田、生態(tài)保護紅線、耕地保護目標、城鎮(zhèn)開邊界等底線不被突破,確保國土空間安全、有序發(fā)展,具體規(guī)則為永久基本農田是否規(guī)劃為耕地、永久基本農田是否劃入農田保護區(qū)、生態(tài)保護紅線是否劃入生態(tài)保護區(qū)等;②承諾落實規(guī)則集,為保障過渡期各項工作的順利開展,廣東省制定了承諾落實的相關政策要求,因此需要轉換為質檢規(guī)則,如過渡期已備案的規(guī)劃修改方案等是否規(guī)劃為相應的建設用地、已批復的成片開發(fā)方案是否位于城鎮(zhèn)開發(fā)邊界內集中建設區(qū)或規(guī)劃為城鎮(zhèn)建設用地,已劃入城鎮(zhèn)開發(fā)邊界的開發(fā)區(qū)是否規(guī)劃為建設用地等;③已批項目規(guī)則集,為確保已批項目落實相應用地規(guī)模,制定了國家和省已批用地項目(含增減掛鉤建新區(qū))是否規(guī)劃為相應的建設用地、已批用海項目是否規(guī)劃為相應的規(guī)劃用地用海分類等規(guī)則;④規(guī)劃銜接規(guī)則集,縣級國土空間總體規(guī)劃應符合上位規(guī)劃的相關要求以及與其他專項規(guī)劃的銜接,如縣鄉(xiāng)級主體功能區(qū)定位是否符合《國家級和省級主體功能區(qū)名錄表》要求、國家級自然保護地是否做好銜接等。通過上述質檢規(guī)則的設計,確保了廣東省縣級國土空間規(guī)劃數(shù)據(jù)的數(shù)據(jù)完整、空間一致、圖數(shù)一致、指標落實、業(yè)務符合,為形成國土空間規(guī)劃“一張圖”奠定了堅實基礎。
廣東省縣級國土空間總體規(guī)劃數(shù)據(jù)庫質檢軟件采用分層模式進行設計與規(guī)劃,包括基礎層、數(shù)據(jù)層、服務層、應用層和用戶層。基礎層基于超融合HC 架構,以虛擬化技術為核心,利用aSV、aSAN、aNET、aSEC等組件將計算、存儲、網(wǎng)絡等虛擬資源融合到一臺標準服務器中,形成基準架構單元,多套單元設備可通過網(wǎng)絡聚合起來,實現(xiàn)模塊化的無縫橫向擴展(Scale-Out),形成統(tǒng)一的資源池。平臺層為應用層提供基礎的能力支撐,其中云計算管理平臺提供對深信服超融合、第三方資源池的管理和資源調配能力、自動化運維能力、快速響應能力、鏡像復制能力等,可快速復制擴展幾十臺質檢服務器,應對短時大批量質檢任務;Devops平臺提供持續(xù)集成與部署能力、自動化部署流程能力、批量腳本執(zhí)行能力等,極大地減少了運維工作量,縮短了功能上線的時間。服務層提供軟件基礎功能和業(yè)務功能的支撐,包括數(shù)據(jù)管理服務能力,即對編制成果包、指標數(shù)據(jù)、配置等進行管理;質檢任務調度服務能力,即根據(jù)國家質檢規(guī)則和省級自定義新增規(guī)則對成果包進行自動質檢、批量檢查、人工復查等;成果管理服務能力,即對質檢結果進行版本化管理。應用層為用戶對象,主要包括質檢員、復檢員、系統(tǒng)管理員等。
軟件主要用于對各區(qū)縣提交的國土空間規(guī)劃總體規(guī)劃數(shù)據(jù)庫進行質檢、成果管理和統(tǒng)計分析。其主要功能模塊包括:①質檢方案管理模塊,負責質檢規(guī)則的配置組合和質檢結果的評分管理,根據(jù)不同類型成果數(shù)據(jù)質檢需求,通過規(guī)則選取快速形成不同的數(shù)據(jù)質檢和評分方案,還負責建立方案版本管理機制,根據(jù)質檢規(guī)則的變化,建立不同版本的方案,支持對已有方案及其質檢規(guī)則的瀏覽;②質檢任務管理模塊,對區(qū)縣提交的待檢數(shù)據(jù)創(chuàng)建質檢任務,輸入關聯(lián)的行政區(qū)代碼、任務名稱等關鍵信息,確保任務與成果包一一對應,便于對任務進行管理;③質檢結果管理模塊,所有質檢規(guī)則執(zhí)行結束后,軟件會自動生成列表形式的自動檢查數(shù)據(jù)的檢查錯誤信息和待復核數(shù)據(jù)的檢查信息,圖形檢查能實現(xiàn)錯誤點信息的圖形定位,便于質檢員查找錯誤原因;④數(shù)據(jù)管理模塊,負責廣東省124 個區(qū)縣相關規(guī)劃指標、文本和圖件的集成瀏覽與查詢應用;⑤用戶權限管理模塊,主要管理數(shù)據(jù)質檢和審核相關用戶的角色和權限,為不同的用戶角色,提供不同的功能權限,具有用戶信息增、刪、改、查,用戶角色管理,角色權限配置等常見功能;⑥人機交互檢查模塊,軟件按照設定的質檢規(guī)則進行檢查并提供圖文一體的操作界面,質檢員對空間不一致、圖件成果空間不一致的錯誤信息進行手動逐項核查,尤其是需要結合紙質文件審查的指標符合性檢查;⑦指標管理模塊,對國家下發(fā)的指標進行分解和管理,包括指標導入、編輯保存等功能,在復核階段復查人員根據(jù)各行政區(qū)的指標標準,對比相關指標文件信息,人工判讀成果包中的指標,人工標記不符合指標標準的數(shù)據(jù),并說明錯誤原因;⑧成果匯交入庫模塊,區(qū)縣匯交到省級的質檢成果包由質檢系統(tǒng)統(tǒng)一接收和管理,質檢合格后則將成果納入到國土空間規(guī)劃“一張圖”中,實現(xiàn)國土空間規(guī)劃“一張圖”管理;⑨數(shù)據(jù)統(tǒng)計分析模塊,提供全省匯交成果的統(tǒng)計與分析功能,包括各區(qū)縣編制成果匯交的總體情況、指標情況、質檢過程、質檢結果問題匯總情況、質檢評分情況等。
空間數(shù)據(jù)分布式質檢技術的核心是分布式質檢架構設計(圖2),由分布式質檢集群與分布式文件存儲集群組成。分布式質檢集群調度節(jié)點包括調度引擎和監(jiān)控引擎,調度引擎會依據(jù)質檢任務調度算法和監(jiān)控引擎收集的各質檢節(jié)點任務執(zhí)行信息實現(xiàn)自動化任務調度與分配。質檢節(jié)點接收到質檢任務后,從分布式質檢存儲集群獲取質檢成果包,緩存到質檢節(jié)點本地;然后執(zhí)行質檢任務。質檢節(jié)點任務監(jiān)控輔助進程實時收集該節(jié)點任務執(zhí)行信息、CPU內存等資源使用信息,并定時反饋給質檢調度節(jié)點。若質檢執(zhí)行組件需要升級,可單獨替換質檢節(jié)點的質檢程序,不影響整體質檢裝置,有效解決了傳統(tǒng)單進程多線程模式易崩潰的問題,實現(xiàn)多任務并行質檢。
圖2 分布式質檢架構圖
采用質檢規(guī)則耗時評估工具加載樣例數(shù)據(jù),對于質檢方案中的每條質檢規(guī)則進行質檢規(guī)則耗時等級評估。接收質檢成果包,根據(jù)質檢方案、質檢規(guī)則耗時評估信息、質檢成果包數(shù)據(jù)統(tǒng)計信息生成質檢任務池,按照質檢任務耗時倒序排序,質檢調度引擎根據(jù)調度算法將質檢任務調度到合適的質檢節(jié)點上進行并行檢查,避免數(shù)據(jù)傾斜帶來的影響(圖3),保證質檢任務耗時最少,解決了難以在極短時間內對廣東省124個區(qū)縣的規(guī)劃成果數(shù)據(jù)進行質檢的問題。
圖3 分布式模式任務調度示意圖
質檢過程中會利用多項質檢規(guī)則同時對多個質檢包進行質檢,為避免單節(jié)點硬件資源使用率高、網(wǎng)絡通信波動等因素影響導致的單項成果質檢失敗,加入失敗重試機制,在單項質檢失敗后將自動在資源利用率低的服務器節(jié)點重啟一個質檢進程進行重新質檢,以提高整個質檢軟件的可用性。
質檢軟件接收全省124 個區(qū)縣的成果數(shù)據(jù),每項成果數(shù)據(jù)又包含GDB、SHP等空間數(shù)據(jù)以及PDF、EX?CEL等非空間數(shù)據(jù),且各地存在一項成果多次提交的情況。本文采用版本化管理技術和NAS共享存儲介質自動錄入規(guī)劃成果數(shù)據(jù)的元數(shù)據(jù)信息,對所有質檢數(shù)據(jù)建立版本,實現(xiàn)對海量異構成果數(shù)據(jù)的有序高效管理。
批量接收數(shù)據(jù)后,根據(jù)成果包自動識別所屬區(qū)縣,自動關聯(lián)外部數(shù)據(jù),在通過前置檢查后自動創(chuàng)建任務,調度中心自動將任務調度到空閑的服務器上進行質檢,質檢完成后根據(jù)報告模板自動分區(qū)縣生成報告并輸出,實現(xiàn)全業(yè)務流程自動化,用戶只需提交數(shù)據(jù)即可查看報告,極大地提升了規(guī)劃成果數(shù)據(jù)的質檢效率。
面對數(shù)據(jù)版本多、數(shù)據(jù)量巨大、服務器資源眾多而帶來的巨大軟件部署更新工作量,本文采用持續(xù)集成與部署的思想,基于Jenkins DevOps 平臺,將代碼編譯、打包、發(fā)布、部署等流程串連起來,從代碼提交到部署運行實現(xiàn)全流程自動化,做到端到端的自動化交付,減少人工干預,解決了因數(shù)據(jù)量大、服務器資源眾多導致的部署困難問題。
質檢軟件的核心流程包括質檢包上傳、前置檢查、質檢任務創(chuàng)建、質檢任務執(zhí)行、質檢日志與質檢錯誤信息存儲、質檢報告生成6 個環(huán)節(jié),用戶僅需在質檢包上傳環(huán)節(jié)選擇相應質檢包并關聯(lián)質檢方案,后續(xù)流程由后臺自動完成,整個過程是自動化、數(shù)據(jù)驅動過程、弱用戶交互的。該流程由數(shù)據(jù)管理組件、任務組件、成果管理組件、調度組件、質檢規(guī)則執(zhí)行組件協(xié)同配合完成,即當數(shù)據(jù)管理組件新增或更新數(shù)據(jù)包后,將數(shù)據(jù)包ID傳給任務組件;任務組件創(chuàng)建任務生成任務ID,并發(fā)送消息給調度組件;調度組件先解析質檢方案和數(shù)據(jù)包中的數(shù)據(jù)項,將質檢規(guī)則的輸入?yún)?shù)關聯(lián)到具體數(shù)據(jù),自動添加質檢規(guī)則池,并根據(jù)質檢集群中資源狀況和調度規(guī)則,將質檢規(guī)則分發(fā)到合適的質檢節(jié)點執(zhí)行;質檢節(jié)點產生的質檢結果發(fā)送給成果管理組件統(tǒng)一存儲,任務執(zhí)行完成后,質檢成果組件匯總結果自動生成質檢報告。
質檢軟件采用C/S 架構進行建設,客戶端應用程序采用Winform 技術,結合空間計算引擎的組件技術,保證對圖形數(shù)據(jù)、屬性數(shù)據(jù)、文檔數(shù)據(jù)等多樣化數(shù)據(jù)的流暢瀏覽與交互操作。3層架構模式(圖4)有效隔離了用戶對于數(shù)據(jù)存儲的感知,數(shù)據(jù)存儲統(tǒng)一由服務端進行操作,保證了其安全性。通過充分調研,根據(jù)硬件資源情況,充分發(fā)揮了服務器高效的計算性能,提高了軟件執(zhí)行效率。軟件部署在政務內網(wǎng)環(huán)境中,各區(qū)縣的質檢數(shù)據(jù)包存儲在服務器,利用關系型數(shù)據(jù)庫MongoDB 進行管理,在保障數(shù)據(jù)安全的前提下,多客戶端能同時進行質檢操作。
圖4 部署架構圖
廣東省縣級國土空間總體規(guī)劃數(shù)據(jù)庫質檢軟件的開發(fā)設計,滿足了成果批量質檢、版本化管理和全過程管理的業(yè)務需求,實現(xiàn)了與國家檢查軟件、“一張圖”系統(tǒng)的對接。分布式的文件存儲設計,能充分利用服務器資源,極大地提高數(shù)據(jù)質檢效率。規(guī)劃編制成果數(shù)據(jù)的完整性、規(guī)范性檢查以及規(guī)劃業(yè)務檢查功能一體化集成,統(tǒng)籌了數(shù)據(jù)質檢和人工核查兩個重要步驟,是當前廣東省國土空間規(guī)劃“一張圖”建設工作的重要工具之一,極大地提高了規(guī)劃審查工作效率。目前,該軟件已正式投入使用,通過分布式質檢方法和智能規(guī)則庫引擎,靈活配置數(shù)據(jù)質量控制要求、規(guī)劃審查業(yè)務規(guī)則等,實現(xiàn)質檢和審查的條目化、自動化和規(guī)范化,數(shù)據(jù)質檢耗時減少為原來的1/10;同時,核查全流程管理有效提高了人工核查環(huán)節(jié)的工作效率,至少節(jié)省了50%的工作人員,有效降低了核查人工成本,有力支撐了廣東省124 個區(qū)縣多輪縣級數(shù)據(jù)庫成果核查工作,為廣東省國土空間規(guī)劃成果審查和匯交工作提供了強有力的保障。