
小 T 導讀:在 2021 樓(lou)宇(yu)科技(ji) TRUE 大會(hui)上(shang),美的(de)暖通與樓(lou)宇(yu)事業部首(shou)次發布了數(shu)字化平臺(tai) iBuilding,以“軟驅(qu)硬核”方式賦能建筑行業。作為一個全新(xin)的(de)項目,iBuilding 在數(shu)據(ju)庫選(xuan)型上(shang)比較謹(jin)慎,分別對比了多款 Database 產品之后,才(cai)做出了自己的(de)選(xuan)擇。本文分享(xiang)了他們(men)的(de)數(shu)據(ju)庫選(xuan)型思考(kao)和落地經驗。
政策背景
根據 2021 年 12 月(yue)由(you)美控智(zhi)慧建筑聯合(he)(he)億(yi)(yi)歐智(zhi)庫(ku)共(gong)同發布的(de)《中(zhong)國(guo)樓宇(yu)自控白皮書》,2021 年中(zhong)國(guo)樓宇(yu)智(zhi)能(neng)化市場產(chan)值(zhi)約達(da) 7238.2 億(yi)(yi)元(yuan)(yuan),結合(he)(he)近幾年行業的(de)發展趨勢,經過初步估算,2016-2021 年中(zhong)國(guo)樓宇(yu)智(zhi)能(neng)化市場規(gui)模逐(zhu)年上升(sheng),存量規(gui)模接近 5000 億(yi)(yi)元(yuan)(yuan),新(xin)增規(gui)模超過 2200 億(yi)(yi)元(yuan)(yuan)。
因樓(lou)宇(yu)智(zhi)(zhi)能(neng)(neng)(neng)化(hua)(hua)在低碳、節能(neng)(neng)(neng)方(fang)面優勢突出,同(tong)時能(neng)(neng)(neng)為人們的(de)生活帶來更多舒適體驗,加之(zhi)政(zheng)府對樓(lou)宇(yu)智(zhi)(zhi)能(neng)(neng)(neng)化(hua)(hua)建設規范化(hua)(hua)、科學(xue)化(hua)(hua)的(de)引導(dao),未(wei)來樓(lou)宇(yu)智(zhi)(zhi)能(neng)(neng)(neng)化(hua)(hua)將有非(fei)常好的(de)發展前景。從目標來看,樓(lou)宇(yu)智(zhi)(zhi)能(neng)(neng)(neng)化(hua)(hua)符合建筑行業對數(shu)字化(hua)(hua)和(he)智(zhi)(zhi)能(neng)(neng)(neng)化(hua)(hua)的(de)發展需求,未(wei)來將繼續助力中(zhong)國建筑行業轉型升級,以順應國家對節能(neng)(neng)(neng)減排和(he)數(shu)字經(jing)濟的(de)要求。
業務介紹
隨著 5G 時代(dai)的(de)(de)(de)到來,美的(de)(de)(de)一(yi)方面在(zai)繼續(xu)打造(zao)工業互(hu)聯網產品,另一(yi)方面也(ye)在(zai)不斷進行科技賦能(neng),研發更加綠(lv)色環保的(de)(de)(de)集成方案,為(wei)工業及制(zhi)造(zao)業提(ti)供全新(xin)的(de)(de)(de)思路。
作為美(mei)的(de)(de)集團旗下的(de)(de)五大業(ye)務(wu)板塊之(zhi)一,美(mei)的(de)(de)暖(nuan)通與樓(lou)(lou)(lou)宇(yu)(yu)事業(ye)部確立了(le)“暖(nuan)通及樓(lou)(lou)(lou)宇(yu)(yu)智(zhi)慧生態(tai)集成解(jie)決方案(an)引(yin)領(ling)者”的(de)(de)發展愿景(jing),旨在用智(zhi)慧集成的(de)(de)行業(ye)解(jie)決方案(an)滿足復雜的(de)(de)建筑需(xu)求,目前主要涉足中央空(kong)調(diao)、電(dian)梯、樓(lou)(lou)(lou)宇(yu)(yu)控制等領(ling)域。在 2021 樓(lou)(lou)(lou)宇(yu)(yu)科技 TRUE 大會上,美(mei)的(de)(de)暖(nuan)通與樓(lou)(lou)(lou)宇(yu)(yu)事業(ye)部首次發布(bu)了(le)數(shu)字(zi)化平臺 iBuilding,以“軟驅(qu)硬(ying)核”方式賦(fu)能建筑行業(ye)。
作為一個全新的項目,我們分別對比了關系型數據庫(Relational Database)以及主流的時序數據庫(Time Series Database),包(bao)括 InfluxDB、TDengine、MySQL 等。對比關系型數據庫(ku) MySQL 來說,在(zai)這個場(chang)景下,我(wo)們(men)不需要(yao)復雜的(de)查詢,卻需要(yao)高效的(de)存儲和大范圍時(shi)間(jian)的(de)數據拉取。和同為時(shi)序數據庫(ku)的(de) InfluxDB 對比,TDengine 的(de)單機版性能遠好(hao)于(yu) InfluxDB。因(yin)此,在(zai)綜(zong)合(he)評(ping)估了(le)(le)適配、查詢、寫入和存儲等綜(zong)合(he)能力后,我(wo)們(men)最(zui)終(zhong)選(xuan)擇了(le)(le) TDengine 這款產品。
iBuilding 項(xiang)目屬于“智慧樓宇”的一(yi)部分(fen),項(xiang)目本身用于邊緣(yuan)側對(dui)大型(xing)制冷設備(bei)(中央空調)的智能監控與交(jiao)互。具(ju)體應用場景是:項(xiang)目所涉及(ji)的幾十個樓區,各(ge)自都有一(yi)些大型(xing)離心式(shi)冷水機組(zu)(10 臺左右),我們(men)在每(mei)個樓區都部署了一(yi)個 TDengine 到 ARM64 系(xi)統上(shang)。通(tong)過 Python 程序,系(xi)統會先(xian)進行(xing)數據(ju)采(cai)集,然后(hou)把數據(ju)寫入 TDengine ,最后(hou)再把數據(ju)上(shang)傳到云(yun)端(duan)的 TDengine 進行(xing)處理。

