查詢速度提升200倍,ClickHouse到底有多快?

ClickHouse 是什么?
ClickHouse 是一個用于聯(lián)機分析(OLAP)的列式數(shù)據(jù)庫管理系統(tǒng)(DBMS)。
OLTP:是傳統(tǒng)的關系型數(shù)據(jù)庫,主要操作增刪改查,強調事務一致性,比如銀行系統(tǒng)、電商系統(tǒng)。
OLAP:是倉庫型數(shù)據(jù)庫,主要是讀取數(shù)據(jù),做復雜數(shù)據(jù)分析,側重技術決策支持,提供直觀簡單的結果。



https://clickhouse.tech/docs/zh/
業(yè)務問題
ClickHouse 實踐
①Mac 下的 Clickhouse 安裝
https://blog.csdn.net/qq_24993831/article/details/103715194
②數(shù)據(jù)遷移:從 MySQL 到 ClickHouse
create table engin mysql,映射方案數(shù)據(jù)還是在 MySQL。
insert into select from,先建表,在導入。
create table as select from,建表同時導入。
csv 離線導入。
streamsets。
https://anjia0532.github.io/2019/07/17/mysql-to-clickhouse/
CREATE?TABLE?[IF?NOT?EXISTS]?[db.]table_name?ENGINE?=?Mergetree?AS?SELECT?*?FROM?mysql('host:port',?'db',?'database',?'user',?'password')
③性能測試對比
性能測試對比如下圖:

④數(shù)據(jù)同步方案
臨時表如下:


⑤ClickHouse 為什么快?
有如下幾點:
只需要讀取要計算的列數(shù)據(jù),而非行式的整行數(shù)據(jù)讀取,降低 IO cost。
同列同類型,有十倍壓縮提升,進一步降低 IO。
Clickhouse 根據(jù)不同存儲場景,做個性化搜索算法。
遇到的坑
①ClickHouse 與 MySQL 數(shù)據(jù)類型差異性

②刪除或更新是異步執(zhí)行,只保證最終一致性

總結
ClickHouse官方手冊 CK
ClickHouse在攜程酒店應用 蔡岳毅
ClickHouse引擎怎么選 Roin123
最近熱文
? ?為什么 Java 中“1000==1000”為false,而”100==100“為true? ???太優(yōu)秀了!26歲當上985博導,這才是乘風破浪的姐姐! ???fastjson的作者,在阿里內網(wǎng)被噴,這到底是怎么一回事? ???為什么有些大公司技術弱爆了? 最近整理了一份大廠算法刷題指南,包括一些刷題技巧,在知乎上已經(jīng)有上萬贊。同時還整理了一份6000頁面試筆記。關注下面公眾號,在公眾號內回復「刷題」,即可免費獲取!回復「加群」,可以邀請你加入讀者群!
明天見(??ω??)??
評論
圖片
表情
