999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于時序數據庫的海洋裝備監控數據存儲系統

2023-08-01 12:20:01倪昱鄭志恒
現代信息科技 2023年11期

倪昱 鄭志恒

摘? 要:目前在海洋裝備上通常使用關系數據庫存儲海量監控數據,存在空間占用大、查詢性能差的問題。文章提出了基于時序數據庫的海洋裝備監控數據存儲解決方案,并基于國產數據庫TDEngine完成了系統工程實現,實現了監控數據的自動建表、自動存儲以及快速可視化。經測試表明,該系統的數據壓縮和查詢性能相比于傳統關系型數據庫具有明顯優勢,為解決海洋裝備海量監控數據存儲的難題提供了良好的解決方法。

關鍵詞:時序數據庫;監控數據存儲;海洋裝備;TDEngine

中圖分類號:TP39;U665.26? 文獻標識碼:A? 文章編號:2096-4706(2023)11-0101-04

Monitoring Data Storage System for Marine Equipment Based on Time Series Database

NI Yu, ZHENG Zhiheng

(State Key Laboratory of Deep-Sea Manned Vehicles, China Ship Scientific Research Center, Wuxi? 214082, China)

Abstract: At present, relational database is usually used to store massive monitoring data on marine equipment, which has the problems of large space occupation and poor query performance. This paper proposes a solution of monitoring data storage for marine equipment based on time series database, and completes the system engineering implementation based on the domestic database TDEngine, which realizes automatic table building, automatic storage and rapid visualization of monitoring data. The tests show that the data compression and query performance of the system has obvious advantages over traditional relational database, which provides a good solution to the difficult problem of massive monitoring data storage for marine equipment.

Keywords: time series database; monitoring data storage; marine equipment; TDEngine

0? 引? 言

隨著計算機軟硬件技術的飛速發展,監控系統在海洋裝備中得到了更加廣泛的應用。對于船舶、載人潛器等有人裝備,監控數據提供了運行狀態分析、故障判斷的有力手段;對于無人艇、水下機器人等無人裝備,監控數據提供了自主決策控制的依據。

為了對歷史數據進行分析查看,需要實現監控數據的存儲。目前對于海洋裝備的監控數據存儲,一般采用MySQL、Oracle等關系數據庫,然而監控歷史數據是高頻次采集的時序數據,使用關系數據庫存儲會帶來以下問題:

1)存儲空間占用大。海洋裝備中的監控數據測點數量多,采樣頻率高,需要保存的時間周期長,因此數據量大。因為關系數據庫的壓縮算法沒有針對時序數據進行優化,所以在通常的磁盤容量很難滿足上述海量數據的存儲需求。

2)查詢性能差。海量數據檢索對數據庫的查詢性能要求較高。關系數據庫的索引算法同樣沒有針對時序數據進行優化,隨著存儲空間的不斷增長,難以獲得滿意的查詢性能。

針對以上問題,本文提出了基于時序數據庫的海洋裝備監控數據存儲系統方案,完成了系統的方案設計和工程實現,并對系統性能進行了測試分析。

1? 海洋裝備監控數據存儲現狀

浙江大學先進控制研究所研制了“船用柴油機智能報警監控系統”[1],該系統采用現場級、集控室級和駕駛室級三層網絡控制結構,各層之間使用CAN總線協議進行通信,實現了快速數據采集、記錄、報警、查詢、顯示等功能以及對柴油機起動、換向、調速的控制。該系統通過Oralce關系數據庫存儲柴油機轉速、燃油進機壓力、燃油進機溫度、主軸瓦溫度、滑油進機壓力、滑油進機溫度、滑油出機溫度等柴油機報警監控數據。

大連海事大學研制了“基于OPC技術的船舶機艙數據采集與監測系統”[2],該系統由位于底層的狀態數據采集卡、中間層OPC機艙數據訪問服務器、上層OPC機艙監測系統三層結構組成。上層OPC機艙監測客戶端負責將從OPC機艙數據訪問服務器讀取的各個機艙設備的狀態數據,通過Access關系數據庫實現監控狀態數據的存儲。

