馮 敏,樊 昕,呂 剛
(1.山東第一醫科大學(山東省醫學科學院)醫學信息工程學院,山東 泰安 271000;2.泰安市科學技術情報研究所,山東 泰安 271000;3.山東農業大學 信息科學與工程學院,山東 泰安 271000)
當前,隨著社會信息化程度的大幅度提高,農業領域每天產生大量的相關數據,但是這些數據沒有得到有效地利用,因此,研究開發一個適合的農業大數據應用系統平臺顯得尤為重要和關鍵,它對提高我國農業領域大數據的有效利用發揮至關重要的作用[1]。農業大數據是融合了農業地域性、季節性、多樣性、周期性等自身特征后產生的來源廣泛、類型多樣、結構復雜、具有潛在價值,并難以應用通常方法處理和分析的數據集合。農業大數據保留了大數據自身具有的規模巨大(volume)、類型多樣(variety)、價值密度低(value)、處理速度快(velocity)、精確度高(veracity)和復雜度高(complexity)等基本特征,并使農業內部的信息流得到了延展和深化[2]。農業大數據是大數據理念、技術和方法在農業的實踐。農業大數據涉及到耕地、播種、施肥、殺蟲、收割、存儲、育種等各環節,是跨行業、跨專業、跨業務的數據分析與挖掘,以及數據可視化[3]。因此,為有效利用農業大數據,各相關單位和個人都在開發和研究農業大數據平臺的關鍵技術。
為了不斷推進農業經濟的優化,實現可持續的產業發展和區域產業結構優化,進一步推動智慧農業的建設進程,需要全面及時掌握農業的發展動態,這需要依托農業大數據及相關大數據分析處理技術,建設一個農業大數據分析應用平臺[1,4-5]。該大數據應用平臺功能涵蓋以下方面:(1)實現數據庫的交互;(2)根據農業大數據研究的個性化需求,形成一系列相關公開發布數據的采集機制,將數據采集的相關程序設計并編寫完善,部署此套機制在平臺上周期運轉;(3)數據的瀏覽,對數據進行查詢、展現和基礎統計分析等初步應用;(4)實現農業大數據分析人員的交流平臺。本文簡要介紹了農業大數據發展的背景和發展農業大數據的意義,總結了大數據的含義。同時,對農業大數據在農業資源管理、農業生產過程管理、農業產品和農業食品安全管理、農業生態環境管理等方面的主要應用進行了總結和分析[6-7]。在實驗部分,本文設計并實現了一個基于Hadoop的農業大數據系統平臺。
大數據沒有固定的標準化定義,即便如此,我們也不會否認它對社會發展的重要影響,但在不同的國家,它對不同的對象有著不同的價值體現,其核心作用是不可替代的[8]。數據的多樣性和差異性決定了它能夠根據不同的環境作出準確的判斷,具有很大的應用價值。大多數人都熟悉結構化數據,但實際使用的數據多為非結構化數據,例如,文本處理和電子郵件傳輸都是半結構化數據,這些數據屬于過渡數據,真正的大數據集中體現在互聯網和電子商務應用上,如文檔、網頁、報告、圖片、音頻和視頻等各種數據類型。
從全球來看,農業大數據技術對農業的現代化發展都起到了至關重要的作用,當然對我國的農業發展,也必將起到關鍵作用。通過對數據來源的分析,我國目前應用大數據技術的主要領域有[9]:
(1)農業生產過程管理數據:農業信息化的第一步在于生產,這一聯系涉及水產養殖、種植業和農業,在生產過程中,首先要保證數據能夠準確地檢測出多因素的環境因素,以便開展種植。第二,我們必須有一個果斷而明智的生產決策計劃,因此,必須在規章制度和管理上進行合理配置,以便盡快解決問題。
(2)農業資源管理數據:可持續發展是經濟增長最基本的前提。與上個世紀相比,我國農業資源稀缺,因此必須繼續根據當前的發展形勢和生態環境的多樣性來使用數據,完善農業生產,統籌規劃,提高農業資源的有效利用率。
(3)農業生態環境相關數據:農業生態環境是指直接或者間接影響農業生存和發展的土地資源、水資源、氣候資源和生物資源等各種要素的總稱,是農業生存和發展的前提,是人類社會生產發展最重要的物質基礎。
(4)農業和食品安全管理數據:農業生產的最終目的是滿足人民群眾最基本的生存保障。農業和食品安全問題已成為消費者關注的主要問題。為了降低生產成本,農民把所有的精力都花在農產品上,有時有意無意地破壞了食品安全。針對這種情況,農業有關部門要加強對農作物產區、生產車間和市場流通區環境的管理。
(5)農業設備設施大數據監測:農業生產環境要與資源、市場相匹配,并應進行適當地監測,以促進農業信息的處理和有效利用[10]。
Hadoop是一個用于開發和操作大規模數據的軟件平臺,它是一個用Java語言實現的Apache開源軟件框架,用戶可以開發分布式程序,充分利用當前熱門的集群處理的強大功能來實現大數據的海量存儲和高速計算,而不必過分關注具體細節。我們借助平臺Hadoop實現了一個分布式文件系統(Hadoop分布式文件系統),稱為HDFS,HDFS具有很高的容錯性,并且被設計為部署在廉價的硬件上;此外,它還提供了訪問應用程序數據的高吞吐量,并且適用于具有非常大的數據集的應用程序。
作為一個大數據系統,首先需要解決的問題是數據捕獲問題,然后對數據進行清理和預處理,然后用Hadoop離線分析數據,最后用可視化軟件Echarts顯示數據分析的結果。系統主要包括五個模塊:數據爬蟲模塊、數據清洗模塊、Hadoop離線分析模塊、Hbase數據庫持久化模塊和Web數據可視化模塊,最底層是數據刮取模塊。農業大數據主要來源于農業大數據應用云平臺、布萊克農業數據網站及其他相關網站。獲取原始數據后,需要對原始數據進行排序和清理,去除不合理的值,然后進入數據離線分析階段,這個階段主要基于Hadoop MapReduce編程模型,編寫多個MapReduce任務,并將最終結果本地存儲;然后是數據持久化階段,即使用MySQL數據庫,對離線分析后的文本文件進行解析,然后存儲在MySQL數據庫中;Web數據可視化模塊直接面向用戶,用戶可以通過這個Web界面輕松看到數據分析結果。數據報表包括使用直方圖、餅圖等,顯示數據分析結果。
本文的實驗主要是在Windows10操作系統上搭建一個Hadoop開發調試環境,然后利用Vmware14.0軟件搭建一個分布式Hadoop環境。
對于讀取性能測試,我們在數據庫中分別設計了以下的記錄條數:10000條、100000條、1000000條和10000000條,然后測試分別從以上數據表中查找10條、100條和1000條記錄所耗費的響應時間。實驗結果如表1和圖1所示。

