91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

ClickHouse增強計劃之“資源隔離”

jf_ro2CN3Fa ? 來源:芋道源碼 ? 作者:芋道源碼 ? 2022-11-07 10:25 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

相信大家都對大名鼎鼎的ClickHouse有一定的了解了,它強大的數(shù)據(jù)分析性能讓人印象深刻。但在字節(jié)大量生產(chǎn)使用中,發(fā)現(xiàn)了ClickHouse依然存在了一定的限制。例如:

  • 缺少完整的upsert和delete操作
  • 多表關(guān)聯(lián)查詢能力弱
  • 集群規(guī)模較大時可用性下降(對字節(jié)尤其如此)
  • 沒有資源隔離能力

因此,我們決定將ClickHouse能力進行全方位加強,打造一款更強大的數(shù)據(jù)分析平臺。后面我們將從五個方面來和大家分享,本篇將詳細介紹我們是如何為ClickHouse增強資源隔離能力的。

廣告業(yè)務(wù)遇到的資源管控問題

ClickHouse的資源管控能力不夠完善,在 insert、select 并發(fā)高的場景下會導(dǎo)致執(zhí)行失敗,影響用戶體驗。這是因為社區(qū)版ClickHouse目前僅提供依據(jù)不同用戶的最大內(nèi)存控制,在超過閾值時會殺死執(zhí)行的 query。

在字節(jié)的廣告業(yè)務(wù)中,需要區(qū)分不同查詢的優(yōu)先級;對查詢性能抖動的容忍度較低;同時也需要支持adhoc能力;查詢類型廣泛、資源占用可能會較多。

ClickHouse提供的粗粒度并發(fā)控制不能滿足需求;

  1. 無法靈活控制并發(fā),導(dǎo)致查詢迅速占滿集群資源,部分后來的高優(yōu)查詢持續(xù)pending,導(dǎo)致報錯。
  2. 無法給特定業(yè)務(wù)預(yù)留cpu資源,出現(xiàn)大查詢占滿cpu,而后來的查詢執(zhí)行時間大幅增加。

ByteHouse的解決方案:Resource Group

在這種情況下,字節(jié)在ByteHouse(字節(jié)基于ClickHouse能力增強的版本)中開發(fā)了資源管理的組件:Resource Group。

基本思路是將并發(fā)、內(nèi)存、CPU等資源拆分給不同的資源組,同時通過資源組的父子關(guān)系實現(xiàn)不同資源組共享部分資源的能力。當(dāng)用戶的查詢提交給引擎,依照定義的規(guī)則選定相應(yīng)的資源組,然后評估該資源組以及父資源組是否能夠執(zhí)行該查詢,如是則直接執(zhí)行,否則進入該資源組的等待隊列,等待資源釋放。

78d30704-5e42-11ed-a3b6-dac502259ad0.png

并發(fā)控制

max_concurrent_queries 配置項控制一個資源組能夠同時運行的查詢上限。當(dāng)資源組并發(fā)達到上限,或者該資源組的父資源組并發(fā)達到上限,引擎會把查詢放入該資源組的等待隊列。當(dāng)該資源組有一個查詢結(jié)束,引擎會執(zhí)行該資源組等待隊列中最早的查詢;如果此時該資源組等待隊列為空,則會觸發(fā)父資源組的資源釋放,進一步觸發(fā)該父資源組的其他子資源組的等待隊列查詢執(zhí)行,實現(xiàn)并發(fā)quota在一個父資源組之間的共享。

內(nèi)存控制

每一個資源組可以配置一個軟性的內(nèi)存上限,當(dāng)資源組中的查詢使用內(nèi)存超過這個軟性限制之后,新查詢將會進入等待隊列。和并發(fā)控制類似,內(nèi)存也會判斷父資源組的限制,并使用類似的邏輯實現(xiàn)內(nèi)存在一個父資源組之間的共享。

由于目前還沒有一個準(zhǔn)確的查詢占用內(nèi)存預(yù)估的模型,當(dāng)前采取的策略是預(yù)估+實際內(nèi)存矯正的模式,當(dāng)一個新查詢進入時,引擎會按照預(yù)估內(nèi)存評估是否可以執(zhí)行,在開始執(zhí)行之后則是利用查詢現(xiàn)有的memory_tracker在下一輪判斷之前矯正預(yù)估值。

