2. 腾讯 clickhouse实践 _2019丁晓坤&熊峰
2 Block … DataNode-2 Block 1 Block 2 Block … DataNode-3 DataNode-1 指标计算平台 Ø 分布式计算 • 并行计算 Ø 列式存储 • 按需加载减少IO • 可支持大量列 Ø 动态位图索引 • 缓存上次结果 • 成本低、命中率高 核心特点 Bitmap Filter Builder Dynamic 数据仓库(TDW) 画像服务 BI服务 查询服务 ETL工具 一切以用户价值为依归 25 业务应用实践 iData 2 • 支持更多的机器学习算法 • 支持explain 查看整个sql 执行计划 • 集群管理 一切以用户价值为依归 Future Thanks 腾讯招聘 腾讯大数据0 码力 | 26 页 | 3.58 MB | 1 年前36. ClickHouse在众安的实践
03GB/s 2.46GiB 26 ClickHouse 百亿数据性能测试与优化 • 场景5涉及到全表百亿行数据,第一次执行与后续执行花费时间差距较大 • 第一次执行,数据在硬盘上 花费~250s,性能瓶颈在硬盘io (iostat util 100%) • 第二次执行,大部分数据已经在内存里 花费~18s,性能瓶颈在cpu (top cpu usage ~1447%) • 两次运行的比较: 百亿数据性能测试与优化 • 性能瓶颈在硬盘io,实验验证 • 数据分布在三台服务器上 • 执行涉及到全表数据的查询(cold data,从硬盘读取),处理速度为~24.28million rows/s • 只用到三块硬盘的io:3*140=420mb/s • 数据分布在六台服务器上 • 执行涉及到全表数据的查询(cold data,从硬盘读取),处理速度为~43.60million iotop:查看系统进程占用io情况 • iostat -dmx 1: 查看磁盘io使用情况,每秒更新 • Clickhouse命令: • set send_logs_level = 'trace':查看sql执行步骤详情 • 根据query_id查看内存使用情况,io情况等详细信息: system flush logs; select ProfileEvents.Names as name, match(name0 码力 | 28 页 | 4.00 MB | 1 年前3蔡岳毅-基于ClickHouse+StarRocks构建支撑千亿级数据量的高可用查询引擎
query_log表,记录已经 执行的查询记录 query:执行的详细SQL,查询相关记录可以 根据SQL关键字筛选该字段 query_duration_ms:执行时间 memory_usage:占用内存 read_rows和read_bytes :读取行数和大小 result_rows和result_bytes :结果行数和 大小 以上信息可以简单对比SQL执行效果 全球敏捷运维峰会 广州站0 码力 | 15 页 | 1.33 MB | 1 年前32. ClickHouse MergeTree原理解析-朱凯
如果单个批次数据大小恰好在64K与1M之间,则 直接生成下一个压缩数据块。 l 单个批次数据 size > 1M 如果单个批次数据直接超过1M,则首先按照1M 大小截断并生成下一个压缩数据块。剩余数据继续依 照上述规则执行。此时,会出现一个批次数据生成多 个压缩数据块的情况。 每个压缩数据块的体积,按照其压缩前的数据字节大小,都被严格的控制在64K~1M之间,其上下限分 别由min_compress_block_s0 码力 | 35 页 | 13.25 MB | 1 年前3
共 4 条
- 1