无码人妻精品一区二区三18禁,影音先锋男人AV橹橹色,污污污污污污www网站免费,日韩成人av无码一区二区三区,欧美性受xxxx狂喷水

詳解 TDengine 中的 TSDB 模塊

小T

2022-07-12 / ,

TSDB 模(mo)塊(kuai)(kuai)是 VNODE 中的(de)負責快速高并發(fa)地存儲和(he)讀取屬于(yu)該 VNODE 的(de)表的(de)元(yuan)數(shu)據(ju)(ju)及采集(ji)的(de)時(shi)間序(xu)列數(shu)據(ju)(ju)的(de)引擎。除此之外,TSDB 還提供了(le)表結構的(de)修改、表標簽值的(de)修改等(deng)(deng)功能(neng)。TSDB 提供 API 供 VNODE 和(he) Query 等(deng)(deng)模(mo)塊(kuai)(kuai)調用(yong)。TSDB 中存儲了(le)兩類(lei)數(shu)據(ju)(ju),1:元(yuan)數(shu)據(ju)(ju)信(xin)息;2:時(shi)間序(xu)列數(shu)據(ju)(ju)。

元數據信息

TSDB 中(zhong)存儲的(de)(de)(de)(de)(de)元數據包含(han)(han)屬于其(qi)所在的(de)(de)(de)(de)(de) VNODE 中(zhong)表(biao)的(de)(de)(de)(de)(de)類型(xing),schema 的(de)(de)(de)(de)(de)定義(yi)等(deng)。對于超級表(biao)和超級表(biao)下的(de)(de)(de)(de)(de)子(zi)表(biao)而言,又(you)包含(han)(han)了 tag 的(de)(de)(de)(de)(de) schema 定義(yi)以及子(zi)表(biao)的(de)(de)(de)(de)(de) tag 值(zhi)等(deng)。對于元數據信息而言,TSDB 就相(xiang)當(dang)于一(yi)個(ge)全(quan)(quan)內(nei)存的(de)(de)(de)(de)(de) KV 型(xing)數據庫,屬于該 VNODE 的(de)(de)(de)(de)(de)表(biao)對象全(quan)(quan)部在內(nei)存中(zhong),方便快(kuai)速查詢表(biao)的(de)(de)(de)(de)(de)信息。除此之(zhi)外,TSDB 還對其(qi)中(zhong)的(de)(de)(de)(de)(de)子(zi)表(biao),按(an)照 tag 的(de)(de)(de)(de)(de)第一(yi)列取值(zhi)做了全(quan)(quan)內(nei)存的(de)(de)(de)(de)(de)索引(yin),大大加(jia)快(kuai)了對于標簽(qian)的(de)(de)(de)(de)(de)過濾查詢。TSDB 中(zhong)的(de)(de)(de)(de)(de)元數據的(de)(de)(de)(de)(de)最新(xin)狀態在落(luo)盤時,會以追加(jia)(append-only)的(de)(de)(de)(de)(de)形式,寫入到 meta 文件(jian)(jian)中(zhong)。meta 文件(jian)(jian)只(zhi)進行追加(jia)操(cao)作(zuo),即便是元數據的(de)(de)(de)(de)(de)刪除,也會以一(yi)條記錄的(de)(de)(de)(de)(de)形式寫入到文件(jian)(jian)末尾。TSDB 也提供了對于元數據的(de)(de)(de)(de)(de)修改操(cao)作(zuo),如表(biao) schema 的(de)(de)(de)(de)(de)修改,tag schema 的(de)(de)(de)(de)(de)修改以及 tag 值(zhi)的(de)(de)(de)(de)(de)修改等(deng)。

時間序列數據