中國海洋大學研制了“基于MOOS的AUV的數據采集和監控系統”[3]。該系統采用模塊化、分布式的設計方案,宏觀上把AUV分為四大系統模塊:中央控制系統、同時定位和地圖構建系統、數據采集和保存分析系統、底層動力驅動和控制系統。其數據采集和保存分析系統采集各傳感器和AUV艙內參數信息,通過文件形式進行監控數據存儲。

海軍研究院研制了“艦船電磁環境數據庫”[4],在分析國內外艦船電磁環境極限值的基礎上,以設計結構模塊及運算規則,動態生成艦船不同區域分頻段的場強極限值,為電磁輻射環境下艦面作業安全提供數據支撐。該系統使用MySQL關系數據庫進行基礎數據存儲,基礎數據分為實測數據、仿真數據和理論數據三種類型,實測數據來源于實船或實裝測試結果,仿真數據來源于艦船模型數值仿真,理論計算數據來源于依據電磁場理論的估算結果。

以上海洋裝備的監控系統都采用關系數據庫或者文件進行數據存儲。

2? 系統設計

2.1? 時序數據庫

海洋裝備監控數據主要是海量的時序數據,實際場景中很少有更新和刪除操作,查詢分析主要基于時間序列和信號名稱。時序數據庫按時間序列來存儲實時變化的數據,與傳統的關系數據庫相比,其優勢是通過數據壓縮算法來減少存儲空間占用,同時通過數據索引算法實現海量數據的快速查詢和訪問。

2.1.1? 數據壓縮算法

時序數據的數據壓縮算法通常可分為兩類:有損壓縮算法和無損壓縮算法。有損壓縮算法主要是線性擬合算法,壓縮效率更高,但不適用于實時監控場景下的問題排查。主流的時序數據庫一般采用無損壓縮算法,最常用的是基于快速浮點數據壓縮的累積數據批處理壓縮算法,如Simple8b、PforDelta等[5,6],在不丟失數據的情況下,同時保證了壓縮率。

2.1.2? 數據索引算法

索引是數據庫執行查詢的前提,也是提升查詢性能的基礎。索引算法的關鍵是數據空間的劃分方法,關系數據庫一般直接在一維或二維空間的分類劃分實現數據索引。而時序數據庫通常采用基于R-tree的高維度空間索引算法[7],并通過小波變換等方法完成時序變換,對于時序數據通常能明顯提升查詢性能。

2.2? 數據庫選型

目前最常用的時序數據庫有InfluxDB、KDB+、OpenTSDB等。在系統設計時沒有選用這些國外產品,而是選用了國產時序數據庫TDEngine,主要有以下三個原因。

1)TDEngine是國產開源軟件,更滿足艦船等軍用海洋裝備自主可控的需求。

2)TDEngine支持Arm32處理器架構,可運行在嵌入式開發板上,滿足水下機器人等小型海洋裝備的需求。

3)TDEngine創新性地使用單表存儲單個采集點數據,同時利用超級表進行高效聚合,相比InfluxDB等主流產品進一步提升了數據的寫入和查詢速度,同時也大幅提高了數據壓縮效率。

2.3? 系統架構

整個系統主要包括數據采集層、數據存儲層、數據展示層3層,整體架構如圖1所示。

數據采集層負責監控數據的采集,海洋裝備常常由航行推進系統、電力系統、輔機系統、通導系統等子系統等組成,需采集各類機電設備、傳感器的數據。系統使用OPC UA規范進行標準化的監控數據采集[8],各子系統盡量選用支持OPC UA規范的PLC控制器,對于不支持的子系統或設備,則需要開發OPC UA服務軟件實現數據采集,或者通過支持OPC UA的智能網關硬件實現數據采集。

數據存儲層完成監控數據的存儲。開發數據存儲服務程序,讀取各子系統OPC UA服務采集的監控數據,然后將數據批量寫入到TDEngine時序數據庫。

數據展示層負責存儲監控數據的可視化。Grafana是時序數據庫可視化工具[9],通過Grafana定制的數據看板,生成所需的圖表視圖,提供監控應用所需的數據展示界面。數據展示界面通過瀏覽器訪問,支持權限控制,提供不同權限用戶不同的數據視圖,并支持電腦、手機、Pad等多端設備訪問。