圖1 實驗結果圖

表1 實驗結果明細表
3.2.1 農業種植的智能控制
農業智能控制系統無論是灌溉還是施肥都是根據傳感器決定的,比如通過土壤濕度傳感器監測土壤水分,當土壤水分低于標準值,就打開灌溉系統,土壤濕度達到了標準值,就自動關閉灌溉系統,施肥也是同樣的原理。它也可以直接按照指令下達使用,如灌溉和施藥等。傳統的農業種植中對于灌溉、施肥都是憑經驗控制,傳統的無論是灌溉和施肥必然會存在浪費或者不合理的情況,然而使用智能農業控制系統本身是根據土壤濕度和養分來控制,可以在保證農作物需求的前提下,最大限度節約灌溉水和施肥,據了解,智能物聯網大棚可以節約灌溉水60%以上,節約化肥50%以上[11]。通過自動化的控制灌溉,施肥環境信息,可以最大限度地減輕種植者的工作內容,可以一個人輕松管理幾十畝的種植,因此很大程度地節省了種植的人力。智能農業控制系統對于環境要素,都是根據傳感器反饋實時數據決定的,因此可以有效地改善農作物生長的環境,從而達到提高農作物的品質和產量的目的。
3.2.2 農業信息的有效利用
在傳統農業生產過程中,由于各方面的不確定因素,比如:市場需求、自然條件等,難免會出現意外情況。而通過大數據技術平臺的高度整合和相關信息的快速收集,比如:農業生產活動信息、農產品市場供求等信息,對這些信息進行數據挖掘,得到有用信息,從而達到有效規避農業風險的目的[12]。
3.2.3 農業管理方面
智慧農業管理優越性主要體現在以下幾個方面:(1)可以有效實現農業生產過程的智能化管理。在這個過程中,需要通過相關大數據平臺實時采集和整理農業數據。具體問題具體分析,根據相關數據得到所需信息,并進行有效利用和使用[13]。(2)合理協調農業資源。農業資源是農業自然資源和農業經濟資源的總稱。農業自然資源含農業生產可以利用的自然環境要素,如土地資源、水資源、氣候資源和生物資源等。農業經濟資源是指直接或間接對農業生產發揮作用的社會經濟因素和社會生產成果,如農業人口和勞動力的數量和質量、農業技術裝備、包括交通運輸、通訊、文教和衛生等農業基礎設施等。可以利用農業大數據技術進行農業領域的全面調查,整合各種農業資源,優化農業資源結構。(3)重點保護農業生態環境。農業生態環境是指直接或者間接影響農業生存和發展的土地資源、水資源、氣候資源和生物資源等各種要素的總稱,是農業生存和發展的前提,是人類社會生產發展最重要的物質基礎[14]。通過對農業生態環境的全面檢測和實時監測,利用農業大數據技術來實現農業生產精細化、精準化管理。(4)通過智慧農業相關技術保證農業生產設施安全。我們可以利用系統平臺收集到的大量數據,及時分析研判,實時掌控設施的正常運轉,保證農業生產的效率。
隨著農村電商的發展,農業上下游的農資銷售、農業生產、農產品流通數據,以及與農業關聯的土地流轉、氣象、土壤、水文等數據,均獲得大規模積累沉淀,這些大數據將成為農業決策的“大腦”。農業大數據市場還是一個充滿機遇、有待開發的市場。為此,需要政府部門、涉農企業、大數據企業和農業生產經營主體多方合力,共同推進農業大數據的示范與推廣。