Click house 初体验

简介

战斗民族开发的 olap 数据库,适用于渠道漏斗分析、app 点击行为路径分析等业务场景

关键特性

优点

# 描述 备注
多引擎支持 支持多引擎 engine,生产环境主要是 merge tree,有点类似 LSM 但是不写内存,直接写磁盘,每次摄入数据都会生成一个目录,并会生成相关的 idx、mrk、bin 文件,所以适合批量摄入,实时摄入最好能够进行时间与 batch 批量摄入,server 端会异步进行数据 merge,单条摄入一定要杜绝,将会对服务端造成极大压力
向量化(SIMD) 向量化计算充分利用 cpu 资源
code gen code gen 生成优化后的物理执行计划
列式存储 每个列都有单独的 mrk、bin 文件存储,对于压缩友好
TTL 支持字段级和表级别的 TTL
MVCC 查询时支持多版本,不会进行加锁
SQL 支持良好,分析函数丰富 提供了很多方便漏斗分析,路径分析的函数方便进行 olap 分析,如:sequenceMatch,groupArray等,还支持高阶函数,如 arrayFilter ,arrayFirstIndex 等

缺点

# 描述 备注
不支持事务 OLAP 引擎,无可厚非
仅支持 batch 摄入 由于 merge tree 本身的设计(类似 lsm,但是无 log 和 memory store,不写内存,直接写入磁盘),仅对 batch 写入支持友好,单条频繁摄入将对 server 端性能造成极大影响,server 端会频繁 merge 造成 load 升高 实时数据摄入时需要注意
不支持二级索引
写放大 merge tree 会定期进行 merge,导致写入放大,当前类 lsm 结构的通病
主键可重复 比较诡异的地方,不一定算劣势,部分场景需要考虑业务层面做去重
稀疏索引不适合点查 稀疏索引导致其不适合点查,kv 查询更适合使用 hbase redis 等

JDBC 客户端

github链接 描述
clickhouse-jdbc 官方提供,基于 http 实现,与 server 的 8123 端口进行通信
ClickHouse-Native-JDBC 第三方lib,基于 tcp 实现,与 server 的 9000 端口进行通讯 性能相对更优,推荐使用

对比

OLAP数据库 数据摄入 存储方式 查询性能 用户友好程度 场景
Druid 支持离线 Hdfs 数据摄入和实时 Kafka 数据摄入 LSM 变种,采用一层全维度的 roll up 进行预计算,不存储明细 查询时在 broker 层面进行更加深层的聚合计算,毫秒级到秒级 组件繁多,包含 coordinator、 overlord、broker、historical、middle manager 等多种组件和进程,依赖 ZK 和 mysql,运维相对复杂,维度度量修改支持在线修改,对用户友好,需要时间字段 iot、实时监控指标产出、实时渠道聚合分析等
Kylin 支持 Hive 和 Kafka 摄入,由于使用基于 mr 和 spark 的计算引擎进行 cube 构建,难以达到分钟级延迟,延迟至少在十分钟至半小时级别 全维度预计算构建 cube,支持一些策略的剪枝,减少无用计算量,开源版本依赖 HBase 作为 Storage 基于全量预计算产出、亚秒级 依赖 Hadoop 生态,适合维度、度量相对稳定的 cube 分析,一旦需要修改维度、度量需要重新配置,重新构建,不一定需要时间字段 维度、度量明确的场景、偏离线 T+1 或 H+1、分析聚合维度多样化,维度尽量不要超过 20 维,否则将产生维度爆炸
ClickHouse 支持离线在线数据录入,但是由于存储设计实时数据摄入千万不能单条频繁摄入,一定要做 batch 汇总,秒级摄入 qps 不要超过 1 与 kylin、druid 不同,不做预计算,完全是通过索引、列式存储、压缩、向量化、code gen 等充分压榨 cpu 等计算资源达到快速计算的目的 毫秒级至秒级不等 单一组件、sql 支持良好、分析函数丰富,易上手,需要时间字段 渠道漏斗分析、app 点击路径事件分析

参考文档

怎么用ClickHouse做漏斗分析?

转化漏斗的基本实现

ClickHouse主键探讨[译文+补充]

使用ClickHouse一键接管MySQL数据分析

How to realize funnel analysis by ClickHouse (with our illustrating example) ?

https://clickhouse.yandex/docs/en/single/

ClickHouse 使用

数据库稠密索引与稀疏索引

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,029评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,395评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,570评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,535评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,650评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,850评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,006评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,747评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,207评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,536评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,683评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,342评论 4 330
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,964评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,772评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,004评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,401评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,566评论 2 349

推荐阅读更多精彩内容