ClickHouse最近几年很火,几家互联网大厂都开始用上了ClickHouse,培训机构也是宣传各种概念,那么ClickHouse到底是什么,跟传统的数据库又有什么区别,下面我们介绍下ClickHouse。
什么是ClickHouse
简单一句话,ClickHouse是一种列式存储数据库管理系统,应用于OLAP场景(online analytical processing of queries)。
Hive ORC, Hive Parquet, Apache HBase, Vertica, Sybase HANA, Google Dremel等都用到了列式存储。
要提一句,ClickHouse产地俄罗斯,官方文档和示例也是能看到很多俄语,算近几年眼前一亮的社区产品了。
OLAP场景的特点
- 绝大多数是读请求
- 数据以相当大的批次(> 1000行)更新,而不是单行更新;或者根本不更新
- 已添加到数据库的数据一般不修改
- 对于读取,从数据库中提取相当多的行,但只提取一小部分的列
- 宽表,即每个表包含着大量的列
- 查询相对较少(通常每台服务器每秒查询数百次或更少)
- 对于简单查询,允许延迟大约50毫秒
- 列中的数据相对较小:数字和短字符串(例如,每个URL 60个字节)
- 处理单个查询时需要高吞吐量(每台服务器每秒可达数十亿行)
- 事务不是必须的
- 对数据一致性要求低
- 每个查询有一个大表。除此以外,其他的表都很小
- 查询结果明显小于源数据。换句话说,数据经过过滤或聚合,因此结果能存储在单台机器的内存中
为什么列式数据库在OLAP场景中更胜一筹
ClickHouse官网给了一个形象的图来解释为什么列式存储更适合于O

最低0.47元/天 解锁文章
652

被折叠的 条评论
为什么被折叠?



