最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

技術(shù)原理淺析

2023-04-03 09:27 作者:Cpp程序員  | 我要投稿

一、前言

? ? ?在監(jiān)控領(lǐng)域,通常需要指標(biāo)存儲(chǔ)組件TSDB,目前開(kāi)源的TSDB組件比較多,各個(gè)組件性能、高可用性、維護(hù)成本等等各有差異。本文不分析選型問(wèn)題,重點(diǎn)講解VictoriaMetrics(后面簡(jiǎn)稱(chēng)為vm)。

? ? ?有興趣的朋友建議結(jié)合源碼進(jìn)行分析,由于源碼不斷變更,此分析基于 v1.80.0,后續(xù)版本變化理論上不會(huì)很大。

?

二、架構(gòu)與能力

? ?vm開(kāi)源版本分為single-server(all in one)的單節(jié)點(diǎn)模式和cluster模式,單點(diǎn)模式合適本地調(diào)試或測(cè)試使用,生產(chǎn)使用的cluster模式分為vmselect、vminsert、vmstorage三個(gè)主要模塊:??

? ??(1)vmselect:查詢(xún)模塊,可無(wú)狀態(tài)部署,客戶(hù)端發(fā)送請(qǐng)求到查詢(xún)模塊后,查詢(xún)模塊會(huì)把請(qǐng)求分發(fā)到所有storage模塊(由于沒(méi)有元數(shù)據(jù)中心節(jié)點(diǎn),固數(shù)據(jù)存儲(chǔ)在哪無(wú)法感知,類(lèi)似clickhouse的設(shè)計(jì)模式),得到原始的block數(shù)據(jù)后在select模塊進(jìn)行合并,再得到一個(gè)總結(jié)果。

? ??(2)vminsert:寫(xiě)入模塊,可無(wú)狀態(tài)部署,寫(xiě)入數(shù)據(jù)的請(qǐng)求發(fā)到此模塊后,根據(jù)labels通過(guò)一定的hash計(jì)算出一個(gè)值,根據(jù)這個(gè)值確定此條數(shù)據(jù)發(fā)往哪個(gè)storage節(jié)點(diǎn)。因此相同的時(shí)間線(xiàn)會(huì)往同一個(gè)點(diǎn)節(jié)點(diǎn)發(fā)送,如果有某個(gè)時(shí)間線(xiàn)數(shù)據(jù)量特別大則會(huì)出現(xiàn)數(shù)據(jù)傾斜問(wèn)題后某個(gè)storage寫(xiě)入和查詢(xún)壓力都會(huì)增大。在擴(kuò)容貨縮容后,由于節(jié)點(diǎn)的列表變更,固計(jì)算出的hash發(fā)往的storage節(jié)點(diǎn)也會(huì)變更。

? ??(3)vmstorage:存儲(chǔ)模塊,有狀態(tài),存儲(chǔ)模塊的移除須先從select和insert的配置中移除才不會(huì)有異常,此模塊壓力最大,非常消耗內(nèi)存和IO,固推薦使用SSD和比較大的內(nèi)存,寧愿用大規(guī)格的機(jī)器也不用量多但規(guī)格較小的機(jī)器(緩存不命中則會(huì)造成較多的IO,性能下降嚴(yán)重)。

?


三、vmstorage 存儲(chǔ)模塊

? 本文重點(diǎn)講難度最高的 storage 模塊,也只是屬于個(gè)人理解,如有錯(cuò)誤或偏差,望指正。

1、存儲(chǔ)目錄結(jié)構(gòu)

?

/data 數(shù)據(jù)目錄的邏輯結(jié)構(gòu)如下:

?(1)每個(gè)block只包括一個(gè)時(shí)間線(xiàn),內(nèi)部根據(jù)時(shí)間排序。

? ?(2) 每個(gè)block最大容納8000個(gè)sample,不同block可并發(fā)處理。

2、?寫(xiě)入流程與風(fēng)險(xiǎn)點(diǎn)

?3、查詢(xún)流程與風(fēng)險(xiǎn)點(diǎn)

?

?4、數(shù)據(jù)過(guò)期機(jī)制

? ? 開(kāi)源的cluster版本只能針對(duì)租戶(hù)使用全局的統(tǒng)一過(guò)期時(shí)間,收費(fèi)的企業(yè)版才能支持租戶(hù)單獨(dú)設(shè)置過(guò)期時(shí)間。

?

?

?


技術(shù)原理淺析的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
金门县| 溧水县| 吉林省| 长垣县| 吴桥县| 南投县| 奎屯市| 舞阳县| 株洲市| 宕昌县| 永定县| 洛宁县| 黔江区| 定远县| 察雅县| 密山市| 辛集市| 浙江省| 南昌县| 营口市| 聂拉木县| 景谷| 城市| 北海市| 射洪县| 苍溪县| 伊宁县| 衡山县| 乌海市| 广东省| 尼木县| 牡丹江市| 海淀区| 陕西省| 丹东市| 缙云县| 灵丘县| 定州市| 邓州市| 印江| 泸定县|