ClickHouse 在廣告系統(tǒng)場景中的實踐

目錄

  • 前言
  • 需求分析
  • 主要特點
  • 適用場景
  • I/O情況
  • 測試結(jié)論

前言

隨著數(shù)據(jù)量的增長饿悬,傳統(tǒng)DB已經(jīng)無法滿足實時聚合分組排序分析需求砍鸠,目前比較流行日OLAP系統(tǒng)有:Presto,Druid,Kylin,TiFlash烙无,ClickHouse等,對現(xiàn)有流行OLAP進行調(diào)研和實驗遍尺,ClickHouse能夠解決業(yè)務(wù)的相似問題截酷。

需求分析

廣告業(yè)務(wù)數(shù)據(jù)分析維度較多,廣告維度和時間維度組合查詢條件較為復雜乾戏,查詢時間跨度大迂苛,需要穩(wěn)定,快速返回查詢結(jié)果給客戶鼓择。業(yè)務(wù)難點當數(shù)據(jù)量和計算復雜度增加后三幻,響應時間會逐漸變慢,從毫秒級上升到秒級惯退,甚至到分鐘級赌髓。

從需求上面我們可以看出,需要穩(wěn)定的催跪,基于SQL的,足夠快的引擎夷野,回溯數(shù)據(jù)方便快速懊蒸,易擴容的,方能支持數(shù)據(jù)報表業(yè)務(wù)悯搔。

主要特點

  • 絕大多數(shù)請求是以讀為主
  • 真正的面向列的DBMS
  • 實時數(shù)據(jù)更新
  • SQL語法支持
  • 多核并行處理
  • 數(shù)據(jù)高效壓縮
  • 分布式處理
  • 數(shù)據(jù)復制完整性
  • 豐富的索引
  • 數(shù)據(jù)剪枝能力比較強
  • 集群式管理
  • 可直接讀取MySQL數(shù)據(jù)
  • 適合于在線實時查詢
  • 支持近似預估計算

適用場景

  • 海量數(shù)據(jù)分析
  • 數(shù)據(jù)報表
  • 監(jiān)控

I/O情況

  1. 分析查詢時骑丸,只需要讀取少量的列。在面向列的數(shù)據(jù)庫中妒貌,您只能讀取所需的數(shù)據(jù)通危。例如,如果您需要20列中的5列灌曙,則I/O減少4倍+-菊碟。
  2. 數(shù)據(jù)是以數(shù)據(jù)包形式讀取,因此壓縮比較容易在刺,這進一步減少了I/O量逆害。
  3. 由于減少的I/O头镊,更多的數(shù)據(jù)適合在系統(tǒng)緩存中。

測試結(jié)論

提前批量導入抽樣的6億+廣告數(shù)據(jù)魄幕,連續(xù)一年日期用于用例測試相艇。

ClickHouse批量導入(集群多副本,Distributed表引擎纯陨,表結(jié)構(gòu)存儲于Zookeeper坛芽,INSERT INTO tb FORMAT TSV方式)數(shù)據(jù)15~120s/天。天級別生產(chǎn)數(shù)據(jù)滿足性能需要翼抠,另外咙轩、程序?qū)崿F(xiàn)寫入速度為:50000-230000/s。

Druid構(gòu)建一天的數(shù)據(jù)(受HDFS集群負載影響)30m+/天机久,天級別生產(chǎn)數(shù)據(jù)勉強可以臭墨。如果數(shù)據(jù)需要回溯,簡直是一種災難膘盖!

ClickHouse測試表現(xiàn):

測試數(shù)據(jù)總量:

SELECT count(*) FROM tb;

┌───count()─┐
│ 600009888 │
└───────────┘

1 rows in set. Elapsed: 0.003 sec. 

查詢某個用戶的下物料總數(shù):

SELECT COUNT(0) FROM tb WHERE (uid=12) AND (d>='2019-01-01') AND (d<=2020-02-29'')

┌─COUNT(0)─┐
│  5517277 │
└──────────┘

