張學(xué)利,王志輝,宋震,吳彬,周超,張凌波,顧德清
有色金屬華東地質(zhì)勘查局地質(zhì)信息中心, 江蘇 南京 210007
自然資源是指自然界中所有能夠為人類利用的物質(zhì)和能量,它具有可利用潛力的無限性和資源數(shù)量的有限性雙重特點。它是地球生態(tài)環(huán)境的重要組成部分,在生態(tài)系統(tǒng)中發(fā)揮著不可替代的作用。同時, 自然資源又是國民經(jīng)濟發(fā)展的基礎(chǔ)。我國的國土面積僅次于俄羅斯和加拿大,居世界第三位;跨熱帶、亞熱帶、暖溫帶、寒溫帶等多個氣候帶,氣候類型多種多樣;河川徑流量次于巴西、俄羅斯、加拿大、美國和印尼,居世界第六位,水能資源更雄居世界第一;高等植物 3 萬多種,動物種類達 10 萬多種,具有十分豐富的生物多樣性;全世界已利用的160 余種礦藏中我國擁有其中的148種,鎢、銻、鋅、鈦、稀土、煤、鎳、鉛、錳、硫鐵礦等 20 多種礦產(chǎn)的儲量均列世界前列;擁有1.8 萬 km 的海岸線,約 650 多個島嶼和 300 萬 km2的海洋,各種資源的蘊藏十分豐富[1–2]。
雖然自然資源的總量很大,但因歷史上形成的人口基數(shù)也很大,使得我國自然資源的人均擁有量很少,人口的持續(xù)增長對資源開發(fā)提出了越來越高的要求,造成了天然林的面積急劇縮小,淡水資源日益短缺,土地資源退化,現(xiàn)有耕地面積在逐漸縮小,近期可供開墾利用的土地面積極為有限,供求矛盾十分尖銳。因此實現(xiàn)自然資源的可持續(xù)利用,防止對自然資源的浪費,以保證經(jīng)濟與社會的可持續(xù)發(fā)展和人與自然關(guān)系協(xié)調(diào), 對我國具有十分重要的現(xiàn)實意義。
隨著互聯(lián)網(wǎng)技術(shù)和云平臺、大數(shù)據(jù)等新型技術(shù)的發(fā)展,尤其是互聯(lián)網(wǎng)技術(shù)的普及與應(yīng)用已經(jīng)滲透到各個行業(yè),利用互聯(lián)網(wǎng)發(fā)布、共享資源信息、政策、法規(guī)、調(diào)查等已經(jīng)成為政府、社會組織、企業(yè)共享資源信息的重要途徑,這些資源信息分散到他們各自的門戶網(wǎng)站和專題網(wǎng)站上,還沒有形成統(tǒng)一的自然資源信息共享窗口,使得資源信息淹沒在互聯(lián)網(wǎng)的海洋里。迫切需要提供一個統(tǒng)一的資源信息入口,能夠快速了解全面的、最新的資源信息狀況。
本文針對自然資源資訊信息現(xiàn)狀,以互聯(lián)網(wǎng)技術(shù)和云平臺為依托搭建了自然資源資訊信息共享系統(tǒng),提出了系統(tǒng)的云平臺架構(gòu)、設(shè)計了系統(tǒng)數(shù)據(jù)的存儲結(jié)構(gòu)和主要功能,并介紹了系統(tǒng)的開發(fā)環(huán)境、集群節(jié)點部署、爬蟲服務(wù)體系、資訊站點開發(fā)等關(guān)鍵技術(shù)。最后并以科學(xué)網(wǎng)為應(yīng)用實例,介紹了自然資源資訊信息的獲取、信息發(fā)布和分享等過程。
基于云平臺的自然資源資訊信息共享系統(tǒng),針對自然資源資訊信息的特點,并參照云平臺基礎(chǔ)架構(gòu)[3–4],劃分為四層體系:基礎(chǔ)設(shè)施服務(wù)層、數(shù)據(jù)資源服務(wù)層、數(shù)據(jù)功能服務(wù)層和應(yīng)用服務(wù)層,如圖1所示?;A(chǔ)設(shè)施服務(wù)層為硬件資源的虛擬化。通過虛擬化技術(shù),部署各類服務(wù)器:主要包括爬蟲服務(wù)器、存儲服務(wù)器、緩存服務(wù)器和應(yīng)用容器等。這些服務(wù)一般根據(jù)應(yīng)用類型以集群節(jié)點部署。如數(shù)據(jù)庫集群節(jié)點、安全認(rèn)證節(jié)點、負(fù)載均衡服務(wù)節(jié)點等;數(shù)據(jù)資源服務(wù)層,主要實現(xiàn)對自然資源資訊信息的存儲。按照林業(yè)、牧業(yè)、水資源、農(nóng)業(yè)、副業(yè)、礦業(yè)、漁業(yè)等分類,形成資源信息庫、資源專題庫、資源共享服務(wù)庫、分布式文件庫和系統(tǒng)元數(shù)據(jù)庫。并根據(jù)系統(tǒng)功能和應(yīng)用服務(wù)需求,形成統(tǒng)一的資源訪問接口;數(shù)據(jù)功能服務(wù)層,主要提供數(shù)據(jù)共享服務(wù)和目錄服務(wù):共享服務(wù)主要包括數(shù)據(jù)的讀取服務(wù)、評論服務(wù)、可視化等服務(wù),目錄服務(wù)主要提供數(shù)據(jù)分類服務(wù)和數(shù)據(jù)流服務(wù),同時提供基于APP和WEB 網(wǎng)站的分享服務(wù);應(yīng)用服務(wù)層,提供資源目錄導(dǎo)航、信息瀏覽與檢索服務(wù)、資源主題分類、信息評論等應(yīng)用功能。為社會公眾提供豐富多彩的自然資源資訊信息。在云平臺架設(shè)的過程中,還要構(gòu)建云環(huán)境安全保障體系、建立數(shù)據(jù)規(guī)范體系,保證云平臺的順利完成。
數(shù)據(jù)存儲層按照來源主要包括五類: 資源信息庫、資源專題庫、資源共享服務(wù)庫、分布式文件數(shù)據(jù)庫和系統(tǒng)元數(shù)據(jù)庫。資源信息庫主要存儲爬蟲服務(wù)器爬取的各類網(wǎng)站最新的文章信息,包括標(biāo)題、正文、來源、時間、作者、圖片等信息。資源專題庫主要存儲通過人工智能技術(shù)提取的信息相似和領(lǐng)域相關(guān)的文章信息,并形成聚合資訊信息; 資源共享服務(wù)庫,主要是存儲待發(fā)布或已發(fā)布的文章,主要提供給用戶瀏覽訪問與評論的數(shù)據(jù);分布式文件數(shù)據(jù)庫主要是爬取得圖片,縮略圖等圖片數(shù)據(jù);元數(shù)據(jù)主要包括用戶信息、評論信息等系統(tǒng)產(chǎn)生的數(shù)據(jù)。以資源信息庫(表1)為例,介紹資源信息庫相關(guān)數(shù)據(jù)庫設(shè)計。
圖1 自然資源資訊信息共享系統(tǒng)云平臺架構(gòu)Fig.1 Natural resources information sharing system cloud platform architecture
系統(tǒng)功能的設(shè)計主要包括以下幾個方面:
(1)自然資源資訊信息瀏覽。資訊信息瀏覽需提供按照資源分類進行的查詢檢索服務(wù)、提供按照主題相關(guān)信息的分類、信息詳情的瀏覽、信息的評論等功能。
表1 資源信息庫存儲表設(shè)計Table1 Resource information library storage table design
(2)基于爬蟲技術(shù)的數(shù)據(jù)智能爬取與入庫功能。構(gòu)建智能化數(shù)據(jù)爬取體系,包括爬蟲定時抓取服務(wù)、爬蟲信息規(guī)則庫、資訊信息入庫服務(wù)、摘要信息自動化提取服務(wù)、信息相似智能化分析服務(wù)、領(lǐng)域相關(guān)智能化服務(wù)。
(3)一站式資訊信息管理平臺。針對管理員提供資訊倉庫、草稿箱、定時發(fā)布資訊、已發(fā)布資訊、已下架資訊、統(tǒng)計管理、用戶管理等一站式資訊后臺管理平臺。
(4)資訊門戶共享網(wǎng)。面向互聯(lián)網(wǎng)大眾用戶,尤其是從事自然資源相關(guān)用戶,提供界面界面友好、功能操作簡單、數(shù)據(jù)讀取效率快、支持大用戶并發(fā)的門戶系統(tǒng)。
系統(tǒng)開發(fā)環(huán)境,主要涉及兩方面的研發(fā)內(nèi)容:一是智能化爬蟲體系的構(gòu)建,一是資訊管理站點的研發(fā)。爬蟲體系采用 python 作為開發(fā)語言,基于scrapyd和redis 隊列構(gòu)建分布式爬蟲應(yīng)用服務(wù);資訊web 站點管理采用 play 開發(fā)平臺,基于 java 開發(fā),實現(xiàn)資訊網(wǎng)站的基本管理與門戶應(yīng)用。多用戶并發(fā)采用ngnix 的負(fù)載均衡策略。詳細(xì)開發(fā)工具如表2所示。
系統(tǒng)基本節(jié)點為集群或云計算服務(wù),按照系統(tǒng)應(yīng)用目的設(shè)立成幾個不同節(jié)點:結(jié)構(gòu)化存儲服務(wù)節(jié)點,主要是數(shù)據(jù)庫集群節(jié)點;非結(jié)構(gòu)化存儲服務(wù)節(jié)點,主要是非結(jié)構(gòu)化數(shù)據(jù)(如文檔、圖片等)存儲節(jié)點;網(wǎng)站應(yīng)用節(jié)點,主要是部署網(wǎng)站系統(tǒng)和負(fù)責(zé)網(wǎng)站的負(fù)載均衡;爬蟲服務(wù)節(jié)點,主要管理分布式爬蟲服務(wù);調(diào)度節(jié)點,主要部署消息隊列服務(wù),負(fù)責(zé)各節(jié)點之間通訊與數(shù)據(jù)傳輸。每個節(jié)點全部通過 Docker 容器統(tǒng)一管理,實現(xiàn)節(jié)點的快速啟動與關(guān)閉,保持應(yīng)用的正常運行[5–9]。
表2 平臺開發(fā)工具列表Table2 Schematic diagram of the reptile system
爬蟲服務(wù)體系是資訊信息共享系統(tǒng)的核心,搭建智能化、模塊化的爬蟲體系是一項系統(tǒng)工程。構(gòu)建爬蟲服務(wù)體系前期需要對自然資源網(wǎng)站進行類型梳理,確定爬取站點,同時對爬取規(guī)則進行提取入庫,爬取規(guī)則必須是爬取到信息的關(guān)鍵,正確的爬取規(guī)則關(guān)系到爬取內(nèi)容的準(zhǔn)確獲取。爬蟲服務(wù)體系需構(gòu)建 web 網(wǎng)站定時器、爬蟲隊列模塊、爬蟲任務(wù)監(jiān)聽(分布式處理模塊)、 爬蟲規(guī)則庫及解析模塊、資訊信息的ETL(數(shù)據(jù)清洗、轉(zhuǎn)換盒加載)與入庫。其主要工作流程見圖2。
資訊 web 站點開發(fā),主要是網(wǎng)站的建設(shè),包括后臺管理和門戶網(wǎng)研發(fā),后臺管理建設(shè),面向網(wǎng)站管理員,研發(fā)了數(shù)據(jù)倉儲功能、草稿箱、定時發(fā)布資訊、已發(fā)布資訊管理、已下架資訊管理等功能。主要解決資訊信息的審核、處理和發(fā)布;門戶網(wǎng),主要是將管理員審核、整理之后的信息,發(fā)布出來,通過網(wǎng)頁瀏覽器或手機 app 給大眾提供最新的自然資源相關(guān)的資訊信息。
自然資源資訊站點,梳理了自然資源領(lǐng)域 100個相關(guān)網(wǎng)站,最終確定了國土資源報等 20個相關(guān)站點(見表3),涉及到草地、礦產(chǎn)、地質(zhì)、林地、測繪、油氣、海洋等領(lǐng)域,最終形成了自然資源資訊信息共享系統(tǒng)的數(shù)據(jù)來源。以科學(xué)網(wǎng)資源信息為例,簡單介紹了資源資訊信息的獲取、整理、發(fā)布、分享過程。
圖2 爬蟲體系流程示意圖Fig.2 Schematic diagram of the reptile system
表3 自然資源資訊信息站點信息列表Table3 Natural resource information information site information list
圖3 資訊信息門戶網(wǎng)Fig.3 Information portal
科學(xué)網(wǎng)資訊信息的爬取主要包括新聞標(biāo)題、正文、來源、發(fā)布時間、圖片、版權(quán)聲明等內(nèi)容。首先研究其網(wǎng)頁信息結(jié)構(gòu),基于 xpath(XML 路徑語言)提取出爬取規(guī)則存儲到資訊規(guī)則庫中;其次爬蟲服務(wù)器會根據(jù)規(guī)則庫信息,利用定時器服務(wù)每隔半個小時,對網(wǎng)站進行最新資訊的爬取,同步存儲的資訊倉儲庫數(shù)據(jù)庫;資訊 web 站點管理后臺,監(jiān)聽到 資訊倉儲庫中數(shù)據(jù)的更新進行,信息相似和領(lǐng)域相關(guān)性的職能算法提取,形成專題資訊更新已發(fā)布資訊內(nèi)容;最后利用推送服務(wù)將用最新資訊信息發(fā)送到 web 網(wǎng)頁(見圖3資訊信息門戶網(wǎng))、微信小程序或 app。最終,實現(xiàn)共享系統(tǒng)用戶可以看到最新的自然資源的相關(guān)資訊信息。
基于云平臺的自然資源資訊信息共享系統(tǒng),依托于互聯(lián)網(wǎng)技術(shù)和云平臺技術(shù),將分散于各個資源網(wǎng)站的資源資訊信息,自動提取到統(tǒng)一的資源倉儲庫,并利用數(shù)據(jù)相似和領(lǐng)域相關(guān)性進行了相關(guān)主題的提取,對外提供資訊信息服務(wù)。這是自然資源領(lǐng)域第一個資訊信息聚合網(wǎng)站,希望系統(tǒng)的上線運行能夠為自然資源行業(yè)相關(guān)從業(yè)者提供最新的、全面的資訊信息,更好的為社會大眾服務(wù)。