此軟性的內(nèi)存限制不同于原生ClickHouse的硬性內(nèi)存限制,并不會殺死已經(jīng)在執(zhí)行的查詢,而是用于控制新查詢的可執(zhí)行判斷,因此可以配合使用。

CPU控制

ByteHouse使用cgroups提供的cpu controller實現(xiàn)資源組的CPU控制。Cpu controler通過使用 CFS 調(diào)度器將CPU資源按照相同的時間分片進行分配,以實現(xiàn)不同group按照預(yù)定義的cpu shares占用相應(yīng)的CPU資源。

在ByteHouse內(nèi)部,我們實現(xiàn)了一個新的線程池類,在該類中給查詢分配線程資源時,會依據(jù)當(dāng)前Context中記錄的資源組信息分配關(guān)聯(lián)到相應(yīng)cgroup的線程。

由于采用的CFS調(diào)度器,我們可以很容易的得到以下結(jié)論:

  1. 當(dāng)所有資源組都有查詢在執(zhí)行時,每個資源組可以使用的CPU比例為 cpu_shares / sum(cpu_shares)

  2. 當(dāng)只有一個資源組有查詢在執(zhí)行時,該資源組可以使用的CPU比例為 100%

因此每個資源組可以使用的CPU資源比例范圍就是 [cpu_shares/sum(cpu_shares), 100%],通過這個功能我們也就實現(xiàn)了兩個預(yù)期效果:

  1. 保證了每個資源可以使用的CPU資源下限

  2. 保證了在任何workload情況下服務(wù)器CPU資源的總體利用率

Resource Group帶來的效果提升

Resource Group能夠顯著的提升查詢體驗,為優(yōu)先業(yè)務(wù)的查詢提供保障,并且減小查詢返回時間的方差。與此同時,也能夠為集群穩(wěn)定性帶來提升,不會因為OOM殺死執(zhí)行中的查詢,以及防止一個服務(wù)出現(xiàn)故障而拖垮整個集群。

ByteHouse的Resource Group主要有以下優(yōu)點:

  • 能夠在CPU、內(nèi)存、并發(fā)控制等全方位的提供資源隔離的能力

  • 可以限制低優(yōu)先級查詢帶來的影響

  • 降低寫入語句可能帶來的不良影響

在上文提到的廣告業(yè)務(wù)中,使用ByteHouse替換ClickHouse后,查詢時間明顯縮短,體驗明顯改善。

78e15cbe-5e42-11ed-a3b6-dac502259ad0.png

應(yīng)用前:

790c8dc6-5e42-11ed-a3b6-dac502259ad0.png

應(yīng)用后:

792f612a-5e42-11ed-a3b6-dac502259ad0.png

可以看到上線前用戶每天的查詢平均耗時在2.3s到14.1s之間抖動,十分劇烈,用戶的使用體驗很差。上線后每天的查詢平均耗時則在0.4s到1.7s之之間抖動,較好的保證了該優(yōu)先業(yè)務(wù)的查詢資源,并且顯著縮短的平均查詢返回時間。

這是本次ClickHouse增強計劃系列文章的最后一篇啦,除了這五篇文章提到的能力,ByteHouse還有有一個與ClickHouse使用不同執(zhí)行引擎的版本,能夠?qū)崿F(xiàn)全面的存算分離,是真正的云原生數(shù)據(jù)倉庫!后續(xù)我們也將為大家?guī)韺n}介紹。

審核編輯 :李倩


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 內(nèi)存
    +關(guān)注

    關(guān)注

    9

    文章

    3212

    瀏覽量

    76383
  • 資源
    +關(guān)注

    關(guān)注

    0

    文章

    59

    瀏覽量

    18411
  • 數(shù)據(jù)分析
    +關(guān)注

    關(guān)注

    2

    文章

    1516

    瀏覽量

    36243

原文標(biāo)題:火山引擎:ClickHouse增強計劃之“資源隔離”