1 rows in set. Elapsed: 0.635 sec. Processed 5.97 million rows, 53.72 MB (9.39 million rows/s., 84.53 MB/s.) 

查詢某個用戶下詞列表:

SELECT uid, uname,  words, SUM(pv) pv, SUM(click) click, SUM(costs) costs FROM tb WHERE (a=12) AND (d>='2019-01-01') AND (d<=2020-02-29'') GROUP BY uid, uname, words ORDER BY costs DESC LIMIT 0, 30;

┌────────uid─┬─uname─────────┬─────────bid─┬─words──────────────┬──────pvs─┬─clicks─┬───────costs─┐
│ 3145298302 │ PC超億12_精確 │ 26080049777 │ 首頁官網(wǎng)           │ 37248919 │ 234492 │ 70347.60000 │
│ 3145298302 │ PC超億12_精確 │ 26186326337 │ 網(wǎng)站大全           │  6206134 │ 104139 │ 31241.70000 │
│ 3145298302 │ PC超億12_精確 │ 24816548095 │ 板                 │  1457180 │  93951 │ 28185.30000 │
│ 3145298302 │ PC超億12_精確 │ 26107100801 │ 圖                 │  1896121 │  84312 │ 25293.60000 │
│ 3145298302 │ PC超億12_精確 │ 26834629020 │ 官網(wǎng)               │   487345 │  61395 │ 21226.10000 │
│ 3145298302 │ PC超億12_精確 │ 26196959633 │ 漫畫               │  1480118 │  25444 │ 15834.42000 │
│ 3145298302 │ PC超億12_精確 │ 26186329636 │ 聯(lián)盟               │   456358 │  46051 │ 13815.30000 │
│ 3145298302 │ PC超億12_精確 │ 24857366663 │ 查詢電話           │  5278596 │  25568 │ 12142.75000 │
│ 3145298302 │ PC超億12_精確 │ 24857357703 │ 模板               │   574470 │  34251 │ 10275.30000 │
│ 3145298302 │ PC超億12_精確 │ 25975600742 │ 百度               │ 28774114 │  34157 │ 10247.10000 │
│ 3145298302 │ PC超億12_精確 │ 23537517700 │ 兒童               │   387200 │  30973 │  9291.90000 │
│ 3145298302 │ PC超億12_精確 │ 26742512966 │ 閱讀網(wǎng)             │  2535672 │  28294 │  8488.20000 │
│ 3145298302 │ PC超億12_精確 │ 26712075029 │ 查詢網(wǎng)             │  3070835 │  21588 │  7929.20000 │
│ 3145298302 │ PC超億12_精確 │ 26742550022 │ 直播               │   221523 │  25977 │  7793.10000 │
│ 3145298302 │ PC超億12_精確 │ 26186205650 │ 全集觀看           │  2188534 │  20392 │  6736.84000 │
│ 3145298302 │ PC超億12_精確 │ 26107100833 │ 地圖               │   143585 │  19935 │  5980.50000 │
│ 3145298302 │ PC超億12_精確 │ 27040647713 │ 客戶端             │   570540 │  16346 │  4903.80000 │
│ 3145298302 │ PC超億12_精確 │ 26800482794 │ 單號查詢           │  2003334 │  16252 │  4875.60000 │
│ 3145298302 │ PC超億12_精確 │ 26776266759 │ 房屋租賃           │   380903 │  16219 │  4865.70000 │
│ 3145298302 │ PC超億12_精確 │ 26776381177 │ 快遞單號           │  1851953 │  14473 │  4341.90000 │
│ 3145298302 │ PC超億12_精確 │ 26186219167 │ 加減法             │   148837 │  14460 │  4338.00000 │
│ 3145298302 │ PC超億12_精確 │ 26954252248 │ 精品               │  1280662 │  14390 │  4317.00000 │
│ 3145298302 │ PC超億12_精確 │ 26924100555 │ 播放器             │   855142 │  14163 │  4248.90000 │
│ 3145298302 │ PC超億12_精確 │ 26479917828 │ 圖片               │   179839 │  12593 │  3976.10000 │
│ 3145298302 │ PC超億12_精確 │ 22671940297 │ 人體               │   220719 │  13204 │  3961.20000 │
│ 3145298302 │ PC超億12_精確 │ 26001297994 │ 思維               │   205330 │  12639 │  3791.70000 │
│ 3145298302 │ PC超億12_精確 │ 24816632460 │ 植物               │   448441 │  12420 │  3726.00000 │
│ 3145298302 │ PC超億12_精確 │ 26712060443 │ 手游               │   201656 │  12360 │  3708.00000 │
│ 3145298302 │ PC超億12_精確 │ 26742132975 │ 六年               │   297673 │  11971 │  3591.30000 │
│ 3145298302 │ PC超億12_精確 │ 26800365256 │ 全國               │   778811 │  11878 │  3563.40000 │
└────────────┴───────────────┴─────────────┴────────────────────┴──────────┴────────┴─────────────┘

