丁 憶 ,蔣陳純 ,周 建
(1.重慶市地理信息中心,重慶 401121)
第三次全國經濟普查要求利用統計電子地理信息系統,全面建立普查區電子地圖,以確保普查區全域覆蓋,普查對象不重不漏,并且普查小區界是在行政區劃的基礎上再劃分普查小區,這就需要以最新的高清影像或現勢性強的線劃地形圖作為底圖參考,由分布在各地的基層單位熟悉行政區劃邊界的工作人員來負責實施劃分工作。為充分利用網絡信息技術,將分散在基層的信息源有效集中,并快速、準確地確定普查區界線,本文提出了“基于WebGIS的第三次經濟普查邊界劃分系統”的設計方案。在重慶市的經濟普查區劃分工作中以此方案為基礎開發業務應用系統,配合自上而下的工作組織模式,在短時間內高效、高質量地完成了全市8.24萬km2的普查區劃分任務。
對于重慶市來說,第三次經濟普查區劃分工作時間緊、任務重,按照“地方分級負責”原則,在規定的20 d內需要將全省市的幾十個區縣界、幾千個鎮(街、鄉)界、上萬個社區(村)界、幾萬個普查小區界全部矢量化,工作量相當大。鑒于此次任務矢量化數據多、時間短且普查人員對行政區劃邊界不熟悉等因素,利用鎮(街、鄉)以及社區(村)工作人員熟悉自己管轄區域邊界的優勢,采取由市級統計部門統籌安排,區縣級統計部門組織鎮(街、鄉)人員以及社區(村)人員完成行政區劃的矢量化工作,最后再由普查人員在行政區劃界的基礎上劃分普查小區的工作組織模式,以提高工作效率和邊界準確性。采用這種模式,工作人員分散,需要解決集中編輯的問題,這就需要開發出一個基于Web的在線、高效矢量編輯系統。
為了滿足經濟普查區劃分人員對地圖查看、操作等用戶體驗服務的需求,滿足用戶對系統的可操作性要求。在線劃分系統除需實現地圖瀏覽、放大縮小、全圖等基本功能外,還需實現:①矢量數據的編輯功能,包括面要素的切割、合并功能和點要素的移動、修改、刪除、增加功能。②屬性信息修改和顯示功能,包括區縣、鎮(街、鄉)、社區(村)、普查小區名稱和代碼的填寫及顯示、查看功能。③程序自動檢查功能,包括同一層級內的界線和駐地在數量、名稱、代碼的邏輯一致性,以及無壓蓋、無縫隙等拓撲檢查功能。④權限設置,包括對區縣級、鎮(街、鄉)級、社區(村)級、普查小區級4個不同級別登錄后,顯示和修改信息的權限進行分別設置。
為了保障用戶操作的連續性、應用的可靠性,本系統最重要的性能指標是在一定的負載條件下的響應時間(包括最短響應時間、平均響應時間和最大響應時間)。在客戶端連接數確定的情況下,該指標與客戶端當前的網絡情況、操作次數、編輯地圖的復雜程度、切割和融合面要素的大小、服務器和網絡設備以及投入成本等條件有關系。
通過分析和整合現有數據,重慶市最大社區數約1萬個,假設每個社區有1個用戶在此系統進行操作,最大在線人數約為1萬個,在操作面要素切割以及面要素合并時需滿足最短響應時間為2 s,平均響應時間為7 s,最大響應時間為15 s的要求。為了滿足性能上的需求,并降低成本,要求服務器和網絡設備可及時擴展,并在適當的時候釋放服務器和關閉服務器,以達到收縮和收回服務器資源的能力。
2.1.1 系統框架[3-5]
WebGIS第三次經濟普查邊界劃分系統采用的是基于Net3.5平臺與ServLight技術的3層結構,雖然Servlight技術為富客戶端模式,但是Servlight可以更好地控制和渲染地圖,有利于地圖在線編輯的開發與實現。本系統的3層結構包括客戶機、應用服務器與Web服務器、數據服務器與瓦片地圖服務器。系統以B/S方式為主,后臺數據加載備份以C/S方式實現。圖1為系統軟件總框架。

