2. 腾讯 clickhouse实践 _2019丁晓坤&熊峰一切以用户价值为依归 11 部署与监控管理 1 服务监控-扫描详情: 一切以用户价值为依归 12 部署与监控管理 1 服务监控-响应耗时: 一切以用户价值为依归 13 部署与监控管理 1 立体监控模型: 监控分层 监控项 敏感度 紧急度 应用层 业务指标,数据异常 低 高 服务层 错误日志 中 中 请求指标 扫描详情 响应耗时 物理层 磁盘IO, 持续负载,流量 高 低 Executor-3 一切以用户价值为依归 Data Extract Data Representation 20 业务应用实践 iData 2 iData画像服务需要升级 Ø扩展性差 数据导入后结果不支持修改/追加 Ø数据类型有限 数据类型只能支持数字类型 Ø数据量有限 数据量达到10亿级以上查询效率有所降低 Ø单表计算 不能进行多表关联计算 一切以用户价值为依归 21 业务应用实践 数据仓库(TDW) 画像服务 BI服务 查询服务 ETL工具 一切以用户价值为依归 25 业务应用实践 iData 2 • 支持更多的机器学习算法 • 支持explain 查看整个sql 执行计划 • 集群管理 一切以用户价值为依归 Future Thanks 腾讯招聘 腾讯大数据0 码力 | 26 页 | 3.58 MB | 1 年前3
2. Clickhouse玩转每天千亿数据-趣头条) 分析: 对于累时数据,时间索引基本就失效了,由于timestamp”基数”比较高,对于排在第二位eventType索引, 这个时候对数据的过滤就非常有限了,这个时候几乎就要对当天的数据进行全部扫描 解决: 1:调整索引的顺序,推荐索引列的基数不要太高. 我们遇到的问题 Too many parts(304). Merges are processing significantly slower0 码力 | 14 页 | 1.10 MB | 1 年前3
4. ClickHouse在苏宁用户画像场景的实践4亿多的数据集上,去重计算出6千万整形数值, 非精确去重函数:uniq、uniqHLL12、uniqCombined 精确去重函数:uniqExact、groupBitmap 函数 时长(秒) 去重后个数 误差个数 误差率 uniq(id) 1.554 63195280 155973 0.25% uniqHLL12(id) 1.341 63331662 292355 0 注:ClickHouse聚合函数有一些函数后缀可以使用: -State:获取聚合的中间计算结果 -Merge:将中间计算结果迚行合幵计算,返回最终结果 -MergeState:将中间计算结果迚行合幵计算,返回合幵后的中间结果 ClickHouse集成RoaringBitmap Bitmap的运算函数集: 构造Bitmap类型 Bitmap自身戒者之间的位运算 Bitmap不Array双向转换 25 用户画像场景2—人群圈选画像—示例 画像条件 查询SQL 26 用户画像场景3—用户ID清单 输入条件 返回结果 场景描述 场景:在筛选出符合条件的用户数后,导出用户ID明细,这样好给他们发优惠券。 操作:用户指定标签及标签间的逡辑关系,查询出符合标签逡辑的用户ID数据集。 标签逡辑表达式,包含标签、算术运算符、逡辑运算符、括号。 用户ID字段,表示符合标签表达式的用户ID集合。0 码力 | 32 页 | 1.47 MB | 1 年前3
蔡岳毅-基于ClickHouse+StarRocks构建支撑千亿级数据量的高可用查询引擎数据读取通过应用程序做负载平衡; Ø 灵活创建不同的虚拟集群用于适当的场合; Ø 随时调整服务器,新增/缩减服务器; 分布式: k8s的集群式部署 全球敏捷运维峰会 广州站 采用ClickHouse后平台的查询性能 system.query_log表,记录已经 执行的查询记录 query:执行的详细SQL,查询相关记录可以 根据SQL关键字筛选该字段 query_duration_ms:执行时间 read_rows和read_bytes :读取行数和大小 result_rows和result_bytes :结果行数和 大小 以上信息可以简单对比SQL执行效果 全球敏捷运维峰会 广州站 采用ClickHouse后平台的查询性能 全球敏捷运维峰会 广州站 ClickHouse应用小结 • 数据导入之前要评估好分区字段; • 数据导入时根据分区做好Order By; • 左右表join的时候要注意数据量的变化;0 码力 | 15 页 | 1.33 MB | 1 年前3
6. ClickHouse在众安的实践ClickHouse 百亿数据性能测试与优化 • 硬盘存储升级 • 高效云盘 --> SSD + RAID0 • 140MBps --> ~600MBps, ~4x • 升级后 • ~250s --> ~69s,~3.62x l 数据加热后 ~69s -- > 18s ,~3.8x • ToDos • 优化数据导入流程 • 支持多分区,支持指定主键 • 常用字段加热 29 常用分析性能的命令分享0 码力 | 28 页 | 4.00 MB | 1 年前3
2. ClickHouse MergeTree原理解析-朱凯型YYYYMMDD格式,则直接按照该整型的字符形式 输出作为分区ID的取值。 l 使用日期类型 如果分区键取值属于日期类型,或者是能够转 换为YYYYMMDD日期格式的整型,则使用按照 YYYYMMDD日期格式化后的字符形式输出作为分区 ID的取值。 l 使用其它类型 如果分区键取值既不属于整型,也不属于日期 类型,例如String、Float等。则通过128位Hash 算法取其Hash值作为分区ID的取值。 MaxBlockNum取值一样,同等于n。 • Level 合并的层级,可以理解为某个分区被合并过的次数。 Level计数与BlockNum有所不同,它并不是全局累加的。 对于每一个新创建的分区目录而言,其初始值均为0。之 后,以分区为单位,如果相同分区发生合并动作,则在相 应分区内计数累积加1。 分区目录的合并过程 一级索引 稀疏索引 primary.idx文件内的一级索引采用稀疏索引实现 如果把MergeTree比作是一本书,那么稀0 码力 | 35 页 | 13.25 MB | 1 年前3
共 6 条
- 1