文章出處:【微信號:芋道源碼,微信公眾號:芋道源碼】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    深度解析ISO7830x:高性能數(shù)字隔離器的卓越

    深度解析ISO7830x:高性能數(shù)字隔離器的卓越選 在電子工程師的日常設(shè)計工作中,數(shù)字隔離器是不可或缺的重要組件,它能有效防止噪聲干擾,確保電路系統(tǒng)的穩(wěn)定運行。今天,我們將聚焦于德州儀器(TI
    的頭像 發(fā)表于 01-23 11:10 ?216次閱讀

    AMC1303x:小尺寸高精度隔離Δ-Σ調(diào)制器的卓越

    AMC1303x:小尺寸高精度隔離Δ-Σ調(diào)制器的卓越選 在電子設(shè)計領(lǐng)域,電流和電壓測量的精度、隔離性能以及系統(tǒng)的穩(wěn)定性至關(guān)重要。德州儀器(TI)的AMC1303x系列小尺寸、高精度、增強
    的頭像 發(fā)表于 01-22 15:10 ?201次閱讀

    AMC3306M25:高精度隔離式Δ-Σ調(diào)制器的卓越

    AMC3306M25:高精度隔離式Δ-Σ調(diào)制器的卓越選 在電子工程師的日常設(shè)計工作中,高精度的電流測量和隔離需求一直是關(guān)鍵挑戰(zhàn)。德州儀器(TI)推出的AMC3306M25高精度、±250 - mV
    的頭像 發(fā)表于 01-21 16:50 ?731次閱讀

    AMC3336:高精度隔離式ΔΣ調(diào)制器的卓越

    AMC3336:高精度隔離式ΔΣ調(diào)制器的卓越選 在電子工程師的日常工作中,高精度的電壓測量和可靠的隔離設(shè)計至關(guān)重要。TI推出的AMC3336高精度、±1 - V輸入、帶集成DC/DC轉(zhuǎn)換器的
    的頭像 發(fā)表于 01-21 15:15 ?263次閱讀

    AMC3302-Q1:汽車應(yīng)用高精度隔離放大器的卓越

    AMC3302-Q1:汽車應(yīng)用高精度隔離放大器的卓越選 在電子工程師的日常設(shè)計工作中,選擇一款合適的放大器對于系統(tǒng)性能的提升至關(guān)重要。今天,我們就來深入探討一下德州儀器(TI)推出
    的頭像 發(fā)表于 01-21 15:00 ?160次閱讀

    AMC1351:高精度隔離放大器的卓越

    AMC1351:高精度隔離放大器的卓越選 在電子工程師的日常設(shè)計工作中,隔離放大器是一個至關(guān)重要的元件,它在眾多工業(yè)應(yīng)用中發(fā)揮著關(guān)鍵作用。今天,我們就來深入探討一下德州儀器(TI)推出
    的頭像 發(fā)表于 01-21 11:45 ?329次閱讀

    UCC21755-Q1:汽車級高性能隔離柵極驅(qū)動器的卓越

    UCC21755-Q1:汽車級高性能隔離柵極驅(qū)動器的卓越選 在電子工程師的設(shè)計工作中,一款性能出色的隔離柵極驅(qū)動器對于提升系統(tǒng)的穩(wěn)定性、可靠性和效率至關(guān)重要。今天,我們就來深入探討德州儀器(TI
    的頭像 發(fā)表于 01-21 09:10 ?437次閱讀

    ISO774xT-Q1高速增強型四通道數(shù)字隔離器:汽車應(yīng)用的理想

    ISO774xT-Q1高速增強型四通道數(shù)字隔離器:汽車應(yīng)用的理想選 在汽車電子領(lǐng)域,對于高性能、高可靠性數(shù)字隔離器的需求日益增長。ISO774xT-Q1系列高速
    的頭像 發(fā)表于 01-20 14:15 ?237次閱讀

    UCC21717-Q1:汽車級隔離柵極驅(qū)動器的卓越

    UCC21717-Q1:汽車級隔離柵極驅(qū)動器的卓越選 在電子工程師的日常工作中,選擇合適的柵極驅(qū)動器對于確保系統(tǒng)的高效、可靠運行至關(guān)重要。今天,我們就來深入探討一款備受矚目的產(chǎn)品
    的頭像 發(fā)表于 01-07 14:35 ?206次閱讀

    UCC12051QDVERQ1 汽車級 5kVRMS 增強隔離型 DC/DC 電源模塊

    UCC12051QDVERQ1汽車級5kVRMS增強隔離型DC/DC電源模塊產(chǎn)品型號:UCC12051QDVERQ1產(chǎn)品品牌:TI/德州儀器產(chǎn)品封裝:MODULE/模塊產(chǎn)品功能:電源模塊
    的頭像 發(fā)表于 12-25 11:43 ?519次閱讀
    UCC12051QDVERQ1   汽車級 5kVRMS <b class='flag-5'>增強</b><b class='flag-5'>隔離</b>型 DC/DC 電源模塊

    AMC1336 ±1V 輸入、精密電壓檢測增強隔離調(diào)制器

    AMC1336是一種精密的 δ-σ (ΔΣ) 調(diào)制器,其輸出通過具有很強抗磁干擾能力的電容式雙隔離柵與輸入電路隔開。該屏障經(jīng)認(rèn)證可提供高達 8000 V 的增強隔離~峰~根據(jù) DIN VDE V
    的頭像 發(fā)表于 11-04 10:21 ?446次閱讀
    AMC1336 ±1V 輸入、精密電壓檢測<b class='flag-5'>增強</b>型<b class='flag-5'>隔離</b>調(diào)制器

    ?AMC0386 精密高壓輸入增強隔離Δ-Σ調(diào)制器技術(shù)文檔總結(jié)

    該AMC0386是一款精密的電流隔離三角積分 (ΔΣ) 調(diào)制器,具有高壓、高阻抗輸入和外部時鐘。輸入設(shè)計為直接連接到高壓信號源。 隔離柵將系統(tǒng)中在不同共模電壓電平下運行的部分分開。隔離柵具有很強的抗磁干擾能力,并經(jīng)認(rèn)證可提
    的頭像 發(fā)表于 10-23 13:55 ?584次閱讀
    ?AMC0386 精密高壓輸入<b class='flag-5'>增強</b><b class='flag-5'>隔離</b>Δ-Σ調(diào)制器技術(shù)文檔總結(jié)

    AMC1333M10增強隔離型ΔΣ調(diào)制器技術(shù)解析與應(yīng)用指南

    Texas Instruments AMC1333M10增強隔離式Δ-Σ調(diào)制器的輸出與輸入電路由抗電磁干擾性能極強的電容式隔離柵隔開。該隔離柵經(jīng)過認(rèn)證,可按照DIN EN IEC 60
    的頭像 發(fā)表于 09-15 11:12 ?771次閱讀
    AMC1333M10<b class='flag-5'>增強</b><b class='flag-5'>隔離</b>型ΔΣ調(diào)制器技術(shù)解析與應(yīng)用指南

    π120U31 高性能雙通道數(shù)字隔離器,3kV隔離+增強ESD,賦能工業(yè)系統(tǒng)

    傳輸。這不僅簡化了設(shè)計,更帶來了卓越的傳輸性能和抗干擾能力。關(guān)鍵性能參數(shù): 高隔離等級: 提供交流3000Vrms的強固電氣隔離,滿足嚴(yán)苛的工業(yè)安全標(biāo)準(zhǔn)。 增強ESD防護: 顯著提升系統(tǒng)魯棒性,符合
    發(fā)表于 08-18 08:15

    ClickHouse 的“獨孤九劍”:極速查詢的終極秘籍

    引言 在大數(shù)據(jù)時代的江湖,數(shù)據(jù)量呈爆炸式增長,如何高效地處理和分析海量數(shù)據(jù)成為了一個關(guān)鍵問題。各路英雄豪杰紛紛亮出自己的絕技,爭奪數(shù)據(jù)處理的巔峰寶座。而在這場激烈的角逐中,ClickHouse 以其
    的頭像 發(fā)表于 04-07 13:34 ?715次閱讀
    <b class='flag-5'>ClickHouse</b> 的“獨孤九劍”:極速查詢的終極秘籍