六月婷婷AV,国产偷窥猎奇福利二区,日韩三级片。,好吊色网站,日韩成人中文在线视频,国产亚洲午夜啪啪,亚洲欧美另类国产精品,国产成人av1,任你艹在线观看

10倍性能優(yōu)勢!TDengine在云洋物聯(lián)智慧農業(yè)業(yè)務中替代MongoDB

Cloud Young Hongwei Ye

2021-09-18 / ,

作者介紹

葉紅偉,北京云洋物聯(lián)技術有限公司軟件研發(fā)經理,主要從事智慧農業(yè)平臺開發(fā)及應用,負責平臺的架構設計以及主要業(yè)務代碼開發(fā)工作。

關于云洋物聯(lián)

作為國內領先的數(shù)字農業(yè)產品與解決方案服務商,云洋物聯(lián)自成立以來便始終致力于推動三農新基建的發(fā)展,以數(shù)據賦能農業(yè)建設,以科技振興鄉(xiāng)村作為使命初心,加速農業(yè)農村的轉型升級。同時,科學運用互聯(lián)網、物聯(lián)網、大數(shù)據、區(qū)塊鏈等新興技術,將AloT技術與農業(yè)生產技術深度融合,在政策與科技的融匯交集、疊加備力下,助力行業(yè)企業(yè)實現(xiàn)降本增效、提質增收。 業(yè)務快速發(fā)展之余,云洋物聯(lián)不可避免地也遇到了一些棘手的難題,如元數(shù)據的存儲模式導致空間占用率加速膨脹,查詢分析操作響應時間達不到要求,系統(tǒng)復雜度越來越高等等。

在此背景下,云洋物聯(lián)決定采用時序數(shù)據庫(Time-Series Database),并經過一系列測試和對比分析后得出選型結論——基于全表和單個設備進行統(tǒng)計查詢,TDengine對比MongoDB分別快了3倍、10倍。于是,云洋物聯(lián)決定將系統(tǒng)從原有架構遷移到TDengine Database。

業(yè)務架構詳解

云洋物聯(lián)智慧農業(yè)平臺是一家基于農業(yè)物聯(lián)網設備和AI種植模型,為溫室大棚、大田提供標準化智能種植方案的技術服務商。在實際生產種植環(huán)境中,云洋物聯(lián)以每個大棚、大田為基準點,根據作物的不同茬口及生育期,匹配出適宜作物生長的環(huán)境參數(shù),并以此建立合適的智能種植方案。 具體而言,云洋系統(tǒng)會通過物聯(lián)網采集設備實時上報的數(shù)據,判斷棚內環(huán)境是否適宜種植作物生長。當棚內環(huán)境觸發(fā)設備設置對應閾值時,關聯(lián)狀態(tài)下的手機等電子設備將會啟動告警通知,或觸發(fā)控制設備的自動控制開關。此外,通過模型算法還能計算出大棚、大田積溫情況,利用空氣溫度、濕度等環(huán)境要素來預測是否會觸發(fā)蟲害、病害等危害。

10倍性能優(yōu)勢!TDengine在云洋物聯(lián)智慧農業(yè)業(yè)務中替代MongoDB - TDengine Database 時序數(shù)據庫
圖1 云洋系統(tǒng)的運營監(jiān)控大屏

圖1 云洋系統(tǒng)的運營監(jiān)控大屏,圖2為云洋系統(tǒng)的業(yè)務架構圖,其中最下層設備層為邊緣硬件設備,通過設備數(shù)據分發(fā)網關對設備實時數(shù)據進行定向分發(fā)。

業(yè)務架構中幾個重要模板的分工為:

  • 設備控制服務負責下發(fā)設備控制及響應、設備運維處理、設備遠程升級、日志讀取等功能;
  • 設備數(shù)據分析告警按照定義的規(guī)則對實時數(shù)據進行分析告警;
  • 設備存儲服務負責對設備數(shù)據進行解析入庫,提供設備數(shù)據查詢功能;
  • 業(yè)務層則是對實際業(yè)務的抽象,結合用戶園區(qū)地塊及綁定的物聯(lián)網設備、設備產生的數(shù)據,結合標準化種植模型進行方案推薦及病害蟲害的預測。
10倍性能優(yōu)勢!TDengine在云洋物聯(lián)智慧農業(yè)業(yè)務中替代MongoDB - TDengine Database 時序數(shù)據庫
圖2 業(yè)務架構圖

元數(shù)據存儲模式導致數(shù)據表空間占用率膨脹十幾倍

眾所周知,農業(yè)物聯(lián)網設備主要分為環(huán)境數(shù)據采集與控制兩大類。其中環(huán)境數(shù)據采集型設備,細分的話又有各類單品傳感器、多合一傳感器和氣象站等,而這些設備采集環(huán)境要素指標往往也具有多樣性。

下圖為不同設備的采集信息情況:

10倍性能優(yōu)勢!TDengine在云洋物聯(lián)智慧農業(yè)業(yè)務中替代MongoDB - TDengine Database 時序數(shù)據庫
10倍性能優(yōu)勢!TDengine在云洋物聯(lián)智慧農業(yè)業(yè)務中替代MongoDB - TDengine Database 時序數(shù)據庫
10倍性能優(yōu)勢!TDengine在云洋物聯(lián)智慧農業(yè)業(yè)務中替代MongoDB - TDengine Database 時序數(shù)據庫