圖1 系統總框架設計圖
表現層:實現了客戶端開發的相對獨立。在ArcGIS Server 中,連接器能夠處理ASPX、JSP、ArcXML和Coldfusion式的請求,因此可根據自己的實際情況選擇ASPX、JSP等開發方式,不再局限于某一具體開發工具。本系統采用Servlight + ASPX模式開發。
邏輯層:連接器與應用服務器、應用服務器與空間服務器之間利用ArcXML進行通訊,不管客戶端是以何種方式提供請求,應用服務器和空間服務器都是處理ArcXML式的請求,減小了應用服務器和空間服務器的負擔。ArcXML是ESRI公司根據XML標準開發的。XML具有良好的數據描述方法、可擴展性、半結構化、跨平臺等特點,使得不同的WebGIS系統能夠借助XML實現通訊而不需要數據轉換。
數據層:采用大型數據庫存儲網絡資源數據和空間數據,利用高性能的空間數據引擎ArcSDE支持海量數據的高效存儲與檢索,ArcGIS Server還可以針對應用需求提供地圖服務。
硬件層:包括服務器、網絡傳輸設備以及存儲設備,采用分布式模式,可動態添加服務器設備,提高服務端的服務能力。
2.1.2 功能開發
本系統是基于ArcGIS Servlight API開發的WebGIS在線編輯系統,利用ArcGIS Server、ArcGIS SDE、Oracle、IIS作為服務端,利用ArcGIS Servlight API提供的接口開發出以下功能以滿足系統的需求。
1)矢量數據的編輯功能開發。此系統首先需考慮網絡情況、用戶識圖能力、用戶操作能力等因素;其次需重點考慮面要素的壓蓋、縫隙等拓撲關系處理問題。因此,系統在開發面要素的處理時,只對用戶提供面要素的切割、合并功能,而不提供刪除、移動、重構功能。這樣用戶在對面要素進行操作時,系統就不需要關注面要素的拓撲問題。由于點要素的編輯不用考慮壓蓋等拓撲問題,所以對點要素提供移動、刪除、添加功能,以確保點位的準確性。
2)屬性信息修改和顯示功能開發。在屬性信息處理中,本系統只對普查邊界和駐地點必要字段進行修改和顯示,主要字段為區縣、鎮(街、鄉)、社區(村)、普查小區名稱和代碼,但是不同的層級改動的信息不同。
區縣界:只有區縣界面要素層,不可修改,含區縣名稱、代碼字段。
鎮(街、鄉)界:包括鎮(街、鄉)面要素、駐地點2層,可修改區縣和鎮(街、鄉)的名稱、代碼字段。
社區(村)界:包括社區(村)界面要素、駐地點2層,可修改區縣、鎮(街、鄉)、社區(村)的名稱和代碼字段。
普查小區:只有普查小區面要素層,可修改區縣、鎮(街、鄉)、社區(村)、普查小區的名稱和代碼字段。
3)程序自動檢查功能開發。系統根據需求設計自動檢查功能,主要實現的功能有:同一層級內的界線和駐地在數量、名稱、代碼的邏輯一致性檢查;普查邊界不壓蓋、無縫隙等拓撲檢查;統計不同層級下的普查區個數。
4)權限設置開發。系統實現了不同層級擁有不同的權限,上一級對下一級數據有修改、管理的權限。
管理員權限:可修改所有數據,由系統維護人員掌握。
區縣層級權限:可修改鎮(街、鄉)界、政府駐地矢量和屬性信息,由區縣統計局人員使用。
鎮(街、鄉)層級權限:可修改社區(村)界、政府駐地矢量和屬性信息,由鎮(街、鄉)人員使用。
社區(村)層級權限:可修改普查小區界矢量和屬性信息,由社區(村)人員使用。
5)用戶監控開發。本系統對用戶登錄、矢量數據修改、屬性修改以及退出等操作全程監控,如果有需要可根據用戶需求以及日志情況進行恢復。此功能也可實現對服務器動態分配與添加等操作,以滿足性能需求。
在服務器架設方面,為了滿足低成本、高性能、臨時性的需求,本系統采用短期租用“阿里云”虛擬服務主機模式,在并發用戶數多、服務器壓力過大的情況下,可以根據用戶數量,增加虛擬主機的數量和資源配置,并對用戶連接進行分流,以保障服務能力和服務效率。
2.2.1 數據構成
系統數據構成主要包含現有區縣、鎮(街、鄉)、社區(村)界與行政駐地矢量數據,以及重慶市1︰ 2 000的影像底圖和線劃地形圖。
先對現有邊界數據內容進行分層分類,建立空間數據集,初始化邊界矢量數據。將現有鎮(街、鄉)界、社區(村)界和駐地作為初始化圖層,在數據層級方面是以6位代碼、區縣身份對鎮(街、鄉)界以及駐地進行相應的修改。以9位代碼、鎮(街、鄉)身份對社區(村)界以及駐地進行修改。以12位代碼、社區(村)身份對普查小區進行劃定與修改,如圖2所示。