每(mei)個 TSDB 在(zai)創建時,都會(hui)事先(xian)分配(pei)一(yi)定(ding)量的(de)(de)內(nei)存(cun)緩(huan)沖(chong)(chong)(chong)區(qu),且內(nei)存(cun)緩(huan)沖(chong)(chong)(chong)區(qu)的(de)(de)大小可配(pei)可修改。表(biao)采集的(de)(de)時序(xu)數(shu)據(ju)(ju)(ju),在(zai)寫入 TSDB 時,首先(xian)以(yi)追加(jia)的(de)(de)方(fang)式(shi)寫入到分配(pei)的(de)(de)內(nei)存(cun)緩(huan)沖(chong)(chong)(chong)區(qu)中(zhong),同時建立基于時間戳的(de)(de)內(nei)存(cun)索引,方(fang)便快速查詢。當內(nei)存(cun)緩(huan)沖(chong)(chong)(chong)區(qu)的(de)(de)數(shu)據(ju)(ju)(ju)積累到一(yi)定(ding)的(de)(de)程度時(達(da)到內(nei)存(cun)緩(huan)沖(chong)(chong)(chong)區(qu)總大小的(de)(de)1/3),則會(hui)觸(chu)發落盤操作,將緩(huan)沖(chong)(chong)(chong)區(qu)中(zhong)的(de)(de)數(shu)據(ju)(ju)(ju)持久化到硬盤文件上(shang)。時間序(xu)列(lie)數(shu)據(ju)(ju)(ju)在(zai)內(nei)存(cun)緩(huan)沖(chong)(chong)(chong)區(qu)中(zhong)是(shi)以(yi)行(row)的(de)(de)形式(shi)存(cun)儲的(de)(de)。

