在海量設(shè)備的數(shù)據(jù)管理場(chǎng)景中,既要保證寫入效率和查詢性能,又要簡(jiǎn)化建模與管理,是時(shí)序數(shù)據(jù)庫(kù)架構(gòu)面臨的核心挑戰(zhàn)。TDengine 結(jié)合“一個(gè)數(shù)據(jù)采集點(diǎn)一張表”的設(shè)計(jì)理念,引入了具有創(chuàng)新性的“超級(jí)表”(Super Table,簡(jiǎn)稱 STable)機(jī)制,從根本上解決了大規(guī)模時(shí)序數(shù)據(jù)結(jié)構(gòu)不統(tǒng)一、聚合困難、運(yùn)維復(fù)雜等問(wèn)題。
一個(gè)數(shù)據(jù)采集點(diǎn)一張表:性能最大化的基礎(chǔ)設(shè)計(jì)
TDengine 采用“一個(gè)數(shù)據(jù)采集點(diǎn)一張表”的架構(gòu),每個(gè)采集點(diǎn)的數(shù)據(jù)獨(dú)立存儲(chǔ),天然具備寫入無(wú)鎖、數(shù)據(jù)順序追加、塊狀連續(xù)存儲(chǔ)等優(yōu)勢(shì)。這種設(shè)計(jì)方式不僅提升了寫入與查詢性能,還帶來(lái)了極高的數(shù)據(jù)壓縮效率。但隨著設(shè)備數(shù)量的增長(zhǎng),表的數(shù)量也會(huì)成倍增長(zhǎng),表結(jié)構(gòu)一致但標(biāo)簽屬性不同,如何統(tǒng)一建模、批量管理并實(shí)現(xiàn)靈活查詢,成為亟待解決的問(wèn)題。
超級(jí)表:結(jié)構(gòu)統(tǒng)一,便于聚合
為此,TDengine 引入了超級(jí)表機(jī)制,將具有相同結(jié)構(gòu)的一類數(shù)據(jù)采集點(diǎn)聚合在一起,構(gòu)成邏輯上的統(tǒng)一表。這些數(shù)據(jù)采集點(diǎn)擁有相同的表結(jié)構(gòu),但各自的靜態(tài)屬性(如標(biāo)簽)可能不同。創(chuàng)建超級(jí)表時(shí),除了需要定義采集量的列結(jié)構(gòu),還需同時(shí)定義標(biāo)簽字段。每張超級(jí)表至少包含一個(gè)時(shí)間戳列、一個(gè)或多個(gè)采集量列,以及一個(gè)或多個(gè)標(biāo)簽列。標(biāo)簽支持靈活管理,用戶可根據(jù)需要對(duì)其進(jìn)行新增、修改或刪除。
在 TDengine 中,表代表具體的數(shù)據(jù)采集點(diǎn),而超級(jí)表則代表一組具有相同屬性的數(shù)據(jù)采集點(diǎn)集合。舉例來(lái)說(shuō),在管理成千上萬(wàn)塊智能電表時(shí),可以為這類設(shè)備建立一張超級(jí)表,僅需一次定義采集結(jié)構(gòu)和標(biāo)簽字段,即可通過(guò)標(biāo)簽區(qū)分各個(gè)電表的靜態(tài)屬性。所有智能電表的動(dòng)態(tài)時(shí)序數(shù)據(jù)與靜態(tài)標(biāo)簽數(shù)據(jù)統(tǒng)一管理,既簡(jiǎn)化了表的創(chuàng)建與維護(hù),也大幅提升了跨設(shè)備聚合分析的效率。
靈活標(biāo)簽,易于擴(kuò)展與管理
TDengine 支持對(duì)超級(jí)表標(biāo)簽進(jìn)行動(dòng)態(tài)的添加、修改與刪除操作,滿足設(shè)備屬性變更、系統(tǒng)擴(kuò)展等業(yè)務(wù)需求。用戶可以通過(guò)標(biāo)簽進(jìn)行篩選、分組、聚合等操作,實(shí)現(xiàn)更精細(xì)化的數(shù)據(jù)分析與可視化。通過(guò)超級(jí)表機(jī)制,TDengine 在保持高性能寫入和查詢能力的基礎(chǔ)上,也大幅降低了運(yùn)維和建模成本。



互聯(lián)網(wǎng).png)



-1.png)




.png)


證.png)


伙伴.png)
伙伴.png)
伙伴.png)



