2021年ClickHouse 最令人兴奋的五大新特性

如果无法正常显示,请先停止浏览器的去广告插件。
分享至:
1. 2021 CLICKHOUSE TO P 5 新 特 性 朱凯 明源云·天际 大数据平台首席专家
2. 朱凯 明源云·天际 大数据平台首席专家 • Apache DolphinScheduler Committer • ClickHouse Contributor • 腾讯云TVP、华为云MVP • 著有: 《ClickHouse原理解析与应用实践》 《企业级大数据平台构建:架构与实现》 • 公众号: 《ClickHouse的秘密基地》
3. 目录 CONTENT 01 ClickHouse 全貌速览 02 2021 Top 5 Features 03 交流 & 答疑
4. 01 ClickHouse全貌速览
5.
6. Yandex 是一家怎样的公司 • 欧洲最大的互联网公司之一 • 拥有俄国第一的搜索引擎 • 超过50种不同的b2c和b2b产品 • 大数据、机器学习
7. Yandex.Metrica • 全球第三大网络分析工具 • 每天处理超过30亿个事件 • 分析涵盖数百万个网站 • 每天超过10万分析师用户 SELECT COUNT(Users) FROM hits GROUP BY Quarter
8. ClickHouse, Inc 商业化公司成立 2021 年 9 月 5000 万 美元A轮 2021 年 10 月 28 日 2.5 亿美元 B 轮 聚焦 ClickHouse 云服务
9. ClickHouse 的生态 用户生态 (仅列举部分,排名不分先后) A-word fruit 集成生态 监控 分析/可视化 数据交换/调度平台
10. ClickHouse的显著特点 • 入门简单 OLAP数据库、完整的DBMS,支持SQL、DDL、DML语句。 ROLAP模型为主 支持 MOLAP(特殊的表引擎+物化视图) 支持 Projection • Everything is table 面向表编程,数十种表引擎,包括代理访问外部资源(例如ZooKeeper、HDFS、文件等) 内置 MySQL、PostgreSQL binlog监听 甚至贡献者名单也专门有一张表 • 接口丰富 提供TCP、HTTP底层访问接口,提供JDBC、CLI等封装接口 兼容 MySQL、Postgres 客户端 支持Java、Python、Nodejs等众多第三方接口,内置数百个函数
11. ClickHouse的显著特点 • 在线查询 实时应答,无需预处理。也支持立方体预聚合 • 分布式架构 MPP架构,支持集群模式,支持数据分区、分片、副本 • 高性能 列存、高压缩、向量化引擎,秒杀一切的性能。单机部署,即拥有高性能
12. ClickHouse的显著特点 • 安全可靠 熔断机制、防误删机制 • 完善的权限体系 RBAC,客户端接入权限、资源访问权限、操作访问权限、数据行级权限
13. ClickHouse的显著特点 • 开源软件、社区活跃 2016年开源,Apache-2.0协议 850+ Contributors、21.1K+ Star 、4.1K Forks,发版速度和它的性能一样快
14. 性能有多快 横扫主流,ClickHouse的平均响应速度是Vertica的6.62倍、InfiniDB的37倍、MonetDB的24倍、 Hive的316倍、MySQL的1000倍以及Greenplum的26倍 Intel(R) Xeon(R) E5-2650 v2 @ 2.60GHz 128 GiB RAM RAID-5 on 8 6TB SATA HDD ext4. • 133字段 • 1000万、1亿和10亿数据 • 43条SQL的基准测试 https://clickhouse.yandex/benchmark.html
15. 性能有多快 500G 大小CSV文件 , 11亿数据、51个字段 Intel Core i5 4670K clocked at 3.4 GHz 16 GB of DDR3 RAM a SanDisk SDSSDHII960G 960 GB SSD drive VS 4 x Nvidia GeForce GTX TITAN X 12G GDDR5 2-core Xeon E5-1650 v3 clocked at 3.5 GHz 192 GB of RAM 2 x 1 TB Samsung 840 EVO SSDs RAID 0 https://tech.marksblogg.com/benchmarks.html 36 vCPUs, 72 GB of RAM, 900 GB of NVMe SSD storage and support 10 Gigabit networking.
16. 性能有多快 5000亿数据 3个命题查询 ClickHouse比对方快 10 ~ 100 倍 https://www.altinity.com/blog/2020/1/1/clickhouse-cost-efficiency-in-action- analyzing-500-billion-rows-on-an-intel-nuc
17.
18. 02 2021 Top 5 Features
19. 利用JIT提升数十倍查询性能 ClickHouse 同时使用了 JIT的优势: • Vectorized query execution 1. 有助于提升L1、L2缓存命中 • Runtime code generation 2. 减少执行的代码 3. 更好的利用编译器优化 4. 更好的利用CPU指令 L1、L2 cache与内存相比 性能有百倍提升
20. 利用JIT提升数十倍查询性能 表达式优化将在 v21.6 Release 版本中默认支持 聚合阶段的优化会在 v21.8 or v21.9 Release中默认支持 JIT 标准表达式编译时间在 15ms 左右, 随代码大小线性增长 • 表达式的执行性能普遍提升 1.5 ~ 3倍 • 特殊情况可以达到 20倍 • 聚合步骤的性能普遍提升 1 ~ 2倍 支持优化的表达式有: 一元运算,如abs 二元运算,如 +、-、*、/ 逻辑运算,如 and、or 分支判断,如 if、multiIf 位移操作,如bitShiftLeft SELECT a + b + c FROM test_jit settings min_count_to_compile_expression=1, compile_expressions=1
21. 支持基于 Lambda 的 UDF v21.10 Release提供 DDL语法: CREATE FUNCTION {fn_name} as ({parameters}) -> {code} 用例: CREATE FUNCTION testFunc AS (a, b) -> (a + b) DROP FUNCTION testFunc 元数据:
22. 正宗的开窗函数来袭 原来要这么写 row_number 和 dense_rank v21.3.1 Release以后这样写 原汁原味的分析&开窗函数
23. 支持S3和HDFS存储的零拷贝复制,向云原生再迈进一步 Replicated自有的同步机制,与云原生存储存在着性能的浪费 Leader metadata ReplicatedMergeTree metadata block_id: 201905_... type : get Data Data 201905_0_0_0 201905_1_1_0 拉取数据 block_id: 201905_... type : merge S3 lhtifryzjomawpcbisxxqfjgrclahcnq 0 Zookeeper ReplicatedMergeTree # cat /disks/s3/data/test1/201905_1_1_0/id.bin 201905_0_0_0 201905_1_1_0 block_id: 201905_... type : merge
24. 支持S3和HDFS存储的零拷贝复制,向云原生再迈进一步 v21.4.1 Release提供零拷贝机制 在 Merge 的时候,会借助 Zookeeper 的锁机制, 保证只会有一个节点进行 Merge 动作,其他节点等 待后同步元数据 Leader Zookeeper ReplicatedMergeTree metadata lhtifryzjomawpcbisxxqfjgrclahcnq 0 ReplicatedMergeTree metadata block_id: 201905_... type : get 只同步元数据 Data 201905_0_0_0 201905_1_1_0 Data 201905_0_0_0 201905_1_1_0 block_id: 201905_... type : merge S3 # cat /disks/s3/data/test1/201905_1_1_0/id.bin block_id: 201905_... type : merge
25. 2021最王炸功能来袭, Projection助力性能大幅提升 MergeTree 主键只支持一种排序规则
26. 2021最王炸功能来袭, Projection助力性能大幅提升 物化视图不够智能,多余的维护成本,数据同源问题 查询 主题 明细表 物化视图 SummingMergeTree AggregatingMergeTree MergeTree 物化视图 SummingMergeTree AggregatingMergeTree MergeTree MergeTree MergeTree
27. 2021最王炸功能来袭, Projection助力性能大幅提升 ClickHouse Projection 可以看做是一种更加智能的物化视图,它有如下特点: • part-level 存储 相比普通物化视图是一张独立的表,Projection 物化的数据就保存在原表的分区目录中,支持明细数据的普通Projection 和 预聚合Projection • 数据同源、同生共死 因为物化的数据保存在原表的分区,所以数据的更新、合并都是同源的,也就不会出现不一致的情况了 • 无感使用,自动命中 一张 MergeTree 创建多个 Projection ,当执行 Select 语句的时候,能根据查询范围,自动匹配最优的 Projection 提供 查询加速。如果没有命中,则直接查明细底表
28. 2021最王炸功能来袭, Projection助力性能大幅提升 原表排序 创建Projection: 针对查询主题,创建其他排序规则 针对查询主题,预聚合优化
29. 2021最王炸功能来袭, Projection助力性能大幅提升 异步的 Mutation 创建 数据同源,无需额外管理
30. 2021最王炸功能来袭, Projection助力性能大幅提升 v21.1.2.15 起提供,利用Projection,特定主题查询性能提升数倍~数十倍 查询 主题 明细表 Projection MergeTree 物化视图 SummingMergeTree AggregatingMergeTree MergeTree MergeTree MergeTree
31. 03 交流&答疑 ClickHouse的秘密基地
32. 非常感谢您的观看

首页 - Wiki
Copyright © 2011-2024 iteam. Current version is 2.137.3. UTC+08:00, 2024-11-25 09:58
浙ICP备14020137号-1 $访客地图$