圖2 第三次經濟普查編碼
本系統底圖包括影像底圖和線劃地形圖,通過調用天地圖·重慶底圖服務以確保底圖數據的權威性與穩定性。用戶可以根據底圖獲取相對位置以確保切割與合并面要素時的準確性與完整性。
2.2.2 系統空間數據及屬性數據存儲[7]
通過對現有基礎數據進行預處理后將空間數據和屬性數據導入到Oracle數據,建立初始化矢量數據,然后進行存儲。針對空間數據與屬性數據的存儲主要有以下3種方案:數據庫混合結構模型;數據庫擴展結構模型;數據庫統一數據模型。
本系統采用數據庫擴展模型統一存儲空間數據與屬性數據,這種模式只是在標準的數據庫上添加1個空間數據管理層。相對于其他2種模式優點在于省去了空間數據與屬性數據之間的連接關系,提高了空間數據存取速度,保證了空間數據與屬性數據的完整性和關聯性。結構如圖3所示。

圖3 數據庫擴展結構圖
本系統數據庫采用的是ESRI ArcSDE空間數據庫引擎 + Oracle的空間數據庫技術,通過Oracle數據庫系統存儲與管理空間數據,可確保空間數據和屬性數據的統一管理與統一修改更新。
本系統必須滿足單一Web站點配合多地圖編輯服務站點配置的分布式配置,這樣設計優點在于可以減少單個地圖點擊服務器的壓力以提高地圖操作時的響應速度。
在系統軟硬件運行環境方面,第一,在滿足多用戶在線的情況下,最短時間響應用戶操作需求;第二,在服務器響應不夠情況下,能添加服務器以及添加其他配套設備;第三,能快速處理用戶編輯數據以及大用戶量并發操作;第四,在穩定性方面具備7×23 h無故障高效運行(其中每天00:00~01:00服務器停機,做數據備份、緩存清理、部分服務器重啟等操作)。因此,系統硬件設計應具備高可靠性、高可用性、數據保密、數據保護、可維護性、可擴充性等性能;在軟件方面應支撐Windows環境和集群能力。
本系統采用政務網瓦片地圖服務器與地圖編輯服務器結合方式,形成一個完善的服務器集群,可提高服務能力,解決單一服務壓力的問題。可以對在線用戶數以及每個服務器在線人數進行實時監控,并動態分配和添加服務器以滿足需求。地圖編輯服務器主要采用本地服務器與租用“阿里云”服務結合,提供快速的響應速度和良好的用戶體驗。圖4為系統總體部署結構圖。

圖4 系統總體部署結構圖
該系統應用于重慶市第三次經濟普查區劃分工作中,在短時間內按時保質保量地完成了重慶市經濟普查小區的劃分工作,驗證了系統的可行性和穩定性。該系統可保障全市最大257人在線,最多152人同時操作,平均9 s的系統響應時間進行劃分工作,完成了重慶市38個區縣界、1 017個鎮(街、鄉)界、11 014個社區(村)界、15 371個普查小區界線劃分工作,為第三次全國經濟普查工作順利開展奠定了基礎。系統操作界面如圖5、圖6所示。

圖5 系統登錄界面

圖6 系統操作界面
[1]鐘全寶,李玉琳.基于WebGIS的省級經濟戶口地理信息系統[C].2007年全國測繪科技信息交流會,四川,2007
[2]于濤方,顧朝林,吳泓.中國城市功能格局與轉型——基于五普和第一次經濟普查數據的分析[J].城市規劃學刊,2006(5):13-21
[3]辛宇,梁軍,張錦水.基于WebGIS的統計地理信息發布系統的設計與實現——以甘肅省社會經濟統計地理信息系統為例[C].中國地理信息系統協會第三次代表大會暨第七屆年會,北京,2003
[4]趙芳.基于開源WebGIS平臺的地理信息系統應用研究[D].鄭州:鄭州大學,2010
[5]蔡廣超.地理信息系統空間數據庫建立的探討——基于WebGIS的空間數據庫的建立[C].全國測繪科技信息網中南分網第十九次學術交流會,湖南,2005
[6]鄧仕虎.網格化數字城市管理信息平臺設計與開發[D].西安:西北大學,2007
[7]盧毅敏,汪小欽,肖桂榮.面向電子政務的地理信息系統研究[C].中國地理信息系統協會第九屆年會,2005