時間序列數據在(zai)寫(xie)入(ru)到(dao) TSDB 的(de)(de)(de)(de)(de)數(shu)(shu)(shu)(shu)(shu)據(ju)(ju)(ju)(ju)文(wen)(wen)(wen)(wen)件(jian)(jian)(jian)(jian)時(shi)(shi)(shi),是(shi)以(yi)列(column)的(de)(de)(de)(de)(de)形(xing)式(shi)(shi)存儲(chu)的(de)(de)(de)(de)(de)。TSDB 中(zhong)的(de)(de)(de)(de)(de)數(shu)(shu)(shu)(shu)(shu)據(ju)(ju)(ju)(ju)文(wen)(wen)(wen)(wen)件(jian)(jian)(jian)(jian)包含(han)(han)多個(ge)(ge)(ge)數(shu)(shu)(shu)(shu)(shu)據(ju)(ju)(ju)(ju)文(wen)(wen)(wen)(wen)件(jian)(jian)(jian)(jian)組,每個(ge)(ge)(ge)數(shu)(shu)(shu)(shu)(shu)據(ju)(ju)(ju)(ju)文(wen)(wen)(wen)(wen)件(jian)(jian)(jian)(jian)組中(zhong)又(you)包含(han)(han) .head、.data 和.last 三個(ge)(ge)(ge)文(wen)(wen)(wen)(wen)件(jian)(jian)(jian)(jian),如(ru)(ru)(v2f1801.head、v2f1801.data、v2f1801.last)數(shu)(shu)(shu)(shu)(shu)據(ju)(ju)(ju)(ju)文(wen)(wen)(wen)(wen)件(jian)(jian)(jian)(jian)組。TSDB 中(zhong)的(de)(de)(de)(de)(de)數(shu)(shu)(shu)(shu)(shu)據(ju)(ju)(ju)(ju)文(wen)(wen)(wen)(wen)件(jian)(jian)(jian)(jian)組是(shi)按(an)照時(shi)(shi)(shi)間(jian)(jian)跨度進(jin)行(xing)分(fen)片(pian)的(de)(de)(de)(de)(de),默認是(shi) 10 天(tian)一(yi)個(ge)(ge)(ge)文(wen)(wen)(wen)(wen)件(jian)(jian)(jian)(jian)組,且可通過配(pei)置(zhi)文(wen)(wen)(wen)(wen)件(jian)(jian)(jian)(jian)及(ji)建庫(ku)選項進(jin)行(xing)配(pei)置(zhi)。分(fen)片(pian)的(de)(de)(de)(de)(de)數(shu)(shu)(shu)(shu)(shu)據(ju)(ju)(ju)(ju)文(wen)(wen)(wen)(wen)件(jian)(jian)(jian)(jian)組又(you)按(an)照編號遞(di)增排(pai)(pai)列,方便(bian)快速定(ding)位某一(yi)時(shi)(shi)(shi)間(jian)(jian)段的(de)(de)(de)(de)(de)時(shi)(shi)(shi)序(xu)(xu)數(shu)(shu)(shu)(shu)(shu)據(ju)(ju)(ju)(ju),高效定(ding)位數(shu)(shu)(shu)(shu)(shu)據(ju)(ju)(ju)(ju)文(wen)(wen)(wen)(wen)件(jian)(jian)(jian)(jian)組。時(shi)(shi)(shi)間(jian)(jian)序(xu)(xu)列數(shu)(shu)(shu)(shu)(shu)據(ju)(ju)(ju)(ju)在(zai) TSDB 的(de)(de)(de)(de)(de)數(shu)(shu)(shu)(shu)(shu)據(ju)(ju)(ju)(ju)文(wen)(wen)(wen)(wen)件(jian)(jian)(jian)(jian)中(zhong)是(shi)以(yi)塊(kuai)(kuai)的(de)(de)(de)(de)(de)形(xing)式(shi)(shi)進(jin)行(xing)列式(shi)(shi)存儲(chu)的(de)(de)(de)(de)(de),每個(ge)(ge)(ge)塊(kuai)(kuai)中(zhong)只包含(han)(han)一(yi)張表(biao)的(de)(de)(de)(de)(de)數(shu)(shu)(shu)(shu)(shu)據(ju)(ju)(ju)(ju),且數(shu)(shu)(shu)(shu)(shu)據(ju)(ju)(ju)(ju)在(zai)一(yi)個(ge)(ge)(ge)塊(kuai)(kuai)中(zhong)是(shi)按(an)照時(shi)(shi)(shi)間(jian)(jian)順序(xu)(xu)遞(di)增排(pai)(pai)列的(de)(de)(de)(de)(de)。在(zai)一(yi)個(ge)(ge)(ge)數(shu)(shu)(shu)(shu)(shu)據(ju)(ju)(ju)(ju)文(wen)(wen)(wen)(wen)件(jian)(jian)(jian)(jian)組中(zhong),.head文(wen)(wen)(wen)(wen)件(jian)(jian)(jian)(jian)負(fu)責(ze)存儲(chu)數(shu)(shu)(shu)(shu)(shu)據(ju)(ju)(ju)(ju)塊(kuai)(kuai)的(de)(de)(de)(de)(de)索引(yin)(yin)及(ji)統(tong)計(ji)(ji)信息(xi),如(ru)(ru)每個(ge)(ge)(ge)塊(kuai)(kuai)的(de)(de)(de)(de)(de)位置(zhi),壓縮(suo)算法(fa),時(shi)(shi)(shi)間(jian)(jian)戳范圍(wei)等。存儲(chu)在(zai).head文(wen)(wen)(wen)(wen)件(jian)(jian)(jian)(jian)中(zhong)一(yi)張表(biao)的(de)(de)(de)(de)(de)索引(yin)(yin)信息(xi)是(shi)按(an)照數(shu)(shu)(shu)(shu)(shu)據(ju)(ju)(ju)(ju)塊(kuai)(kuai)中(zhong)存儲(chu)的(de)(de)(de)(de)(de)數(shu)(shu)(shu)(shu)(shu)據(ju)(ju)(ju)(ju)的(de)(de)(de)(de)(de)時(shi)(shi)(shi)間(jian)(jian)遞(di)增排(pai)(pai)列的(de)(de)(de)(de)(de),方便(bian)進(jin)行(xing)折半(ban)查找等工(gong)作。.head和.last文(wen)(wen)(wen)(wen)件(jian)(jian)(jian)(jian)是(shi)存儲(chu)真(zhen)實(shi)數(shu)(shu)(shu)(shu)(shu)據(ju)(ju)(ju)(ju)塊(kuai)(kuai)的(de)(de)(de)(de)(de)文(wen)(wen)(wen)(wen)件(jian)(jian)(jian)(jian),若數(shu)(shu)(shu)(shu)(shu)據(ju)(ju)(ju)(ju)塊(kuai)(kuai)中(zhong)的(de)(de)(de)(de)(de)數(shu)(shu)(shu)(shu)(shu)據(ju)(ju)(ju)(ju)累計(ji)(ji)到(dao)一(yi)定(ding)程度,則會(hui)寫(xie)入(ru).data文(wen)(wen)(wen)(wen)件(jian)(jian)(jian)(jian)中(zhong),否則,會(hui)寫(xie)入(ru).last文(wen)(wen)(wen)(wen)件(jian)(jian)(jian)(jian)中(zhong),等待下次落盤時(shi)(shi)(shi)合并(bing)數(shu)(shu)(shu)(shu)(shu)據(ju)(ju)(ju)(ju)寫(xie)入(ru).data文(wen)(wen)(wen)(wen)件(jian)(jian)(jian)(jian)中(zhong),從而大大減(jian)少文(wen)(wen)(wen)(wen)件(jian)(jian)(jian)(jian)中(zhong)塊(kuai)(kuai)的(de)(de)(de)(de)(de)個(ge)(ge)(ge)數(shu)(shu)(shu)(shu)(shu),避免數(shu)(shu)(shu)(shu)(shu)據(ju)(ju)(ju)(ju)的(de)(de)(de)(de)(de)過度碎片(pian)化。