不同于時序數據庫中常用的單列模型,為了進一步提升數據寫入和存儲效率,本系統采用了基于TDEngine的多列模型,并使用超級表加普通表的數據庫結構設計。多列模型指的是一個數據采集點同時采集的多個數據作為不同列放在一張表中,例如ROV推進器A的轉速、溫度、電流、電壓等多個數據作為普通表推進器A的多個列。每一種類型的數據采集點建立一張超級表,與該類型各普通表關聯,例如ROV推進器類型數據建立超級表,關聯到8個推進器的普通表。基于這種數據庫結構設計,用戶可以根據靜態信息進行多維度聚合查詢,更好更快地進行監控數據的統計分析。

3? 系統實現

3.1? 數據存儲服務

數據存儲服務是本系統中最關鍵的功能模塊,其實現可以分為三部分。

3.1.1? 數據讀取

讀取數據采集層中各OPC UA數據服務的數據。首先解析各OPC UA服務的信息模型,建立OPC object的層次結構以及和下屬OPC value的對應關系;然后訂閱各OPC UA服務中所有的OPC value的數據變化,將更新后的OPC value值讀取到內存緩沖區。其中采集數據訂閱更新周期、OPC UA服務地址等參數可以進行設置。

3.1.2? 批量插入語句生成

時序數據庫批量寫入數據可大幅提升寫入性能,因此不是每次采集數據更新時立刻寫入數據庫,而是每周期讀取內存緩沖區OPC value最新值,生成一行插入語句,將一段時間內產生的多行批量插入語句保存到插入緩沖區。

3.1.3? 數據寫入

根據設置的插入緩沖區大小或者寫入的周期,執行符合時序數據庫行協議的批量插入語句,將數據寫入TDEngine數據庫,并清空插入緩沖區。其中TDEngine數據庫信息、數據寫入周期、插入緩沖區大小等參數可以進行設置。

數據庫系統建立時通常需要手動建表,數據對象變化時,還需要進行表結構修改的繁雜操作。為避免建立、維護數據庫表的手動操作,使用TDEngine的無模式寫入方式進行數據寫入,可自動生成和修改相應的數據庫表。例如,無模式寫入ROV導航系統慣導設備采集的位置、加速度、姿態等數據時,TDEngine可自動建表并根據數據類型自動建立相應字段,如圖2所示。

3.2? 數據可視化

系統使用Grafana實現監控數據可視化,Grafana通過RESTful接口訪問TDEngine連接器服務進行數據查詢。利用Grafana工具快速生成折線圖、柱狀圖、表格等完成監控數據的可視化,以實際的應用場景為背景搭建不同的監控界面。例如ROV導航監控可創建位置、姿態等狀態數據歷史曲線,ROV推進器監控可創建各推進器轉速、溫度等狀態歷史曲線,如圖3、圖4所示。監控界面完成搭建后,可將其保存在Grafana的數據看板中,以便下次重復使用。

4? 性能分析

4.1? 存儲空間占用測試

記錄監控數據相應不同存儲周期時存儲空間的占用情況,將TDEngine與MySQL進行對比。如圖5所示,結果表明,得益于數據壓縮算法的優化,時序數據庫TDEngine的存儲空間占用遠少于關系數據庫MySQL,并且隨著數據量的增加,數據壓縮性能的優勢更大。

4.2? 查詢性能測試

在不同的數據存儲周期進行基于數據值的檢索,將TDEngine與MySQL進行對比。如圖6所示,結果表明,得益于TDEngin數據索引算法的優化,時序數據庫TDEngine的查詢性能明顯優于關系數據庫MySQL,并且隨著數據量的增加,數據查詢性能的優勢更大。

5? 結? 論

本文研究和實現了基于時序數據庫的海洋裝備監控數據存儲系統,該系統在時序數據庫TDEngine和OPC UA數據協議的基礎上,實現了數據存儲服務,解決了海量監控數據使用關系數據庫存儲時空間占用大和查詢性能差的問題,并通過Grafana工具解決了監控數據快速可視化的問題。本系統目前已經應用在中型作業級ROV上,后續將不斷升級優化,在更多的海洋裝備上得到應用。

參考文獻:

[1] 吳卓成,黃文君.船用柴油機智能報警監控系統的設計 [J].中國造船,2009,50(3):146-150.

[2] 王詩文,張寧,沈智鵬,等.基于OPC技術的船舶機艙數據采集與監測系統 [J].大連海事大學學報,2014,40(3):73-78.

