Clickhouse(一)简介以及未来前景漫谈

Clickhouse是一个高性能的列式DBMS,专为OLAP场景设计,支持SQL并提供出色的扩展性和高并发读取能力。其特点包括列式存储、压缩效率高、支持SQL、实时数据更新以及异步多主复制。适用于大数据分析、日志处理等领域,常见于腾讯、今日头条等公司。尽管不支持事务,但Clickhouse凭借其在速度和性能上的优势,已成为大数据处理的热门选择。

Clickhouse简介以及未来前景漫谈

1. Clickhouse概览

1.1 概览

  1. clickhouse是一个OLAP列式DBMS,是由俄罗斯的Yandex在2016年开源出来,简称CH。
  2. clickhouse主要用于OLAP场景,也就是联机在线分析,支持SQL
  3. OLAP有以下几个要求
  • 可以支持多个维度的查询
  • 有很高的处理速度
  • 数据一般一次导入,多次读取,跟常规的关系型数据库很不一样。所以不少OLAP引擎不支持事务也是这个原因
  1. DBMS,数据库管理系统,意味着有数据库引擎,数据库服务器和客户端等组成。
  2. clickhouse是一个完全列式的数据库管理系统,允许在运行时创建表和数据库,加载数据和运行查询,而不需要重新配置和启动服务器。
  • 完全列式的存储,类比hbase一样,可以支持稀疏数据存储,这对于海量数据存储是有很大的空间利用效率优势的
  • 列式存储还可以有更高的压缩效率,因为都是相同类型数据,这样做压缩时,可以有更多的数据相似性,压缩比例更高。这一点可以类比视频中的IPB三帧之帧间压缩机制。
  • 动态进行数据库创建和查询,这样非常适合大数据场景,因为海量数据一般是源源不断产生,无法跟传统数据库一样,一次性导入。
  1. clickhosue支持线性扩展,高可靠性和容错性,作为海量数据存储,高可靠性一般都是采用副本形式来实现的,会占用一定空间,但可以保证不同机器甚至不同机房中都有数据副本,可以很好低于灾难,保证数据安全。至于高可靠性,很多框架都会利用zookeeper来保证集群的关键数据同步,主从节点选举等。
  2. clickhouse没有使用hadoop的生态,而是自己采用local attached storage,这样可以拜托hadoop的局限性。
  3. clickhosue的线性扩展可以在实际生产中达到较大规模,据说国内头条和腾讯有过千节点的集群,能应对每天上亿甚至十亿级别的数据处理,这对于一般的技术框架来说是无法做到的。但clickhouse本身对比传统技术存储和处理框架有10–100倍的性能优势,确实很厉害
  4. clickhouse本身采用shard+replication的数据副本方式,提供SQL支持,有丰富的client支持。
  5. clickhouse最大优势就是快,原因是

1.它的数据剪枝能力比较强,分区剪枝在执行层,而存储格式用局部数据表示,就可以更细粒度地做一些数据的剪枝。它的引擎在实际使用中应用了一种现在比较流行的 LSM 方式。
2.它对整个资源的垂直整合能力做得比较好,并发 MPP+ SMP 这种执行方式可以很充分地利用机器的集成资源。它的实现又做了很多性能相关的优化,它的一个简单的汇聚操作有很多不同的版本,会根据不同 Key 的组合方式有不同的实现。对于高级的计算指令,数据解压时,它也有少量使用。
3.ClickHouse 是一套完全由 C++ 模板 Code 写出来的实现,代码还是比较优雅的。
4.ClickHouse是一个完全的列式数据库
在这里插入图片描述
可以看出,最开始主要是用来做行为数据分析,如页面浏览和点击,类似国内友盟等厂商
在这里插入图片描述

1.2 OLAP

  1. OLAP就是online analysis process,在线数据分析处理。主要用于商业领域,BI处理。
  2. 具备FASMI,也就是Fast Analysis of Shared Multidimensional Information,共享多维度信息的快速分析特征。
  • F是fast,快速,能够在秒级别内对用户的多数分析要求做出响应
  • M
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值