千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  应聘面试  >  大数据面试题  > 为什么使用ClickHouse?有哪些优势?有哪些缺点?

为什么使用ClickHouse?有哪些优势?有哪些缺点?

来源:千锋教育
发布人:wjy
时间: 2022-09-01 16:01:33 1662019293

优点:

- 真正的列式DBMS 除了数据本身外不应该存在其他额外的数据。

这意味着为了避免在值旁边存储它们的长度“number”,你必须支持固定长度数值类型。

- 数据压缩:数据压缩存储在性能方面发挥着关键作用

- 数据的磁盘存储:工作在传统磁盘上的系统

- 多核心并行处理:大型查询以一种自然的方式并行化,占用当前服务器上可用的所有必要资源

- 多服务器分布式处理:在ClickHouse中,数据可以保存在不同的shard上,每一个shard都由一组用于容错的replica组成,查询可以并行的在所有shard上进行处理

- 支持SQL:ClickHouse支持基于SQL的查询语言,该语言大部分情况下是与SQL标准兼容的。 支持的查询包括 GROUP BY,ORDER BY,IN,JOIN以及非相关子查询。 不支持窗口函数和相关子查询

- 向量引擎:为了高效的使用CPU,数据不仅仅按列存储,同时还按向量(列的一部分)进行处理 - 实时的数据更新 ClickHouse支持在表中定义主键。

为了使查询能够快速在主键中进行范围查找,数据总是以增量的方式有序的存储在MergeTree中。因此,数据可以持续不断高效的写入到表中,并且写入的过程中不会存在任何加锁的行为

- 索引 按照主键对数据进行排序,使能够以几十毫秒的低延迟对数据进行特定值查找或范围查找

- 适合在线查询 在线查询意味着在没有对数据做任何预处理的情况下以极低的延迟处理查询并将结果加载到用户的页面中 - 支持近似计算 ClickHouse提供各种各样在允许牺牲数据精度的情况下对查询进行加速的方法:

1、用于近似计算的各类聚合函数,如:distinct values, medians, quantiles 

2、 基于数据的部分样本进行近似查询。这时,仅会从磁盘检索少部分比例的数据。

3、 不使用全部的聚合条件,通过随机选择有限个数据聚合条件进行聚合。这在数据聚合条件满足某些分布条件下,在提供相当准确的聚合结果的同时降低了计算资源的使用。

缺点:

- 没有完整的事物支持

- 缺少高频率,低延迟的修改或删除已存在数据的能力。仅能用于批量删除或修改数据

- 稀疏索引使得ClickHouse不适合通过其键检索单行的点查询

为什么使用ClickHouse?有哪些优势?

tags:
声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT