公司簡介:
武漢夢芯科技是在湖北省委省政府大力支持下成立的一家專業從事高集成度芯片設計和高性能室內外定位研究的高新技術企業,坐落于國家級高新技術產業開發區(武漢·中國光谷),公司致力于為各類智能終端產品提供北斗定位核心技術和元器件,為北斗在高精度應用領域的推廣提供差異化的完整解決方案,
夢芯科技自主研發的啟夢芯片系列產品入選中國衛星導航專項北斗基礎產品推薦名錄,在國家北斗辦組織的權威比測中名列前茅,以第一梯隊的成績獲得國家北斗辦資金支持,并兩次榮膺衛星導航定位科技進步獎一等獎、榮膺衛星導航定位創新應用獎“金獎”、入選《北斗三號民用基礎產品推薦名錄》、《湖北省創新產品應用示范推薦目錄》,同時團隊還主導、參與了5項國家北斗相關的重大專項,為我國北斗系統的建設及全球化奠定了良好的基礎,
作者簡介:
馬威,武漢科技大學計算機專業,從事軟體開發9年的作業經驗,供職于武漢夢芯科技有限公司軟體部高級工程師,在車載物聯網平臺、形變安全監測解算系統、AGNSS加速定位服務、DGNSS精確定位服務等多方面有著長期技識訓累和大量成功經驗,
專案介紹:
地質災害隱患點多分布在交通、通訊、電力保障都極為不方便的地區,地質災害之所以會造成嚴重損害是因為難以事先準確預報災害發生的地點、時間和強度,因此對地質災害隱患特別是滑坡、泥石流等危害極大的地質災害進行低成本、便捷、長期、自動化的監測,并及時將災害發生的實時狀況反映到相關管理部門,保障人民生命安全,減少人民財產損失是目前的當務之急,
夢芯形變安全監測解算系統,采用夢芯高精度定位方案,為應用目標提供24h不間斷監測,實時掌握隱患點的位移變化情況,監測精度高,系統支持BDS、GPS、GLONASS、Galileo等衛星定位系統資料觀測,支持無線網路,可實作資料的遠程傳輸,提供日、周、月、年的資料統計結果,基準站和監測站均可采用夢芯高精度GNSS監測專用接識訓,最大程度上降低成本,
在這個專案中,TDengine承擔了核心資料庫的角色,它幫助我們解決了高效率的記錄站點的原始資料、解算后的形變資料等海量資料的存取使用的巨大難題,
選型程序:
具體場景如下:
形變安全監測解算系統由資料分析管理和資料顯示預警兩部分組成,資料分析管理系統包括站點管理、資訊管理、統計分析、隱患點管理、系統管理等組成,資料顯示預警系統包括實時監控、影像監測、預警管理等,
資料分析管理服務負責對接收到的GNSS資料進行解碼和解算,獲取監測點的實時位置坐標,并對資料處理結果進行管理和資料共享、用戶管理、定期自動備份等,以實作監測區域全天候無人值守,確保系統長期處于作業狀態,滿足實時監控需求,節約人力資源成本,
資料顯示預警系統負責對解算出的監測點位置坐標進行集中和圖形化顯示,根據解算結果自動生成形變歷史曲線,衛星分布圖,載噪比柱狀圖,實時展現各監測點的實時狀態,并根據預設的警戒值進行風險判別,以聲光、短訊息等形式進行多渠道預警資訊發布,及時將災害發生的實時狀況反映到相關管理部門,
平臺業務部分截圖如下:

圖:形變資料

圖:衛星資料
因此,我們的作業場景是基于大并發,高頻,大資料量,主要包含以下幾類:
1.一體化智能監測站上傳監測資料頻率最高1赫茲;
2.解算后的實時形變資料頻率最高1赫茲;
3.依據以上資料產生的更大量級衍生資料;
形變安全監測解算系統,需要針對監測目標進行實時監測,如何高效率的記錄站點的原始資料、解算后的形變資料,對于整個平臺的運行效率和穩定監測至關重要, 由于該專案設備量大,資料量大,頻率高,單是進行存盤已經不易,如果還要對資料進行查詢下載等操作,更是難上加難,這些問題橫亙眼前,也讓我們更加需要使用更滿足功能、性能要求的資料庫,
原來的業務架構如下圖所示:

