ClickHouse初入门

目录

什么是ClickHouse:

OLAP场景得关键属性:

 ClickHouse的独特功能:

 1.真正面向列的DBMS,

2.数据压缩

3,数据磁盘存储

4,多个核心的并行处理

5,多个服务器上多的分布式处理

6,SQL支持

7,矢量引擎

8,实时数据更新

9,索引

10,适合在线查询

11,支持近似计算

12,数据复制和数据完整性支持

ClickHouse的缺点:

Clickhouse数据类型:待整理


原文参考ClickHouse官方网站-https://clickhouse.yandex/docs/en/introduction/distinctive_features/

什么是ClickHouse:
 

 ClickHouse是一个面向列得数据库管理系统(DBMS),用于在线分析处理查询(OLAP).

它以列式存储数据

OLAP场景得关键属性:
 

1.绝大数请求都是读取访问权限 

2.数据以相当大得批次(>1000行)更新,而不是单行更新;或者它根本没有更新。

3.数据已经添加到数据库后,但未进行修改。

4.对于读取,从DB中提取了相当多的行,但是只提取了一小部分列

5.表格“宽”,意味着它们含有大量的列

6.查询相对较少(通常每台服务器数百个查询或者每秒更少)

7.对于简单查询,允许延迟大约50ms。

8.列值相当小:数字和短字符串(例如每个URL60个字节)

9.处理单个查询时需要高吞吐量(每台服务器每秒最多数十亿行)

10.Transactions不是必须的

11.对数据一致性要求较低

12.每个查询有一张大表。所有表都很小,除了一个。

13.查询结果明显小于源数据。换句话说,数据被过滤或聚合美因茨结果适合单个服务器的RAM。

 ClickHouse的独特功能:
 

 1.真正面向列的DBMS,

没有与值一起存储额外的数据。除此之外,这意味着必须支持恒定长度值,以避免在值的旁边存储长度“数字”。例如,是一个Uint 8类型的值实际上应该消耗大于1GB的未压缩,这将极大地影响CPU的使用。即使在未压缩时,紧凑地存储数据(没有任何“垃圾”)也是非常重要的,因为解压缩地速度(Cpu)使用率主要取决于未压缩数据的量。

---值得注意的是,因为有些系统可以单独存储不同列的值,由于它们针对其它场景的优化而吴凡有效的处理分析查询。例如Hbase,BigTable,Cassandra,和HyperTable。在这些系统中,您将获得1大约每秒十万行的吞吐量,但是不会达到每秒数亿行。

---值得注意的是,ClickHouse是一个数据库管理系统,而不是一个数据库。ClickHouse允许在运行时创建表和数据库,加载数据和运行查询,而无需重新配置和重新启动服务器。

2.数据压缩

一些面向列的DBMS(InfiniDB CE和MonetDB)不使用数据压缩。但是,数据压缩确实在实现性能卓越方面发或者关键作用。

3,数据磁盘存储

通过主键对数据进行物理分类,可以提取具有低延迟(小于即使毫秒)的特定值或范围的数据。一些面向列的DBMS(例如SAP HANA和Google PowerDrill)只能在RAM中工作,这种方式鼓励分配比实时分析实际需要更大的硬件估算。ClickHouse设计用于常规硬盘驱动器,这意味着每GB数据存储的成本很低,但SSD和额外的RAM也可以充分使用(如果可用)。

4,多个核心的并行处理

大型查询以自然方式并行化,获取当前服务器上可用的所有必要资源。

5,多个服务器上多的分布式处理

上面提到的几乎没有一个柱状DBMS支持分布式处理。在ClickHouse中,数据可以驻留在不同的分片上。每个分片都可以是一组用于容错的副本。在所有的分片上进行并行处理查询。这对于用户来说是透明多的。

6,SQL支持

ClickHouse支持基于SQL的声明性查询语言,在许多情况下与SQL标准相同。支持的查询包括GROUP BY,ORDER BY, FROM,IN和JOIN子句中的子查询以及标量子查询。不支持从属子查询和窗口函数。

7,矢量引擎

数据不仅按列存储,还由向量(列的一部分)处理。这是我们可以实现高CPU利用率。

8,实时数据更新

ClickHouse支持具有主键的表。为了快速执行主键范围的查询,使用合并树以递增的方式进行排序。因此,可以不断将数据添加到表中。摄取新数据时不会进行锁定。

9,索引

通过主键对数据进行物理排序,可以提取具有延迟(小于几十毫秒)的特定值或

10,适合在线查询

低延迟意味着可以在没有延迟的情况下处理查询,而无需在加载用户界面的同一时间提前准备答案。换句话说-online

11,支持近似计算

ClickHouse提供了各种交易性能准确度的方法:
1,聚合函数,用于近似计算不同值,中位数和分位数的数量

2,基于数据的一部分(样本)运行查询并获得祭祀结果。在这种情况下,从磁盘检索的数据成比例地减少。

3,为有限数量地随机密钥运行聚合,为不是为所有密钥运行聚合。在数据密钥分发地某些条件下,还在使用较少资源的同时提供了相当准确的结果。

12,数据复制和数据完整性支持

使用异步多主机复制。再写入任何可用副本后,数据将分放到后台的所有剩余副本。系统在不同的副本上维护相同的数据。在大多数故障后自动执行恢复,在复杂情况下-半自动执行。

ClickHouse的缺点:
 

1,没有完整的事务支持

2,缺乏高速率和低延迟的修改和删除已插入数据的能力。有批次删除和更新可用于清理或修改数据,例如符合GDPR。

3,稀疏索引使得ClickHouse不太适合通过其键 做检索单行的点查询。

 

Clickhouse数据类型:待整理

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值