發(fā)展至今,平臺上在線設備已經有一萬多臺,設備每日上報的數(shù)據量達到上百萬條。 這些數(shù)據基于MySQL、Redis、MongoDB實現(xiàn)多級存儲 ,而在設備采集參數(shù)的不確定性問題上,我們采用基于元數(shù)據的范式,增加對設備統(tǒng)一集中管理配置的靈活性。

但元數(shù)據的設計存儲模式在靈活便捷之余,也存在一些缺陷。舉例來說,如果我們將5個采集要素的設備數(shù)據進行存儲,則會生成5條數(shù)據,對比單表存儲數(shù)據量膨脹了5倍。此時針對一些客戶的需求,比如給潮州佳寶產業(yè)園定制的導管式土壤監(jiān)測站,有十幾個環(huán)境要素,基于上述的存儲模式,表空間占用率將膨脹達十幾倍。

除此之外,因為使用的是傳統(tǒng)數(shù)據庫,所有設備數(shù)據都是存儲在一張表上。在這種存儲情況下,為了滿足實時性查詢的需求,對最新數(shù)據采用Redis進行存儲;為了滿足周期數(shù)據的范圍查詢,全量的歷史數(shù)據則通過MongoDB按時間線分表存儲,時段內變動的數(shù)據則存儲在MySQL。

設備歷史數(shù)據查詢:

10倍性能優(yōu)勢!TDengine在云洋物聯(lián)智慧農業(yè)業(yè)務中替代MongoDB - TDengine Database 時序數(shù)據庫

地塊環(huán)境走勢曲線:

10倍性能優(yōu)勢!TDengine在云洋物聯(lián)智慧農業(yè)業(yè)務中替代MongoDB - TDengine Database 時序數(shù)據庫

隨著業(yè)務功能的豐富細化及設備量的日益增加,對設備數(shù)據的實時查詢、時間范圍分析的需求增加,基于MySQL和Mongo DB進行查詢分析操作響應時間較長,系統(tǒng)復雜度也逐漸增高。為了滿足對設備數(shù)據高效的查詢分析,我們準備將設備數(shù)據存儲切換到時序數(shù)據庫。

為什么選擇 TDengine?

在實際的業(yè)務中,對一段時間內的數(shù)據進行分析是系統(tǒng)中很常見的一個操作。我們在MongoDB(對時間和設備編碼建立了索引)和TDengine上都存儲了3000萬條數(shù)據,首先對全表進行時間區(qū)間數(shù)據分組統(tǒng)計查詢,兩種數(shù)據庫的查詢結果顯示如下:

MongoDB:

10倍性能優(yōu)勢!TDengine在云洋物聯(lián)智慧農業(yè)業(yè)務中替代MongoDB - TDengine Database 時序數(shù)據庫

TDengine:

10倍性能優(yōu)勢!TDengine在云洋物聯(lián)智慧農業(yè)業(yè)務中替代MongoDB - TDengine Database 時序數(shù)據庫

通過對比,基于全表進行時間區(qū)間數(shù)據分組統(tǒng)計查詢,TDengine比MongoDB快了3倍。

接下來對單個設備進行數(shù)據分組統(tǒng)計查詢操作,兩種數(shù)據庫的查詢結果如下圖所示:

MongoDB:

10倍性能優(yōu)勢!TDengine在云洋物聯(lián)智慧農業(yè)業(yè)務中替代MongoDB - TDengine Database 時序數(shù)據庫

TDengine:

10倍性能優(yōu)勢!TDengine在云洋物聯(lián)智慧農業(yè)業(yè)務中替代MongoDB - TDengine Database 時序數(shù)據庫

基于單個設備數(shù)據的查詢統(tǒng)計,MongoDB是非本地查詢,存在一定的網絡開銷,響應速度在1秒以內,而TDengine對比MongoDB快了10倍以上。

10倍性能優(yōu)勢!TDengine在云洋物聯(lián)智慧農業(yè)業(yè)務中替代MongoDB - TDengine Database 時序數(shù)據庫
使用TDengine實現(xiàn)的蟲害預警

通過上述的測試和應用實踐,我們發(fā)現(xiàn)TDengine具有諸多優(yōu)勢特點,下面簡要列舉一下選擇它的五個理由:

  • 數(shù)據模型:對比傳統(tǒng)數(shù)據庫,TDengine采用一個采集點一張表,動態(tài)靜態(tài)數(shù)據分離模式,對同一類型的采集點采用超級表進行數(shù)據統(tǒng)一查詢管理的設計
  • 窗口查詢:對比MongoDB、MySQL進行時間范圍的函數(shù)操作,響應速度快了一個級別
  • 支持標準SQL: 使用簡單,學習成本低
  • 標簽查詢:基于給表定義標簽,可以方便地查詢統(tǒng)計分組設備
  • 運維簡單:數(shù)據庫的安裝、副本擴容,通過簡單的配置即可完成

未來展望

這是一個非常驚喜的開始,云洋物聯(lián)和TDengine Database的合作不止于此。未來我們將結合業(yè)務需求,在更多場景下應用TDengine進行數(shù)據存儲,同時對TDengnie的消息隊列、緩存、流式計算等功能進行學習應用。

此外,在調研和使用的落地過程中,也非常感謝濤思數(shù)據提供的專業(yè)性指導和建議,祝TDengine越來越好。