在第一版系統的實際運行程序中,我們也遇到了很多痛點,比如說,因為資料保存在MYSQL中,并且采用了分庫分表,但是當我們需要查詢較大跨度的時間內的資料時,由于資料量大,系統的性能會顯著下降,前端查詢展示一天的形變資料就需要數分鐘,這顯然是不能接受的,
后來,我們對需要存盤的業務場景進行了梳理,如下圖所示:

基于以上考慮,我們把目光鎖定在時序資料庫上,在技術調研階段,我們對比了幾款常用的主流資料庫上,



綜合對比后的結果如下:
- InfluxDB目前集群版已經閉源商業化,開源版僅支持單機模式,單機版性能遜于集群版,同時沒有集群的冗余,當服務器不可用時,寫入和查詢會立即失敗性能相比新興的時序資料庫要差一些,
- Dolphin目前主要應用在金融領域,大的金融機構比較多,閉源,
- TDengine性能強悍,國產自主研發,集群功能開源,具有典型的分布式資料庫特征,壓縮比例也非常高,
通過嚴謹的對比和技術調研,TDengine滿足我司支持國產資料庫的初衷,并且我們認為TDengine的很多優秀特性能夠滿足我們的業務場景,
落地:
1.目前我們整個系統采用了數臺高性能的云服務器,暫時采用的是單節點部署,后續會增加多節點,從2021年10月運行至今,共創建了2張超級表以及近百張子表,總資料量超過2.5億條,壓縮后的資料量大小200G左右,

2.當前,以地災監測站1HZ的上報的原始資料為例說明存盤情況,
sraw是我們的超級表,其中存盤了1.6億條資料,分散在109張子表中,由于TDengine的標簽是記憶體存盤,再加上列式存盤便于壓縮,因此我們節省了大量的存貯空間(僅占用100G左右的空間),也為資料查詢性能打下了良好的基礎,

3.由于是初次使用開源版,中間遇到了很多問題,好在TDengine官方技術群里有專人技術支持及時回復,對我們一對一的免費指導,讓我們切身體驗到了開源資料庫的友好和國產資料庫的價值,
- 初次使用,host檔案配置錯了,導致taos資料庫啟動失敗

- 深入研究,咨詢taos使用細節,有問必答,
性能表現:
在查詢方面,我們主要的查詢邏輯是按時間查詢所有的原始資料和解算資料,TDengine以其優異的性能完成上述查詢分析程序,
具體操作如下:
1.超級表統計功能測驗:select avg(sat_num), max(e), min(n) from deform.scalc;

對于這張近億行的超級表的統計操作,我們用了1.9秒左右就回傳了結果,實際應用中TDengine也確實表現卓越,
2.子表按時段查詢功能:select * from deform.dm860936050878150 where ts > '2021-10-02 16:11:20.933' and ts < '2021-12-02 16:11:20.933' >> test.txt;

回傳187681行資料,并寫入test.txt檔案,共300MB資料用時8.1秒, 性能超出我們的預期,
最后:
由于初期的專案需求,我們沒有采用多節點部署,但是隨著業務的增長,我們馬上會部署多節點,而且后續會需要更大量的資料來做更復雜的分析,屆時,我們將會更深入地用到TDengine的其他核心特性,如資料訂閱、多表聚合查詢、眾多計算函式等等,但僅就當下而言,TDengine強大的存盤能力和快速查詢已經非常令我們驚喜,也讓我們對未來更加深入的合作充滿期待,最后,感謝濤思資料科技,希望貴公司能夠繼續完善產品,完善生態,擁抱開源,向下一個頂峰攀登,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/413856.html
標籤:其他