[3] 侯建釗,高菲,張東昆.基于MOOS的AUV的數據采集和監控系統 [J].現代電子技術,2014,37(20):130-133.

[4] 何純全,湯仕平,施佳林.艦船電磁環境數據庫的設計與實現 [J].裝備環境工程,2020,17(3):120-124.

[5] ANH V N,MOFFAT A. Index Compression Using 64-Bit Words [J].Software: Practice and Experience,2010,40(2):131-147.

[6] ZUKOWSKI M,HEMAN S,NES N,et al. Super-scalar RAM-CPU Cache Compression [C]//22nd International Conference on Data Engineering (ICDE'06).Atlanta:IEEE,2006:59.

[7] 蔣濤,馮玉才,朱虹,等.RQIC:一種高效時序相似搜索算法 [J].計算機研究與發展,2009,46(5):770-778.

[8] 禹鑫燚,殷慧武,施甜峰,等.基于OPC UA的工業設備數據采集系統 [J].計算機科學,2020,47(S2):609-614.

[9] 王博遠,梁子陽,劉雪萌,等.基于Telegraf+InfluxDB+Grafana搭建長輸供熱系統的監控平臺研究 [J].中國設備工程,2021(22):177-178.

作者簡介:倪昱(1980.06—),男,漢族,湖南長沙人,高級工程師,碩士,研究方向:海洋裝備信息系統、深海智能作業操控技術等;鄭志恒(1991.09—),男,漢族,江蘇徐州人,工程師,碩士,研究方向:智能作業操控技術。

收稿日期:2022-12-28

基金項目:海南省重大科技計劃項目(ZDKJ2019002)

主站蜘蛛池模板: 91网红精品在线观看| 精品国产乱码久久久久久一区二区| 日韩在线网址| 国产美女无遮挡免费视频| 三级毛片在线播放| 亚洲另类色| 人人爽人人爽人人片| 亚洲午夜国产精品无卡| 精品国产美女福到在线不卡f| 91久久国产综合精品| 免费欧美一级| 久久久久无码国产精品不卡| 热久久这里是精品6免费观看| 米奇精品一区二区三区| 国产18在线| 国产主播福利在线观看| 欧美色图第一页| 在线观看免费国产| 久久黄色视频影| 无套av在线| 国产精品自在在线午夜| 好紧太爽了视频免费无码| 亚洲欧美一区二区三区蜜芽| 欧美不卡视频在线观看| 大香伊人久久| 97在线国产视频| 日韩中文精品亚洲第三区| 亚洲精品片911| 欧美激情成人网| 青青草国产一区二区三区| 国产最爽的乱婬视频国语对白| 色综合综合网| 久久伊人操| 91黄视频在线观看| 波多野结衣无码AV在线| 青青操国产| 国产9191精品免费观看| 亚洲国模精品一区| 日本精品一在线观看视频| 亚洲精品男人天堂| 国产日韩丝袜一二三区| 亚洲第一国产综合| 丁香婷婷在线视频| 全部免费毛片免费播放 | 国产亚洲成AⅤ人片在线观看| 伊人国产无码高清视频| 国产成人亚洲精品蜜芽影院| 99热国产在线精品99| 色亚洲成人| 久久狠狠色噜噜狠狠狠狠97视色| 精品国产99久久| 人妻中文字幕无码久久一区| 黄色网页在线观看| 亚洲一级毛片免费看| 波多野结衣中文字幕一区二区 | 久草性视频| 露脸真实国语乱在线观看| 亚洲欧美日韩精品专区| 欧美精品v| 亚洲另类国产欧美一区二区| 日日碰狠狠添天天爽| 久久国产乱子| 国产小视频免费| 国产91丝袜在线播放动漫| 国产亚洲男人的天堂在线观看| 午夜少妇精品视频小电影| 午夜国产小视频| 欧美人与牲动交a欧美精品 | 激情综合五月网| 日韩123欧美字幕| 日韩精品无码不卡无码| 国产精品亚洲片在线va| 国产男女免费视频| 9966国产精品视频| 人妻丰满熟妇啪啪| 国产午夜精品鲁丝片| 婷婷综合在线观看丁香| 尤物精品国产福利网站| 国产精品永久免费嫩草研究院| 欧美精品一二三区| 露脸国产精品自产在线播| 毛片手机在线看|