30 rows in set. Elapsed: 0.657 sec. Processed 5.97 million rows, 556.60 MB (9.09 million rows/s., 847.34 MB/s.) 

從造用場景上ClickHouse更貼近于目前的數(shù)據(jù)業(yè)務(wù)胧弛,性能表現(xiàn)上更有優(yōu)勢,批量生產(chǎn)數(shù)據(jù)時速度最快侠畔。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末结缚,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子软棺,更是在濱河造成了極大的恐慌红竭,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,188評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件喘落,死亡現(xiàn)場離奇詭異茵宪,居然都是意外死亡,警方通過查閱死者的電腦和手機瘦棋,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,464評論 3 395
  • 文/潘曉璐 我一進店門稀火,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人赌朋,你說我怎么就攤上這事凰狞。” “怎么了沛慢?”我有些...
    開封第一講書人閱讀 165,562評論 0 356
  • 文/不壞的土叔 我叫張陵赡若,是天一觀的道長。 經(jīng)常有香客問我团甲,道長逾冬,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,893評論 1 295
  • 正文 為了忘掉前任伐庭,我火速辦了婚禮粉渠,結(jié)果婚禮上分冈,老公的妹妹穿的比我還像新娘。我一直安慰自己霸株,他們只是感情好雕沉,可當我...
    茶點故事閱讀 67,917評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著去件,像睡著了一般坡椒。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上尤溜,一...
    開封第一講書人閱讀 51,708評論 1 305
  • 那天倔叼,我揣著相機與錄音,去河邊找鬼宫莱。 笑死丈攒,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的授霸。 我是一名探鬼主播巡验,決...
    沈念sama閱讀 40,430評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼碘耳!你這毒婦竟也來了显设?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,342評論 0 276
  • 序言:老撾萬榮一對情侶失蹤辛辨,失蹤者是張志新(化名)和其女友劉穎捕捂,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體斗搞,經(jīng)...
    沈念sama閱讀 45,801評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡指攒,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,976評論 3 337
  • 正文 我和宋清朗相戀三年鸦致,在試婚紗的時候發(fā)現(xiàn)自己被綠了盆犁。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,115評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡离福,死狀恐怖溅呢,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情猿挚,我是刑警寧澤咐旧,帶...
    沈念sama閱讀 35,804評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站绩蜻,受9級特大地震影響铣墨,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜办绝,卻給世界環(huán)境...
    茶點故事閱讀 41,458評論 3 331
  • 文/蒙蒙 一伊约、第九天 我趴在偏房一處隱蔽的房頂上張望姚淆。 院中可真熱鬧,春花似錦屡律、人聲如沸腌逢。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,008評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽搏讶。三九已至,卻和暖如春霍殴,著一層夾襖步出監(jiān)牢的瞬間媒惕,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,135評論 1 272
  • 我被黑心中介騙來泰國打工来庭, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留妒蔚,地道東北人。 一個月前我還...
    沈念sama閱讀 48,365評論 3 373
  • 正文 我出身青樓月弛,卻偏偏與公主長得像肴盏,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子尊搬,可洞房花燭夜當晚...
    茶點故事閱讀 45,055評論 2 355

推薦閱讀更多精彩內(nèi)容