2. 腾讯 clickhouse实践 _2019丁晓坤&熊峰Load Balancing 一切以用户价值为依归 6 部署与监控管理 1 线性平滑扩容: 扩容: 1.安装新部署新的shard分片机器 2.新shard上创建表结构 3.批量修改当前集群的配置文件增加新的分片 4.名字服务添加节点 一切以用户价值为依归 7 部署与监控管理 1 大批量,少批次 WriteModel BatchSize RowLengt h QPM IOUtils 服务器 腾讯游戏 移动客户端 微信 小游戏 WEB 游戏 海外 游戏 TDM-SDK 客户端采集 特性 采集 大数据基础 PaaS平台 游戏 营销活动 Dbbinlog 数据库采集 Game DB 数 据 管 理 + 元 数 据 TDBANK 准实时传输管道 Kafka-Pipeline 实时管道 TDW 数据仓库 采 集 存 储 大数据应用 PaaS平台 iData 2 iData画像服务需要升级 Ø扩展性差 数据导入后结果不支持修改/追加 Ø数据类型有限 数据类型只能支持数字类型 Ø数据量有限 数据量达到10亿级以上查询效率有所降低 Ø单表计算 不能进行多表关联计算 一切以用户价值为依归 21 业务应用实践 iData 2 为什么选择ClickHouse • SQL • OLAP • 超高性能 • 列式存储 • 统计函数0 码力 | 26 页 | 3.58 MB | 1 年前3
2. Clickhouse玩转每天千亿数据-趣头条2:存储限制,随着表越来多,磁盘报警不断 3:cpu限制 64G对于一些大表(每天600亿+)的处理,很容易报错,虽然有基于磁盘解决方案,但是会影响速度 clickhouse的数据目录还不支持多个数据盘,单块盘的大小限制太大 cpu需要根据实际情况而定 解决: 1:机器的内存推荐128G+ 2:采用软连接的方式,把不同的表分布到不同的盘上面,这样一台机器可以挂载更多的盘 最新版本的”冷热数据分离”特性,曲线救国 clickhouse裸奔时max_memory_usage_for_all_queries默认值为0,即不限制clickhouse内存使用 解决: clickhouse安装完成以后,在users.xml文件中配置一下max_memory_usage_for_all_queries,控制 clickhouse-server最大占用内存,避免被OS kill 我们遇到的问题 Memory limit (for uniqCombined / uniqHLL12 4:Join时小表放到右边,“右表广播” ^v^ 我们遇到的问题 zookeeper相关的问题 问题一:zookeeper的snapshot文件太大,follower从leader同步文件时超时 问题二:zookeeper压力太大,clickhouse表处于”read only mode”,插入失败 分析: clickhouse对zookeeper的依赖还是很0 码力 | 14 页 | 1.10 MB | 1 年前3
3. 数仓ClickHouse多维分析应用实践-朱元先将oracle数据平台维度信息以及相关主题清单数据同步至clichouse数据 仓库 Oracle数据平台 • 通过kettle每天 定时导出文件至 本地 Etl服务器 • 通过clickhouse- client将文本导 入ck数据库 clickhouse数据库 数 仓 建 设 01 ck数仓数据模型采用星型模型搭建 02 数 仓 建 设 – 维度表 一般维度表数据量不大. 目前采0 码力 | 14 页 | 3.03 MB | 1 年前3
6. ClickHouse在众安的实践原有导入数据方式在百亿级数据下会报Too many partitions for single INSERT block的问题 • 数据导入慢 原因: • ck-loader-mr方式对大数据量场景支持不够友好 • 单次插入分区过多 解决方法: 使用clickhouse原生insert format csv 配合linux pipline导入 hadoop fs -cat 'hdfs://hadoop-n user --password password --query="INSERT INTO Insight_zhongan.baodan_yonghushuju FORMAT CSV" 效果: 单进程:每分钟2600w条记录,client占用核数=1,server占用核数=1,导入速率=80mb/s 2进程:每分钟4000w条记录,client占用核数=2,server占用核数约2-5,导入速率=140mb/s0 码力 | 28 页 | 4.00 MB | 1 年前3
8. Continue to use ClickHouse as TSDBContinue to use ClickHouse as TSDB 邰翀 青云QingCloud 数据库研发工程师 ► Look back: Why we choose it ► Now: How we do ► Future: What we do Content Why we choose it Why we choose it Why we choose it sum(time_series) to sum(time_series.sum) What we do QingCloud ChronusDB 青云 QingCloud 自研的一 款高性能、具备强大 分析 能力的时序数据库产品 高性能并发读写 • 千万数据点并发实时写入 • 引入辅助索引,加快数据检索 速度 低成本存储 • 列式存储结合高效的编码 • Delta、XOR 等适合时序场景的压缩算法 • 通过 Rollup0 码力 | 42 页 | 911.10 KB | 1 年前3
蔡岳毅-基于ClickHouse+StarRocks构建支撑千亿级数据量的高可用查询引擎依赖稀疏索引,列式存储,cpu/内存的充分利用造就了优秀的计算能力, 并且不用考虑左侧原则; 缺点: 1. 不支持事务,没有真正的update/delete; 2. 不支持高并发,可以根据实际情况修改qps相关配置文件; 全球敏捷运维峰会 广州站 StarRocks的特点 优点: 1. 支持标准的SQL语法,兼容MySql协议; 2. MPP架构,扩缩容非常简单方便; 3. 支持高并发查询; 4 4. 将A_ temp_temp rename成 A_temp; 其他方式: 1. 采用 waterdrop 的方式大幅提升写入速度; 2. 直接读Hdfs文件的方式,但内存波动较大; 全球敏捷运维峰会 广州站 ClickHouse的增量数据同步流程 传统方式: 1. 将最近3个月的数据从Hive通过ETL入到A_temp表;0 码力 | 15 页 | 1.33 MB | 1 年前3
2. ClickHouse MergeTree原理解析-朱凯正是由表引擎,决定了一张 数据表最终的性格,它拥有何种特性、数据以何种形式被存储以及如何被加载。 ClickHouse拥有非常庞大的表引擎体系,截至到目前(19.14.6),共拥有合并树、 内存、文件、接口和其他5大类20多种。 合并树 这众多的表引擎中,又属合并树(MergeTree)表引擎及其家族系列(*MergeTree)最 为强大,在生产环境绝大部分场景中都应该使用此系列的表引擎。 对于每一个新创建的分区目录而言,其初始值均为0。之 后,以分区为单位,如果相同分区发生合并动作,则在相 应分区内计数累积加1。 分区目录的合并过程 一级索引 稀疏索引 primary.idx文件内的一级索引采用稀疏索引实现 如果把MergeTree比作是一本书,那么稀 疏索引就好比是这本书的一级章节目录。 一级章节目录不会具体对照到每个字的位 置,只会记录每个章节的起始页码。 以默认的索引粒度(8192)为例,0 码力 | 35 页 | 13.25 MB | 1 年前3
4. ClickHouse在苏宁用户画像场景的实践27 用户画像场景3—用户ID清单—示例 画像条件 查询SQL 28 用户画像新架构的优势 每个标签的数据可以幵行构建,加快标签数据生产速度。 HDFS文件幵发导入ClickHouse,加快标签数据的就绪速度。 查询请求平均响应时长在2秒以下,复杂查询在10秒内。 支持标签数据实时更新,增加标签、删除标签、修改标签。0 码力 | 32 页 | 1.47 MB | 1 年前3
共 8 条
- 1













