吳庭天,田蜜,陳宗鑄,雷金睿,陳小花,李苑菱,黃緒壯
(海南省林業(yè)科學(xué)研究所,海南海口 571100)
中國林業(yè)信息化在近三十多年中從無到有,經(jīng)歷了起步——系統(tǒng)化—網(wǎng)絡(luò)化三個(gè)過程。在此過程中,林業(yè)部門基于3s 技術(shù)建設(shè)了各類林業(yè)業(yè)務(wù)系統(tǒng),并且通過科學(xué)規(guī)范的資源勘查手段,積累了海量、異構(gòu)、多源、動(dòng)態(tài)的森林資源信息[1~5]。與此同時(shí),林業(yè)信息化所構(gòu)建的各類系統(tǒng),也都獨(dú)立的形成了信息孤島。隨著林業(yè)信息化建設(shè)工作的不斷深入和展開,林業(yè)工作者正面臨著森林資源數(shù)據(jù)管理及使用的新問題:如何管理離線及實(shí)時(shí)的森林資源海量數(shù)據(jù);如何高效、快速地挖掘和分析林業(yè)數(shù)據(jù)信息,使之運(yùn)用到工作中去。
該研究旨在利用Hadoop 大數(shù)據(jù)集成分析平臺(tái),運(yùn)用大數(shù)據(jù)分析技術(shù)進(jìn)行森林資源數(shù)據(jù)管理及分析研究,解決目前森林資源大數(shù)據(jù)存儲(chǔ)、計(jì)算能力、離線數(shù)據(jù)分析、共享數(shù)據(jù)等問題[6~8]。同時(shí),充分利用基礎(chǔ)地理信息資源,構(gòu)建科學(xué)合理的森林資源信息管理新模式,為森林資源調(diào)查、森林資源規(guī)劃設(shè)計(jì)調(diào)查、森林資源動(dòng)態(tài)更新、森林資源數(shù)據(jù)共享等業(yè)務(wù)管理部門提供實(shí)時(shí)、準(zhǔn)確、可靠的森林資源信息,實(shí)現(xiàn)林業(yè)信息化管理。
當(dāng)前,森林資源管理系統(tǒng)主要基于空間地理信息系統(tǒng)、遙感技術(shù)、衛(wèi)星全球定位技術(shù)、空間數(shù)據(jù)庫技術(shù)及軟件工程,采用數(shù)據(jù)層、事務(wù)邏輯層、應(yīng)用層3 層結(jié)構(gòu)體系(B/S、C/S 模式)進(jìn)行構(gòu)建。其功能模塊主要有森林資源監(jiān)測模塊、森林資源資產(chǎn)管理模塊、森林資源管理輔助決策模塊、森林資源管理信息服務(wù)模塊、系統(tǒng)維護(hù)管理模塊等。其目的在于有效地管理轄區(qū)內(nèi)的森林資源數(shù)據(jù),以及各類統(tǒng)計(jì)分析報(bào)告。隨著林業(yè)業(yè)務(wù)深入拓展,數(shù)據(jù)量逐年積累,數(shù)據(jù)計(jì)算量增大,當(dāng)下的森林系統(tǒng)軟硬件難以進(jìn)行線性拓展來提供有效的、快速的業(yè)務(wù)支撐。同時(shí),林業(yè)部門在對多源數(shù)據(jù)集、離線數(shù)據(jù)分析上也提出了新的要求。經(jīng)過調(diào)研分析,總結(jié)了目前林業(yè)部門針對森林資源大數(shù)據(jù)處理系統(tǒng)的需求,主要體現(xiàn)在以下幾個(gè)方面:(1)數(shù)據(jù)采集和傳輸需求
通過對指定林業(yè)離線業(yè)務(wù)數(shù)據(jù)進(jìn)行匯聚,將分散的數(shù)據(jù)進(jìn)行物理集中和整合管理。同時(shí)能夠采集及傳輸實(shí)時(shí)數(shù)據(jù),為實(shí)現(xiàn)對數(shù)據(jù)的分析提供數(shù)據(jù)支撐。
(2)數(shù)據(jù)存儲(chǔ)管理需求
林業(yè)部門數(shù)據(jù)量巨大,數(shù)據(jù)類型繁雜,數(shù)據(jù)需要持久化的存儲(chǔ)和訪問。不論是結(jié)構(gòu)化數(shù)據(jù)、半結(jié)構(gòu)化數(shù)據(jù)、還是非結(jié)構(gòu)化數(shù)據(jù),經(jīng)過數(shù)據(jù)存儲(chǔ)引擎進(jìn)行建模后,持久化保存在存儲(chǔ)系統(tǒng)上。存儲(chǔ)系統(tǒng)要具備高可靠性、快速查詢能力。同時(shí)能夠支撐線性拓展,滿足日后數(shù)據(jù)存儲(chǔ)和安全要求。
(3)數(shù)據(jù)計(jì)算分析需求
包括海量數(shù)據(jù)的離線計(jì)算能力、高效即席數(shù)據(jù)查詢需求和低時(shí)延的實(shí)時(shí)計(jì)算能力。隨著數(shù)據(jù)量的不斷增加,需要數(shù)據(jù)平臺(tái)具備線性擴(kuò)展能力和強(qiáng)大的分析能力,支撐不斷增長的數(shù)據(jù)量,滿足未來大數(shù)據(jù)挖掘分析的發(fā)展需要,確保平臺(tái)系統(tǒng)的不間斷且有效地工作。
(4)數(shù)據(jù)關(guān)聯(lián)集中需求
對集中存儲(chǔ)在數(shù)據(jù)管理平臺(tái)的數(shù)據(jù),通過正確的技術(shù)手段將這些離散的數(shù)據(jù)、實(shí)時(shí)的數(shù)據(jù)進(jìn)行數(shù)據(jù)關(guān)聯(lián),即:通過分析數(shù)據(jù)間的業(yè)務(wù)關(guān)系,建立關(guān)聯(lián)數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系,將離散的、實(shí)時(shí)的數(shù)據(jù)串聯(lián)起來形成能表達(dá)更多含義信息集合,已形成基礎(chǔ)庫、業(yè)務(wù)庫、知識庫等數(shù)據(jù)集。
(5)應(yīng)用開發(fā)需求
依靠集中數(shù)據(jù)集,利用軟件工程及相關(guān)成熟的開發(fā)技術(shù),快速開發(fā)創(chuàng)新應(yīng)用以及數(shù)據(jù)可視化,支撐實(shí)際分析業(yè)務(wù)需要。
(6)大數(shù)據(jù)分析挖掘需求。
通過對海量的業(yè)務(wù)大數(shù)據(jù)進(jìn)行分析和挖掘,深度學(xué)習(xí),算法研究,輔助決策,提供資源配置分析優(yōu)化等輔助決策功能,促進(jìn)林業(yè)的快速、智能化的發(fā)展。
該研究以充分利用當(dāng)下大數(shù)據(jù)的優(yōu)勢和基礎(chǔ)地理信息資源為目標(biāo),構(gòu)建科學(xué)合理的森林資源信息管理新模式,為森林資源調(diào)查、森林資源規(guī)劃設(shè)計(jì)、森林資源動(dòng)態(tài)更新、森林資源數(shù)據(jù)共享等業(yè)務(wù)管理部門提供實(shí)時(shí)、準(zhǔn)確、可靠的森林資源信息,實(shí)現(xiàn)林業(yè)信息化管理。
森林資源分析系統(tǒng)作為一個(gè)整體,不僅需要對傳統(tǒng)業(yè)務(wù)的管理支撐,同時(shí)也可以面向海量數(shù)據(jù)、離線的多源數(shù)據(jù)和實(shí)時(shí)數(shù)據(jù)進(jìn)行有效的管理和分析。利用當(dāng)下成熟的軟件技術(shù)及新興的大數(shù)據(jù)框架,可將整體框架分為多源異類數(shù)據(jù)層、數(shù)據(jù)存儲(chǔ)與計(jì)算層、數(shù)據(jù)應(yīng)用層和用戶層(圖1)。
(1)多源異類數(shù)據(jù)層是數(shù)據(jù)產(chǎn)生的地方,其有多種形式,包含有業(yè)務(wù)系統(tǒng)、web 系統(tǒng)、手機(jī)app、外部系統(tǒng)、人工整理等。此層是數(shù)據(jù)產(chǎn)生的地方,是數(shù)據(jù)平臺(tái)的源頭;
(2)數(shù)據(jù)存儲(chǔ)與計(jì)算層是整個(gè)架構(gòu)的核心,完成了多源異類數(shù)據(jù)抽取、轉(zhuǎn)換、清洗和數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)建模,同時(shí)為計(jì)算資源提供調(diào)度;
(3)數(shù)據(jù)應(yīng)用包含報(bào)表展示、數(shù)據(jù)分析、即席分析、數(shù)據(jù)挖掘、機(jī)器學(xué)習(xí)、深度學(xué)習(xí)等多個(gè)數(shù)據(jù)方面的應(yīng)用;
(4)用戶層主要指系統(tǒng)使用和管理人員,包括林業(yè)資源調(diào)查與管理人員。
圖1 系統(tǒng)總體架構(gòu)Fig.1 System architecture diagram
與傳統(tǒng)林業(yè)資源管理方式的耗時(shí)、耗財(cái)、耗力以及繁瑣不同,森林資源管理系統(tǒng)能夠滿足不同層次林業(yè)部門的需要,幫助林業(yè)部門及時(shí)、全面地了解林業(yè)資源整體狀況,并進(jìn)行科學(xué)的決策分析,實(shí)現(xiàn)林業(yè)資源的持續(xù)發(fā)展。系統(tǒng)主要包括林地一張圖系統(tǒng)、統(tǒng)計(jì)分析系統(tǒng)、古樹名木管理信息系統(tǒng)以及系統(tǒng)管理,如圖2 所示。
圖2 系統(tǒng)功能結(jié)構(gòu)Fig.2 System functional structure diagram
3.2.1 森林一張圖
森林一張圖:包括森林資源圖層、公益林圖層、地名圖層和濕地圖層等,提供坐標(biāo)定位、地名搜索、緩沖分析及歷史數(shù)據(jù)對比等功能服務(wù)(圖3)。
圖3 森林一張圖綜合查詢系統(tǒng)Fig.3 Forest map integrated query system
3.2.2 統(tǒng)計(jì)分析模塊
統(tǒng)計(jì)分析主要包括對相關(guān)矢量和柵格數(shù)據(jù)的分析生成相關(guān)的統(tǒng)計(jì)報(bào)表和專題圖等,滿足各類林地業(yè)務(wù)需求。
3.2.3 古樹名木管理模塊
古樹名木管理信息系統(tǒng)通過地理信息和遙感手段,對實(shí)地采集的古樹名木信息整合、匯總、更新,實(shí)現(xiàn)對古樹名木的信息管理和長期監(jiān)測(圖4)。
圖4 古樹名木信息管理系統(tǒng)Fig.4 Ancient and famous trees information management system
3.2.4 系統(tǒng)管理模塊
系統(tǒng)管理:包括系統(tǒng)設(shè)置和數(shù)據(jù)庫管理兩部分;以系統(tǒng)管理、數(shù)據(jù)交換、信息發(fā)布和信息產(chǎn)品服務(wù)的方式,同時(shí)根據(jù)經(jīng)營活動(dòng)和自然災(zāi)害情況,對采伐、撫育間伐和災(zāi)害影響的小班進(jìn)行數(shù)據(jù)更新,為森林資源管理部門提供森林資源基礎(chǔ)信息服務(wù)。
數(shù)據(jù)采集傳輸工具和技術(shù)主要分為“離線批處理”和“實(shí)時(shí)數(shù)據(jù)采集和傳輸”兩大類。(1)Sqoop
Sqoop 是一個(gè)用來將Hadoop 和關(guān)系型數(shù)據(jù)庫中的數(shù)據(jù)相互轉(zhuǎn)移的工具,可以將一個(gè)關(guān)系型數(shù)據(jù)庫(例如:MySQL, Oracle, Postgres 等)中的數(shù)據(jù)導(dǎo)進(jìn)到Hadoop 的HDFS 中,也可以將HDFS 的數(shù)據(jù)導(dǎo)進(jìn)到關(guān)系型數(shù)據(jù)庫中。對于某些NoSQL 數(shù)據(jù)庫它也提供了連接器。類似于其他ETL 工具,使用元數(shù)據(jù)模型來判斷數(shù)據(jù)類型并在數(shù)據(jù)從數(shù)據(jù)源轉(zhuǎn)移到Hadoop 時(shí)確保類型安全的數(shù)據(jù)處理。Sqoop 專為大數(shù)據(jù)批量傳輸設(shè)計(jì),能夠分割數(shù)據(jù)集并創(chuàng)建Hadoop任務(wù)來處理每個(gè)區(qū)塊。
(2)Flume
Flume 是Cloudera 提供的一個(gè)高可用的,高可靠的,分布式的海量日志采集、聚合和傳輸?shù)南到y(tǒng),F(xiàn)lume 支持在日志系統(tǒng)中定制各類數(shù)據(jù)發(fā)送方,用于收集數(shù)據(jù);同時(shí),F(xiàn)lume 提供對數(shù)據(jù)進(jìn)行簡單處理,并寫到各種數(shù)據(jù)接受方(可定制)的能力。
(1)Hadoop MapReduce
MapReduce 是一種可用于數(shù)據(jù)處理的編程框架。MapReduce 采用“分而治之”的思想,把對大規(guī)模數(shù)據(jù)集的操作,分發(fā)給一個(gè)主節(jié)點(diǎn)管理下的各個(gè)分節(jié)點(diǎn)共同完成,然后通過整合各個(gè)節(jié)點(diǎn)的中間結(jié)果,得到最終結(jié)果。
在分布式計(jì)算中,MapReduce 框架負(fù)責(zé)處理了并行編程中分布式存儲(chǔ)、工作調(diào)度、負(fù)載均衡、容錯(cuò)均衡、容錯(cuò)處理以及網(wǎng)絡(luò)通信等復(fù)雜問題,把處理過程高度抽象為兩個(gè)函數(shù):map 和reduce,map 負(fù)責(zé)把任務(wù)分解成多個(gè)任務(wù),reduce 負(fù)責(zé)把分解后多任務(wù)處理的結(jié)果匯總起來。
(2)Hive
Hive 是基于Hadoop 的一個(gè)數(shù)據(jù)倉庫工具,可以將結(jié)構(gòu)化的數(shù)據(jù)文件映射為一張數(shù)據(jù)庫表,并提供簡單的sql 查詢功能,可以將sql 語句轉(zhuǎn)換為MapReduce 任務(wù)進(jìn)行運(yùn)行。其優(yōu)點(diǎn)是學(xué)習(xí)成本低,可以通過類SQL 語句快速實(shí)現(xiàn)簡單的MapReduce 統(tǒng)計(jì),不必開發(fā)專門的MapReduce 應(yīng)用,十分適合數(shù)據(jù)倉庫的統(tǒng)計(jì)分析。
(1)Hadoop HDFS 分布式文件系統(tǒng)
HDFS 被設(shè)計(jì)成適合運(yùn)行在通用硬件上,是一個(gè)高度容錯(cuò)性的分布式文件系統(tǒng)。HDFS 能提供高吞吐量的數(shù)據(jù)訪問,非常適合大規(guī)模數(shù)據(jù)集上的應(yīng)用。HDFS 放寬了一部分POSIX 約束,來實(shí)現(xiàn)流式讀取文件系統(tǒng)數(shù)據(jù)的目的。
在Hadoop 的整個(gè)架構(gòu)中,HDFS 在MapReduce任務(wù)處理過程中提供了對文件操作和存儲(chǔ)等的支持,MapReduce 在HDFS 基礎(chǔ)上實(shí)現(xiàn)了任務(wù)的分發(fā)、跟蹤和執(zhí)行等工作,并收集結(jié)果,兩者互相作用,共同完成Hadoop 分布式集群的主要任務(wù)。
(2)HBase
HBase 是一個(gè)高可靠性、高性能、面向列族、可伸縮的分布式存儲(chǔ)系統(tǒng),可以構(gòu)建在HDFS 之上。HBase 不同于一般的關(guān)系數(shù)據(jù)庫,它是一個(gè)適合于非結(jié)構(gòu)化數(shù)據(jù)存儲(chǔ)的數(shù)據(jù)庫。
(1)Drill
Drill 是一個(gè)開源實(shí)時(shí)大數(shù)據(jù)分布式查詢引擎。它兼容ANSI SQL 語法作為接口,支持對本地文件、HDFS、HBase、MongeDB 作為存儲(chǔ)的數(shù)據(jù)查詢,文件格式支持Parquet、CSV、TSV 以及JSON 這種無模式的數(shù)據(jù)??梢韵袷褂脗鹘y(tǒng)數(shù)據(jù)庫的表查詢一樣進(jìn)行快速實(shí)時(shí)查詢。
該平臺(tái)采用Ubuntu linux 操作系統(tǒng)、Hadoop多節(jié)點(diǎn)集群(Hadoop Multi Node Cluster)進(jìn)行構(gòu)建,其目的主要解決多源異構(gòu)、離線的海量數(shù)據(jù)存儲(chǔ)。集群規(guī)劃如圖5 所示,可由多臺(tái)服務(wù)器組成。在日后平臺(tái)需要線性升級,只需要在直接添加硬件設(shè)備,并進(jìn)行相關(guān)配置即可線性提升平臺(tái)能力。
圖5 Hadoop 多結(jié)點(diǎn)集群結(jié)構(gòu)Fig.5 Hadoop multi-node cluster architecture
將一臺(tái)服務(wù)器設(shè)置為master 主機(jī),在HDFS 中擔(dān)任Name Node 角色,在MapReduce2 中擔(dān)任Resource Manager 角色;
其余服務(wù)器在HDFS 中擔(dān)任Data Node 角色,在MapReduce2 擔(dān)任Node Manager 角色。
Hadoop 多節(jié)點(diǎn)集群規(guī)劃,整理如下表格所示:
服務(wù)器名稱 YARN 內(nèi)部IP HDFS Mater Date1 Date2 Date3 192.168.1.5 192.168.1.6 192.168.1.7 192.168.1.8 Name Node Data Node Data Node Data Node Resource Manager Node Manager Node Manager Node Manager
頂層設(shè)計(jì)的先進(jìn)、合理,是一個(gè)系統(tǒng)平臺(tái)開發(fā)成功與否的關(guān)鍵。Hadoop 是大數(shù)據(jù)領(lǐng)域最流行的高效處理平臺(tái),是一個(gè)集分布式計(jì)算、存儲(chǔ)和管理為一體的生態(tài)系統(tǒng),可有效解決傳統(tǒng)森林資源管理和分析存在數(shù)據(jù)的統(tǒng)一性、規(guī)范性、更新不及時(shí)等問題;平臺(tái)將圖形和屬性的更新結(jié)合在一起,減少了因內(nèi)外業(yè)分離而產(chǎn)生的人為誤差;同時(shí),基于地理信息技術(shù)的可視化空間分析,充分體現(xiàn)了林業(yè)區(qū)域統(tǒng)計(jì)數(shù)據(jù)的空間信息特征;該平臺(tái)可極大改善傳統(tǒng)林業(yè)資源統(tǒng)計(jì)數(shù)據(jù)的表現(xiàn)形式,提高林業(yè)資源統(tǒng)計(jì)數(shù)據(jù)的可視化程度,把各類森林資源信息置于統(tǒng)一的框架之下,實(shí)現(xiàn)森林資源跨地區(qū)、跨業(yè)務(wù)集成應(yīng)用及數(shù)據(jù)整合,為各級林業(yè)部門實(shí)現(xiàn)科學(xué)高效的資源監(jiān)管提供科學(xué)、準(zhǔn)確的數(shù)據(jù)參考。