-
ClickHouse是一个用于联机分析(OLAP)的列式数据库管理系统(DBMS)。
ClickHouse不仅是一个数据库,还是一个数据库管理系统,也是属于关系型数据库,来自不同列的值被单独存储,来自同一列的数据被存储在一起。 -
OLAP场景的关键特征,应用场景
绝大多数是读请求
数据以相当大的批次(> 1000行)更新,而不是单行更新;或者根本没有更新。
已添加到数据库的数据不能修改。
对于读取,从数据库中提取相当多的行,但只提取列的一小部分。 宽表,即每个表包含着大量的列
查询相对较少(通常每台服务器每秒查询数百次或更少) 对于简单查询,允许延迟大约50毫秒
列中的数据相对较小:数字和短字符串(例如,每个URL 60个字节) 处理单个查询时需要高吞吐量(每台服务器每秒可达数十亿行)
事务不是必须的 对数据一致性要求低 每个查询有一个大表。除了他以外,其他的都很小。
查询结果明显小于源数据。换句话说,数据经过过滤或聚合,因此结果适合于单个服务器的RAM中 -
为了高效的使用CPU,数据不仅仅按列存储,同时还按向量(列的一部分)进行处理,这样可以更加高效地使用CPU。
线性代数的既视感, -
在ClickHouse中,数据可以保存在不同的shard上,每一个shard都由一组用于容错的replica组成,查询可以并行地在所有shard上进行处理。这些对用户来说是透明的
09-24
6008
09-23
6554
01-06
01-14
2万+