任婷婷 ,辛慶強 ,許洪滔 ,潘 亮 ,呂 猷
(1.內(nèi)蒙古農(nóng)牧業(yè)科學院,內(nèi)蒙古 呼和浩特 010031;2.內(nèi)蒙古自治區(qū)氣象干部培訓學院,內(nèi)蒙古 呼和浩特 010051)
內(nèi)蒙古農(nóng)牧業(yè)科學院自2004年起開始籌建內(nèi)蒙古自治區(qū)農(nóng)業(yè)資源數(shù)據(jù)庫,截至目前已經(jīng)形成了一定的規(guī)模,數(shù)據(jù)庫包括空間數(shù)據(jù)庫、屬性數(shù)據(jù)庫、文檔數(shù)據(jù)庫、多媒體資源數(shù)據(jù)庫,數(shù)據(jù)庫內(nèi)容涉及土地資源、水資源、氣候資源、生物資源、農(nóng)村經(jīng)濟、農(nóng)業(yè)生產(chǎn)條件、土地退化和環(huán)境污染、生態(tài)環(huán)境建設等10大門類和384個小類;并建成基于地理信息的管理信息系統(tǒng),該系統(tǒng)實現(xiàn)了農(nóng)業(yè)資源信息綜合管理的功能。該數(shù)據(jù)庫的建成為內(nèi)蒙古農(nóng)業(yè)遙感應用系統(tǒng)的建設打下了堅實的基礎。
內(nèi)蒙古農(nóng)業(yè)遙感應用中心自2013年成立以來,依托農(nóng)業(yè)部農(nóng)業(yè)遙感應用中心,對內(nèi)蒙古中西部地區(qū)的玉米、小麥等主要農(nóng)作物種植面積進行了動態(tài)監(jiān)測,實時掌握種植分布、年際變化等情況。在2016年該中心參與了“東北主要農(nóng)作物分布一張圖”的制作,負責了內(nèi)蒙古東二盟(市)(興安盟和呼倫貝爾市)主要農(nóng)作物分布一張圖的制作,在開展該項工作的過程中積累了一定的數(shù)據(jù),并且基于農(nóng)作物分布數(shù)據(jù)對主要農(nóng)作物的長勢、旱情等進行了實時監(jiān)測。2017年,該中心利用遙感手段對內(nèi)蒙古地區(qū)的休耕輪作任務開展了核查工作。利用多源遙感數(shù)據(jù),將遙感手段滲透到農(nóng)業(yè)生產(chǎn)的各個環(huán)節(jié),實時、動態(tài)的進行監(jiān)測是農(nóng)業(yè)監(jiān)管的主要發(fā)展方向,內(nèi)蒙古農(nóng)業(yè)遙感應用中心在“十二五”期間完成了前期準備、項目承攬、項目實施、穩(wěn)步推進、成果匯總、數(shù)據(jù)積累等多項工作之后,具備了一定的硬件與軟件條件開展一系列農(nóng)情遙感監(jiān)測計劃。
由于各旗(縣)地圖數(shù)據(jù)多、發(fā)布數(shù)據(jù)多、歷史數(shù)據(jù)多,且應用展示交互錯綜復雜,同時還要考慮后期地圖快速發(fā)布維護,需要強有力的技術體系作為支撐,因此,在進行內(nèi)蒙古自治區(qū)農(nóng)業(yè)遙感空間管理系統(tǒng)開發(fā)時,設計了以集成為核心的總體架構。
①智能數(shù)據(jù)管理。數(shù)據(jù)存儲:結合遙感和地理信息系統(tǒng)技術全面展示農(nóng)作物信息,實現(xiàn)數(shù)據(jù)便捷入庫和查詢,隨時提取、展示、管理包括農(nóng)作物時間節(jié)點、空間位置、面積變化、長勢、產(chǎn)量等信息。數(shù)據(jù)安全:實現(xiàn)單用戶和多用戶的數(shù)據(jù)編輯,保障數(shù)據(jù)安全,可公開,可組織內(nèi)分享,建立安全的管理機制。數(shù)據(jù)統(tǒng)計和分析:實現(xiàn)多種農(nóng)情數(shù)據(jù)綜合分析,導出分析結果。
②多元數(shù)據(jù)展示。將平面和三維技術相結合,分層次、多時相地將冗雜多源數(shù)據(jù)整合,系統(tǒng)、直觀地展示相關農(nóng)作物空間位置等信息,實現(xiàn)“圖、表、報告”多維度、多種方式的可視化表達。
③服務能力提升。對成果數(shù)據(jù)包括遙感影像、矢量數(shù)據(jù)、專題地圖以及多媒體數(shù)據(jù)進行動態(tài)更新,實現(xiàn)數(shù)據(jù)及時分享和上傳,供管理部門使用和決策。
1.1.1 數(shù)據(jù)體系的建設
①數(shù)據(jù)分類體系??茖W的分類體系是數(shù)據(jù)高效瀏覽和檢索的前提,記錄詳細的數(shù)據(jù)描述信息,以靈活的方式對數(shù)據(jù)進行分類檢索。數(shù)據(jù)分類導航可靈活指定數(shù)據(jù)庫中的字段為一級分類、二級分類、三級分類等,然后按設置好的分類瀏覽數(shù)
據(jù)[1]。
②數(shù)據(jù)存儲內(nèi)容。在遙感數(shù)據(jù)處理過程中需要用到大量數(shù)據(jù),也會產(chǎn)生大量數(shù)據(jù),從中選取會被重復使用的、凝聚大量人力勞動的數(shù)據(jù)存入數(shù)據(jù)庫。因為將全部數(shù)據(jù)進行存儲是不現(xiàn)實的,這需要大量的存儲空間,而有些數(shù)據(jù)是處理過程中產(chǎn)生的臨時數(shù)據(jù),還有些數(shù)據(jù)可由其他數(shù)據(jù)生成,從有效利用存儲空間的角度出發(fā),類似數(shù)據(jù)不做存儲。根據(jù)以上原則,將需要存入數(shù)據(jù)庫的數(shù)據(jù)大體分為3類。一是基礎數(shù)據(jù),是指在遙感工作中進行數(shù)據(jù)處理之前需要準備好的數(shù)據(jù),是數(shù)據(jù)處理的基礎,這些數(shù)據(jù)是工作人員需要頻繁使用的[2]。例如,行政區(qū)劃矢量圖、水系圖、等高線圖等?;A數(shù)據(jù)在日常工作中是工作人員的共享數(shù)據(jù),以前采用移動存儲設備互相拷貝數(shù)據(jù)的方法存在諸多弊端,如速度慢、易損壞、易傳染病毒。將其存儲于基于磁盤陣列的數(shù)據(jù)庫中,再配合高速局域網(wǎng)的快速傳輸,可很好地解決這些問題[3]。二是原始數(shù)據(jù)。在遙感工作中有些數(shù)據(jù)是使用專用設備實地采集的,例如GPS數(shù)據(jù),這些數(shù)據(jù)的獲取需要傾注大量的人力勞動,也是數(shù)據(jù)處理的前提,這些數(shù)據(jù)的可靠存儲是重要的問題。原始數(shù)據(jù)在工作中的使用率也較高,需要提供隨時查閱的手段。還有一些原始數(shù)據(jù)是從專門渠道獲取的,例如不同衛(wèi)星的衛(wèi)片數(shù)據(jù),這些數(shù)據(jù)與采集的原始數(shù)據(jù)類似,也是進行數(shù)據(jù)處理的前提,同樣需要保證其可靠性。多數(shù)衛(wèi)片需要在工作人員之間共享,同時也要留存檔案,以備查詢或為數(shù)據(jù)核準提供依據(jù)。三是處理后的數(shù)據(jù)。遙感數(shù)據(jù)的處理需要用到多種專用軟件,經(jīng)過大量人力勞動才能完成,同時也融入了工作人員大量的智慧。處理后的結果數(shù)據(jù)是遙感工作的勞動成果,也是該項工作價值體現(xiàn)的形式。這些數(shù)據(jù)包括處理后的矢量數(shù)據(jù)、結果數(shù)據(jù)表格、結果報告等。因此,這些數(shù)據(jù)的存儲顯示是相當重要的。除了要保證數(shù)據(jù)的可靠性之外,還需要以多種形式將結果呈現(xiàn)給調用者。
③數(shù)據(jù)格式的統(tǒng)一。為保證數(shù)據(jù)的一致性并提高數(shù)據(jù)比對和再處理的便捷性,需要對同類型數(shù)據(jù)的格式進行統(tǒng)一規(guī)范,例如圖片、矢量圖、文字報告、表格數(shù)據(jù)等。
④數(shù)據(jù)授權訪問。為保證數(shù)據(jù)安全性,數(shù)據(jù)庫中所有的數(shù)據(jù)均為授權訪問。設計角色管理系統(tǒng),靈活為各級用戶分派權限,獲取授權的用戶可訪問指定數(shù)據(jù)。用戶角色主要分為2類:管理員和受限用戶。管理員可管理數(shù)據(jù)庫中的所有數(shù)據(jù),設置數(shù)據(jù)庫管理系統(tǒng)的全局參數(shù),并為受限用戶指定訪問權限;受限用戶默認僅可訪問和維護個人上傳的數(shù)據(jù),另外可訪問管理員指派的數(shù)據(jù)。
⑤大數(shù)據(jù)傳輸方案。數(shù)據(jù)庫中包含大量大小以GB為單位的文件,為保證數(shù)據(jù)在網(wǎng)絡中的快速傳輸,同時又能實現(xiàn)數(shù)據(jù)的授權訪問,該系統(tǒng)初步確定基于FTP協(xié)議的大文件傳輸。利用其內(nèi)部的用戶管理系統(tǒng)實現(xiàn)數(shù)據(jù)的授權訪問。局域網(wǎng)硬件環(huán)境實現(xiàn)桌面千兆傳輸,以保證傳輸速度。
圖1 總體架構
圖2 技術架構方案A
圖3 技術架構方案B
1.1.2 技術架構體系:根據(jù)該系統(tǒng)的特點,推薦使用RESTful風格來架構整個技術體系,該風格可使后臺所有的功能以服務的形式統(tǒng)一為前端提供功能支持。將整體技術體系主要分為3層,分別是前端展現(xiàn)層、API服務層以及物理數(shù)據(jù)層。構建的技術體系見圖1(文中所有圖均來自內(nèi)蒙古自治區(qū)農(nóng)業(yè)遙感空間管理系統(tǒng)的開發(fā)與應用項目)所示:
圖4 總體功能設計
圖5 內(nèi)蒙古地圖分布數(shù)據(jù)
①技術架構方案A。方案A見圖2。通過圖2可以看出,該方案架構簡單、容易維護,成本也非常低廉,但該方案無法支撐高并發(fā)的需求。該架構方案的參數(shù)如下:支撐流量上限1 W;機房可以選擇自購主機自建IDC機房;機房可能遇到的問題包括IDC網(wǎng)絡故障以及IDC提供商響應不及時;搭建配置服務器,使用IP直聯(lián)的形式會在一定程度上減少域名帶來的問題。在用戶流量不大的情況下,該方式比較實用且性價比較高。
②技術架構方案B。方案B見圖3。隨著業(yè)務的發(fā)展,流量逐步達到了單機的極限,當并發(fā)流量超過3 W時,方案A就無法滿足需求,而方案B則在方案A的基礎上進行了擴充,使用集群來處理高并發(fā)的業(yè)務需求。該架構方案的參數(shù)如下:支撐并發(fā)流量3~10 W;機房可以選擇自購主機自建IDC機房,并搭建LNMP集群環(huán)境;引入MongoDB解決空間索引問題;增加nagios監(jiān)控系統(tǒng),可以監(jiān)控系統(tǒng)的運行情況,其中包括基礎信息(CPU、內(nèi)存等)、Nginx、MySQL、Cache、MongoDB 等;成本在方案A基礎上有了增加,并且日常需要運維工程師來維護系統(tǒng)。
內(nèi)蒙古自治區(qū)農(nóng)業(yè)遙感應用系統(tǒng)分為地圖瀏覽、地理情況、種植情況、信息查詢、數(shù)據(jù)對比、地圖切換、報表管理、綜合分析與展示八大功能模塊,總體功能設計見圖4。
圖6 分布式技術架構
1.2.1 地圖服務:通過ArcGisWeb實現(xiàn)內(nèi)蒙古農(nóng)業(yè)遙感數(shù)據(jù)的展示(見圖5),提供數(shù)據(jù)瀏覽、查詢、檢索以及空間分析等功能,輔助以圖形、統(tǒng)計表格、三維虛擬現(xiàn)實等表現(xiàn)形式,直觀、準確地展示內(nèi)蒙古農(nóng)業(yè)資源信息,涵蓋自治區(qū)范圍內(nèi)的衛(wèi)星影像數(shù)據(jù)、耕地空間分布數(shù)據(jù)及作物種植情況變化數(shù)據(jù)。
1.2.2 數(shù)據(jù)服務:利用農(nóng)業(yè)資源數(shù)據(jù),包括種植情況、造林情況、播種情況、水田、旱田、農(nóng)作物等,可實現(xiàn)分層疊加顯示、查詢?yōu)g覽、分析統(tǒng)計等功能,構建多種尺度、多種時相的自治區(qū)基礎地理信息數(shù)據(jù)庫,該數(shù)據(jù)庫基于統(tǒng)一的空間參考[4]。
1.2.3 查詢服務:用戶通過農(nóng)業(yè)遙感應用系統(tǒng)賬號進行認證登錄后,可對各盟(市)、旗(縣)的詳細信息(包括歷史數(shù)據(jù))進行查詢,并可進行導出報表等操作。
1.2.4 數(shù)據(jù)對比:用戶通過農(nóng)業(yè)遙感應用系統(tǒng)賬號進行認證登錄后,選擇各盟(市)、旗(縣)年份數(shù)據(jù)對地理情況、種植情況等指標(包括歷史數(shù)據(jù))進行分析對比,并可進行導出報表等操作。
1.2.5 排名服務:可根據(jù)各盟(市)、旗(縣)農(nóng)業(yè)資源數(shù)據(jù)分析統(tǒng)計結果以及歷史數(shù)據(jù)對比分析結果,對各地區(qū)的實際情況進行統(tǒng)計排名,例如巴彥淖爾市、赤峰市的小麥種植面積在全區(qū)各盟(市)的種植比例排名,根據(jù)各項指標排名來支撐農(nóng)業(yè)資源的全面、全程監(jiān)管和輔助決策。
分布式開發(fā)技術架構見圖6。
分布式消息隊列(message queue,MQ)用于在事件處理過程中暫存事件,可以保證消息的傳遞,提供異步的通信協(xié)議、解耦,提供路由。
圖7 系統(tǒng)包含的功能架構
應用系統(tǒng)統(tǒng)一開發(fā)框架的核心思想就是簡單、輕量、敏捷,可以應對各種類型的項目,輕松應對用戶的各種特殊需求,支持定制開發(fā),讓開發(fā)人員能夠快速掌握和使用,能夠快速打造高性能的企業(yè)級應用。內(nèi)蒙古自治區(qū)農(nóng)業(yè)遙感空間管理系統(tǒng)的整個開發(fā)框架包括5個部分:基礎類庫、模塊化支撐框架、基礎模塊、支撐模塊、開發(fā)工具(見圖7)。
2.3.1 基礎類庫:基礎類庫為整個開發(fā)框架提供基礎的公共能力,包括基礎接口和抽象類的定義、不同數(shù)據(jù)類型間的數(shù)據(jù)轉換、對JSON和XML的序列化和反序列化能力、加密和解密、基于java的動態(tài)腳本能力、反射的輔助工具以及對時間、日期、文件、字符串等對象的工具類等。
2.3.2 模塊化支撐框架:模塊化支撐框架為整個開發(fā)框架提供了模塊化開發(fā)的支撐環(huán)境??紤]到基于OSGI的運行時模塊化會增加開發(fā)人員的工作量,而且很多開源的類庫都不支持OSGI,因此,只提供了開發(fā)時的模塊化,運行時仍然在一個ClassLoader下,這樣既體現(xiàn)了模塊化代碼管理的優(yōu)勢,也可以復用大量的開源類庫。
2.3.3 基礎模塊:基于模塊支撐框架所開發(fā)的基礎模塊,為系統(tǒng)提供日志、依賴注入容器、MVC框架、規(guī)則庫、線程上下文管理、事件中心、并發(fā)控制等基礎功能?;A模塊在傳統(tǒng)的應用開發(fā)中基本上都要被依賴。
2.3.4 支撐模塊:支撐模塊也是基于模塊支撐框架開發(fā)的模塊,這些模塊為應用提供一些高級的基礎功能,包括:報表方案、圖表方案、組織機構和權限體系、系統(tǒng)管理功能、緩存、計劃任務、異步任務、客戶端消息推送方案、服務器端消息機制、自定義查詢、服務間的變更通知機制等。
2.3.5 開發(fā)工具:開發(fā)工具基于IntelliJ IDEA模式,提供了基于模板的代碼生成、各種資源文件的導航、簡化配置文件編寫等。
通過內(nèi)蒙古自治區(qū)農(nóng)業(yè)遙感空間管理系統(tǒng)的建設,利用遙感和地理信息系統(tǒng)技術全面展示農(nóng)作物信息,可實現(xiàn)數(shù)據(jù)便捷入庫和查詢,隨時提取、展示、管理包括農(nóng)作物時間節(jié)點、空間位置、面積變化、長勢、產(chǎn)量等信息;可實現(xiàn)單用戶和多用戶的數(shù)據(jù)編輯,保障數(shù)據(jù)安全,可公開,可組織內(nèi)分享,建立安全的管理機制;可實現(xiàn)多種農(nóng)情數(shù)據(jù)綜合分析。
以內(nèi)蒙古自治區(qū)農(nóng)業(yè)遙感空間數(shù)據(jù)庫為基礎,對自治區(qū)不同時間序列、空間序列的農(nóng)業(yè)資源數(shù)據(jù)進行瀏覽、檢索、查詢、空間疊加分析等,輔助以圖形、統(tǒng)計表格、三維虛擬現(xiàn)實等表現(xiàn)形式,直觀、準確地展示自治區(qū)農(nóng)業(yè)資源信息。
內(nèi)蒙古自治區(qū)農(nóng)業(yè)遙感空間管理系統(tǒng)為該地區(qū)提供主要農(nóng)作物種植面積業(yè)務化測量和遙感估產(chǎn)、長勢監(jiān)測、災害監(jiān)測的基礎性數(shù)據(jù),為農(nóng)業(yè)部農(nóng)情發(fā)布系統(tǒng)提供科學、及時、準確的數(shù)據(jù)支持,同時也為自治區(qū)黨委、政府及農(nóng)業(yè)行政主管部門的管理與決策提供科學依據(jù)。
根據(jù)相關行業(yè)部門及社會公眾的需求,提供農(nóng)業(yè)資源信息多元化服務。在農(nóng)業(yè)遙感應用建設中,由于面向的用戶不同,基于不同的網(wǎng)絡運行服務模式,開發(fā)了運行在涉密環(huán)境(如政務內(nèi)網(wǎng)、專網(wǎng))的基礎版農(nóng)業(yè)遙感空間管理系統(tǒng),運行在政務外網(wǎng)環(huán)境的農(nóng)業(yè)遙感空間管理系統(tǒng),以及運行在國際互聯(lián)網(wǎng)環(huán)境的公眾版農(nóng)業(yè)遙感空間管理系統(tǒng)。
內(nèi)蒙古自治區(qū)農(nóng)業(yè)遙感空間管理系統(tǒng)是自治區(qū)“智慧農(nóng)業(yè)”空間框架的重要組成部分,也是農(nóng)業(yè)信息化體系構建的有益探索,它的建設與運行標志著內(nèi)蒙古自治區(qū)農(nóng)業(yè)管理方式的轉變和公共服務能力的提升,與自治區(qū)政府政務系統(tǒng)的有機結合將是該系統(tǒng)進一步開發(fā)的方向。該系統(tǒng)的設計具有功能模塊化、數(shù)據(jù)標準化、使用人性化等優(yōu)點,可以為其他空間信息系統(tǒng)的開發(fā)建設提供借鑒。
:
[1]周曉林.淺析網(wǎng)絡課程建設在現(xiàn)代教育技術中的應用[J].長春理工大學學報,2010,5(12):139-140.
[2]粟之梁.大數(shù)據(jù)在智能電網(wǎng)中的技術應用體系和路線圖[J].企業(yè)技術開發(fā),2013,32(20):109-110.
[3]馮兆龍,胡續(xù)禮,姜小三,等.基于C#和MapObjects組件的地理信息系統(tǒng)的開發(fā)[J].遙感信息,2007(6):81-85.
[4]呂琲,吳珺.市縣級國土資源遙感監(jiān)測“一張圖”數(shù)據(jù)中心建設的研究[J].江西測繪,2014(4):43-44.