基于ClickHouse玩转每天1000亿数据量

1、为什么选择clickhouse?

       足够快,在选择clickhouse以前我们也有调研过presto、druid等方案,presto的速度不够快,无法在5分钟内完成这么多次的查询。

      druid的预计算挺好的,但是维度固定,我们的指标的维度下钻都是很灵活的,并且druid的角色太多维护成本也太高,所以也被pass了。

      最终我们选择了clickhouse,在我们使用之前,部门内部其实已经有使用单机版对离线数据的查询进行加速了,所以选择clickhouse也算是顺理成章。

 

2、clickhouse和presto查询速度比较

clickhouse集群现状:32核128G内存机器60台,使用ReplicatedMergeTree引擎,每个shard有两个replica。

presto集群的现状:32核128G内存机器100台。

1)最简单的count()的case

      从上图可以看到clickhouse在count一个1100亿数据表只需要2s不到的时间, 由于数据冗余存储的关系,clickhouse实际响应该次查询的机器数只有30台(60 / 2),presto在count一个400亿的数据表耗时80秒左右的时候,100台机器同时在处理这个count的查询。

 

2)常规指标维度下钻计算count() + group by + order by + limit

     同样在1100亿数据表中clickhouse在该case上面的执行时间也是非常不错的耗时5s左右,presto在400亿的数据集上完成该查询需要100s左右的时间。

    从上面两个常规的case的执行时间我们可以看出,clickhouse的查询速度比presto的查询速度还是要快非常多的。

 

 

3、clickhouse为什么如此快

1)优秀的代码,对性能的极致追求

            clickhouse是CPP编写的,代码中大量使用了CPP最新的特性来对查询进行加速。

 

2)优秀的执行引擎以及存储引擎

          clickhouse是基于列式存储的,使用了向量化的执行引擎,利用SIMD指令进行处理加速,同时使用LLVM加快函数编译执行,当然了Presto也大量的使用了这样的特性。

 

3)稀疏索引

          相比于传统基于HDFS的OLAP引擎,clickhouse不仅有基于分区的过滤,还有基于列级别的稀疏索引,这样在进行条件查询的时候可以过滤到很多不需要扫描的块,这样对提升查询速度是很有帮助的。

 

4)存储执行耦合

          存储和执行分离是一个趋势,但是存储和执行耦合也是有优势的,避免了网络的开销,CPU的极致压榨加上SSD的加持,每秒的数据传输对于网络带宽的压力是非常大的,耦合部署可以避免该问题。

 

  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
数据分析职业是一个多金的职业,数据分析职位是一个金饭碗的职位,前景美好,但是要全面掌握大数据分析技术,非常困难,大部分学员的痛点是不能快速找到入门要点,精准快速上手。本课程采用项目驱动的方式,以Spark3和Clickhouse技术为突破口,带领学员快速入门Spark3+Clickhouse数据分析,促使学员成为一名高效且优秀的大数据分析人才。学员通过本课程的学习,不仅可以掌握使用Python3进行Spark3数据分析,还会掌握利用Scala/java进行Spark数据分析,多语言并进,力求全面掌握;另外通过项目驱动,掌握Spark框架的精髓,教导Spark源码查看的技巧;会学到Spark性能优化的核心要点,成为企业急缺的数据分析人才;更会通过Clickhouse和Spark搭建OLAP引擎,使学员对大数据生态圈有一个更加全面的认识和能力的综合提升。真实的数据分析项目,学完即可拿来作为自己的项目经验,增加面试谈薪筹码。课程涉及内容:Ø  Spark内核原理(RDD、DataFrame、Dataset、Structed Stream、SparkML、SparkSQL)Ø  Spark离线数据分析(千万简历数据分析、雪花模型离线数仓构建)Ø  Spark特征处理及模型预测Ø  Spark实时数据分析(Structed Stream)原理及实战Ø  Spark+Hive构建离线数据仓库(数仓概念ODS/DWD/DWS/ADS)Ø  Clickhouse核心原理及实战Ø  Clickhouse engine详解Ø  Spark向Clickhouse导入简历数据,进行数据聚合分析Ø  catboost训练房价预测机器学习模型Ø  基于Clickhouse构建机器学习模型利用SQL进行房价预测Ø  Clickhouse集群监控,Nginx反向代理Grafana+Prometheus+Clickhouse+node_exporterØ  Spark性能优化Ø  Spark工程师面试宝典       课程组件:集群监控:福利:本课程凡是消费满359的学员,一律送出价值109元的实体书籍.

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值