2. Clickhouse玩转每天千亿数据-趣头条
64G对于一些大表(每天600亿+)的处理,很容易报错,虽然有基于磁盘解决方案,但是会影响速度 clickhouse的数据目录还不支持多个数据盘,单块盘的大小限制太大 cpu需要根据实际情况而定 解决: 1:机器的内存推荐128G+ 2:采用软连接的方式,把不同的表分布到不同的盘上面,这样一台机器可以挂载更多的盘 最新版本的”冷热数据分离”特性,曲线救国? 我们遇到的问题 order by (timestamp, eventType) 我们遇到的问题 Too many parts(304). Merges are processing significantly slower than inserts. 分析: 1:直接落盘,异步merge - background_pool_size 2:一个Insert Request,涉及N个分区的数据,在磁盘上就会生成N个数据目录,merge跟不上 3:一个目录,一个zxid 查询过程中clickhouse-server进程挂掉 分析: clickhouse裸奔时max_memory_usage_for_all_queries默认值为0,即不限制clickhouse内存使用 解决: clickhouse安装完成以后,在users.xml文件中配置一下max_memory_usage_for_all_queries,控制 clickhouse-server最大占用内存,避免被OS kill 我们遇到的问题0 码力 | 14 页 | 1.10 MB | 1 年前36. ClickHouse在众安的实践
CPU: • Intel(R) Xeon(R) CPU E5-2682 v4 @ 2.50GH • 12 cores 24 processors • 内存: 96GB • 硬盘: 1TB 高效云盘,最大IO吞吐量 140MBps 以事业部、入库时间作双分区导入数据 遇到的问题 导入效率: • 原有导入数据方式在百亿级数据下会报Too many partitions for single 用到六块硬盘的io:6*140=840mb/s • io吞吐量加倍时,对于冷数据的处理速度是之前的~180% 28 ClickHouse 百亿数据性能测试与优化 • 硬盘存储升级 • 高效云盘 --> SSD + RAID0 • 140MBps --> ~600MBps, ~4x • 升级后 • ~250s --> ~69s,~3.62x l 数据加热后 ~69s -- > 18s0 码力 | 28 页 | 4.00 MB | 1 年前3ClickHouse在B站海量数据场景的落地实践
Ø 修改表元数据 Ø 表元数据管理 v Yuuni: Ø 屏蔽集群信息 Ø 原⽣JDBC,HTTP接⼜ Ø 读写分离 Ø 动态查询缓存 Ø 流量控制 v 监控管理平台: Ø 统计⼤盘 Ø 回归测试 Ø 接⼊评估 Ø 数据迁移 Ø 数据重平衡 v 交互式分析查询:Superset提供即时查询能⼒ v 离线写⼊服务 (Rider) v 实时写⼊服务 (BSQL/Saber)0 码力 | 26 页 | 2.15 MB | 1 年前32. ClickHouse MergeTree原理解析-朱凯
如果不使用分区键,既不使用PARTITION BY声 明任何分区表达式,则分区ID默认取名为all,所 有的数据都会被写入到这个all分区。 l 使用整型 如果分区键取值属于整型(兼容UInt64,包括 有符号整型和无符号整型),且无法转换为日期类 型YYYYMMDD格式,则直接按照该整型的字符形式 输出作为分区ID的取值。 l 使用日期类型 如果分区键取值属于日期类型,或者是能够转 换为YYYYMMDD日期格式的整型,则使用按照0 码力 | 35 页 | 13.25 MB | 1 年前32. 腾讯 clickhouse实践 _2019丁晓坤&熊峰
Replica1Replica1 Shard01 Shard02 Shard03 Load Balancing 一切以用户价值为依归 6 部署与监控管理 1 线性平滑扩容: 扩容: 1.安装新部署新的shard分片机器 2.新shard上创建表结构 3.批量修改当前集群的配置文件增加新的分片 4.名字服务添加节点 一切以用户价值为依归 7 部署与监控管理 1 大批量,少批次 WriteModel0 码力 | 26 页 | 3.58 MB | 1 年前3
共 5 条
- 1