clickhouse 一战到底

简介

最强OLAP分析引擎 -- clickhouse

OLTP与OLAP

  • OLTP:是传统的关系型数据库,主要操作增删改查,强调事务一致性,比如银行系统、电商系统。
  • OLAP:是仓库型数据库,主要是读取数据,做复杂数据分析,侧重技术决策支持,提供直观
  • 简单的结果。

1.Clickhouse是什么

Clickhouse 是一个用于联机分析(OLAP)的列式数据库管理系统(DBMS)。是由俄罗斯Yandex公司开源的数据库,专为OLAP而设计。 Yandex是俄罗斯最大的搜索引擎公司,官方宣称ClickHouse 日处理记录数”十亿级”管理系统。他是使用C++语言编写的,支持SQL实时查询的大型数据管理系统。由于Clickhouse在大型数据集查询处理的高效表现,从2016年开源以来,就吸引了全球的目光,甚至一度登上githubl的关注度头把交椅。

OLAP

Clickhouse的设计定位就是用于OLAP离线数据处理。相比于OLTP在线事务处理,Clickhouse更关注于对海量数据的计算分析,关注的是数据吞吐、查询速度、计算性能等指标。而对于数据频繁的修改变更,则不太擅长。所以Clickhouse通常用来构建后端的实时数仓或者离线数仓。

列式存储

Clickhous是一个真正意义上的列式存储数据库。传统数据库存储数据都是按照数据行进行存储。

2.clickhous的应用场景

一个典型的OLAP场景主要是对海量数据进行更新,相比于我们常用的ysq等OLTP数据库,有一些很明显的特征。
(1)绝大多数请求都是读请求。对数据的修改比较少或者几乎没有。
(2)数据量很大。这个量即包括数据的行数,也包括数据的列数。也就是通常说的宽表。大部分情况下,对分布式表结构的要求是必须的。
(3)数据通常以大的批次进行整体更新,而不是单行更新。这需要有很高的数据吞吐量。
(4)对事务的要求不是必须的。对于数据一致性的要求不会太高。通常只要求数据最终一致性。

clickhous的使用

clickhouse本身作为一个数据库,对普通增删改查的操作都是支持的。但是,他针对数仓的使用场景,又有非常多的高级特性。对这些高级特性的掌握程度将直接影响clickhousel的使用效率。实现一个同样的查询逻辑,不同的SQL写法在clickhouse.上很容易体现出非常非常大的执行时长差别。所以在使用clickhouse时,需要对这些特性非常重视。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值