具體實踐
以(yi)其中一個(ge) Database 環境(jing)為例:

我們根據 TDengine “一個設(she)(she)備一張表,一類設(she)(she)備一個超級(ji)表”的建模原則,創(chuang)建了如下表,兩類設(she)(she)備的指標數(shu)分別為 97 和 199 ,數(shu)據列(lie)以 float 和 int 為主,設(she)(she)備每 5s 上報一批數(shu)據:


對(dui)于邊緣側的(de)(de)數據采集,由于資(zi)源(yuan)有(you)限,所以資(zi)源(yuan)數據的(de)(de)使用就(jiu)成為了十(shi)分重(zhong)要的(de)(de)指標。這方面 TDengine 表(biao)現非常好(hao),進一步幫我們降本增效了。
我(wo)們承載(zai)數(shu)(shu)據庫服務(wu)的(de)邊緣盒子配(pei)置為 2GB 內(nei)存(cun),4C CPU,ARM64 位的(de)系(xi)統。由于子表數(shu)(shu)量不大,以(yi)及 TDengine 寫(xie)入(ru)內(nei)存(cun)比(bi)較固(gu)定的(de)特(te)點,當前內(nei)存(cun)占用(yong)還不到 200MB。數(shu)(shu)據庫日常 CPU 消(xiao)耗(hao)比(bi)較低,大概(gai)在 3%-5% 左(zuo)右,保守估計即便(bian)寫(xie)入(ru)量擴大 50-100 倍,也沒(mei)有問題。

應用效果
求某個設備 70 天前到(dao) 40 天前之(zhi)間(jian)(jian),每隔一段時間(jian)(jian)的設備用電(dian)量,無數據則用 prev 值填充。結果如(ru)下:


查詢一(yi)個(ge)月之前的(de)某(mou)設備某(mou)幾項指標之和,按(an)照時間戳降序排(pai)序。查詢大約 19 萬行數據(ju),耗時 0.4s。結果如下:


經驗匯總
在使用(yong)(yong) TDengine 的(de)(de)(de)過(guo)程中,我們也遇到過(guo)一(yi)些小問題(ti),比如:我們環境眾多,但是(shi)客(ke)戶端和服務端又要保(bao)持版本精確一(yi)致,升級起來會比較復(fu)雜(za)。再(zai)比如:監控庫中 log 中的(de)(de)(de) dn 表的(de)(de)(de) disk_used 語義并不是(shi)實際的(de)(de)(de) TDengine 對磁(ci)盤的(de)(de)(de)占用(yong)(yong),而是(shi)數據文(wen)(wen)件所在文(wen)(wen)件系統的(de)(de)(de)總占用(yong)(yong),有些情況下會讓用(yong)(yong)戶誤以為是(shi) TDengine 的(de)(de)(de)空間占用(yong)(yong),導致與預期不符,就像下圖一(yi)樣:

后面我們和(he) TDengine 社(she)區工(gong)作人員一(yi)起(qi)討(tao)論了(le)(le)這個情況,大(da)家認為可(ke)以新增一(yi)列,專門(men)用來統(tong)計 TDengine 的數據文件的大(da)小,然(ran)后把它與 disk_used、disk_total 一(yi)起(qi)規范化統(tong)一(yi)命名,就可(ke)以防止用戶誤解(jie)了(le)(le)。
目前 TDengine 官方已(yi)經在積極地處(chu)理優化。這也是開源社區的一大價(jia)值,大家(jia)都可以(yi)參與進(jin)去,讓產品不斷迭代,發展地更好。
寫在最后
當前,TDengine 主要被(bei)應用(yong)于(yu)中央空調制冷設備(bei)的(de)監控業務中,作為(wei)先行試(shi)點(dian),這(zhe)一場(chang)景(jing)已經取得了不錯(cuo)的(de)效(xiao)果(guo)。但由于(yu)機組價(jia)格昂貴(gui)、成本較高,因此通過(guo)平臺動(dong)態生成操作指令的(de)這(zhe)類(lei)智能化操作仍需謹慎,所以目前該功能還沒有正式開放。
在樓宇智能化方面,我(wo)們也(ye)有很多工作要(yao)做,從邊緣側的監控、到指令控制(zhi)、再到邊云(yun)協同的一(yi)體化服務,我(wo)們會在這(zhe)些場景中繼續探索和挖掘 TDengine 的潛力。


























