蔡岳毅-基于ClickHouse+StarRocks构建支撑千亿级数据量的高可用查询引擎
全球敏捷运维峰会 广州站 基于ClickHouse+StarRocks 构建支撑千亿级数据量的高可用查询引擎 演讲人:蔡岳毅 全球敏捷运维峰会 广州站 1. 为什么选择ClickHouse/StarRocks; 2. ClickHouse/StarRocks的高可用架构; 3. 如何合理的应用ClickHouse的优点,StarRocks 如何来补充ClickHouse 的短板; 的短板; 4. ClickHouse的调优,运维介绍; 5. 应用总结; 全球敏捷运维峰会 广州站 根据实际业务场景需要来选择 1. 不固定的查询条件,不固定的汇总条件; 2. 数据量日益增量,每天要更新的数据量也不断增大; 3. 业务场景不断增多,涉及面越来越广; 4. 需要保证高可用并秒出; 5. 从Sql,Es, CrateDB, Kylin,Ingite,MongoDB,Hbase 相关配置文件; 全球敏捷运维峰会 广州站 StarRocks的特点 优点: 1. 支持标准的SQL语法,兼容MySql协议; 2. MPP架构,扩缩容非常简单方便; 3. 支持高并发查询; 4. 跨机房部署,实现最低成本的DR 缺点: 1. 不支持大规模的批处理; 2. 支持insert into,但最理想的是消费Kafka; 全球敏捷运维峰会 广州站 ClickH0 码力 | 15 页 | 1.33 MB | 1 年前36. ClickHouse在众安的实践
集智平台可视化交互分析 数据加工的链路与数据价值发现 竞争优势 分析成熟度 洞察与应对 预测与行动 源数据 数据清洗 标准报表 OLAP系统 商务智能(BI) 机器学习建模 人工智能优化 发生了什么? 为什么发生? 什么会发生? 什么是最佳决策? 分析性数据仓库 数据洞察与可视化 数据治理 预测分析与机器学习 CHAPTER 众安集智平台与clickhouse 02 支持算法模型结果的可重现、可审计 • 缓解AI/机器学习带来的潜在伦理与法律担忧 全生命周期管理 追溯与可重现 洞察平台架构 Why Clickhouse? Clickhosue 性能 高效的数据导入和查询性能 开源 低成本,免费 压缩比 高度的数据压缩比,存储成本更小 面向列 真正的面向列存储, 支持高维度表 易观开源OLAP引擎测评报告 洞察数据模型+Clickhouse 使用效果 CHAPTER 我们希望对保单、用户数据进行灵活分析,根据用户标签筛选出符合 要求的客户进行精准营销。 原始保单数据百亿+,用户数据数亿,如果用户标签几百个,数据存 储和查询以及分析的压力就会很大,原有系统使用es来保存用户标签 数据。 保单表 用户表 用户行为表 ODPS ES 用户标签表 痛点 • 数据查询慢:每个查询需要5~10分钟; • 数据更新慢:更新数据可能需要数天时间; • 不灵活:用户有新标签需求时,需要提需求给标签开发人员排期开发0 码力 | 28 页 | 4.00 MB | 1 年前3ClickHouse在B站海量数据场景的落地实践
Cluster-n 。。。 ClickHouse Yuuni 定制开发的 ClickHouse-JDBC 与ClickHouse兼容的 HTTP 接口 请求管理/流量控制 查询缓存 查询分发器 查询处理器 ClickHouse 监控管理平台 元数据管理 库表管理 权限管理 埋点分析 报表平台 HDFS/Hive Kafka/Databus 离线接入 (Rider/Spark/WaterDrop) 表元数据管理 v Yuuni: Ø 屏蔽集群信息 Ø 原⽣JDBC,HTTP接⼜ Ø 读写分离 Ø 动态查询缓存 Ø 流量控制 v 监控管理平台: Ø 统计⼤盘 Ø 回归测试 Ø 接⼊评估 Ø 数据迁移 Ø 数据重平衡 v 交互式分析查询:Superset提供即时查询能⼒ v 离线写⼊服务 (Rider) v 实时写⼊服务 (BSQL/Saber) ClickHouse Berserker 数据源管理 交互式 分析查询 Yuuni服务 用户 内核 Map隐式列 v 原⽣Map使⽤Array of Tuple实现 v 原⽣Map查询时需读取⼤量⽆效数据 Map隐式列 v Map隐式列将每个Key存储为独⽴列 v Map隐式列查询时只读取需要的隐式列 Bulkload v 原⽣写⼊⽅式消耗ClickHouse Server资源,影响查询性能 v 实时写⼊任务长期占⽤资源,故障恢复的时间和运维成本较⾼0 码力 | 26 页 | 2.15 MB | 1 年前34. ClickHouse在苏宁用户画像场景的实践
ClickHouse集成Bitmap 用户画像场景实践 2 选择ClickHouse的原因 1. 速度快 2. 特性发布快 3. 软件质量高 4. 物化视图 5. 高基数查询 6. 精确去重计数(count distinct) 3 精确去重计数性能测试 4亿多的数据集上,去重计算出6千万整形数值, 非精确去重函数:uniq、uniqHLL12、uniqCombined ClickHouse在苏宁使用场景 OLAP平台存储引擎 -- 存储时序数据、cube加速数据,应用亍高基数查询、精确去重场景。 运维监控 -- 实时聚合分析监控数据,主要使用物化视图技术。 用户画像场景 -- 标签数据的存储、用户画像查询引擎。 7 Contents 苏宁如何使用ClickHouse ClickHouse集成Bitmap 但是如果使用上述的数据结构存储单独一个较大数值的数字id,会造成空间上的浪费,例如 仅存储40亿一个数值也需要477m的空间。也就是说稀疏的Bitmap和稠密的占用空间相 同。通常会使用一种bitmap压缩算法迚行优化。 RoaringBitmap是一种已被业界广泛使用的高效的bitmap压缩算法,使用者包括Spark、 Hive、ElasticSearch、Kylin、Druid、InfluxDB等,0 码力 | 32 页 | 1.47 MB | 1 年前32. ClickHouse MergeTree原理解析-朱凯
依照索引粒度生成索引,紧凑存储,惜字如金。 PRIMARY KEY ID 索引的查询过程 假如现在有一份测试数据,共192行记录。其中,主键ID为String类型, ID的取值从A000、A001、A002,按顺序增长,直至A192为止。 MergeTree的索引粒度index_granularity = 3。 索引的查询过程 MergeTree会将此数据片段划分成192/3=64个小的MarkRange,两个相邻 Range,两个相邻 MarkRange相距的步长为1。其中, 所有MarkRange(整个数据片段)的 最大数值区间为[A000 , +inf)。 索引的查询过程 整个索引查询的逻辑,可以大致分为3个步骤: 1. 生成查询条件区间 WHERE ID = 'A003' ['A003', 'A003'] WHERE ID > 'A000' ('A000', +inf) WHERE ID ID < 'A188' (-inf, 'A188') WHERE ID LIKE 'A006%' ['A006', 'A007') 2. 递归交集判断 3. 合并MarkRange区间 索引的查询过程 二级索引 跳数索引 目前,MergeTree共支持4种跳数索引,分别是minmax、set和ngrambf_v1和tokenbf_v1。 数据存储 按列存储,精心编排,错落有致 压缩数0 码力 | 35 页 | 13.25 MB | 1 年前32. Clickhouse玩转每天千亿数据-趣头条
3:运维需要简单 4:计算要快,在一个周期内,要完成所有的指标的计算 集群现状 100+台32核128G 部分复杂累时查询30S内完成 集群现状 我们遇到的问题 关于机器的配置 早期集群机器配置16核64G 一块1.7T本地SSD 问题: 1:内存限制,对于一些大的查询会出现内存不够问题 2:存储限制,随着表越来多,磁盘报警不断 3:cpu限制 64G对于一些大表(每天600亿+)的处理 3:一个目录,一个zxid,zookeeper集群的压力大,插入速度严重变慢 解决: 1:增大background_pool_size治标不治本 2:设置分区的时候需要思考,数据的特性需要了解 我们遇到的问题 查询过程中clickhouse-server进程挂掉 分析: clickhouse裸奔时max_memory_usage_for_all_queries默认值为0,即不限制clickhouse内存使用 GiB (attempt to allocate chunk of 301989888 bytes), maximum: 9.31 GiB 分析: 1:max_memory_usage指定单个SQL查询在该机器上面最大内存使用量 2:除了些简单的SQL,空间复杂度是O(1) 如: select count(1) from table where column=value select column10 码力 | 14 页 | 1.10 MB | 1 年前32. 腾讯 clickhouse实践 _2019丁晓坤&熊峰
20 业务应用实践 iData 2 iData画像服务需要升级 Ø扩展性差 数据导入后结果不支持修改/追加 Ø数据类型有限 数据类型只能支持数字类型 Ø数据量有限 数据量达到10亿级以上查询效率有所降低 Ø单表计算 不能进行多表关联计算 一切以用户价值为依归 21 业务应用实践 iData 2 为什么选择ClickHouse • SQL • OLAP • 超高性能 • 业务应用实践 iData 2 如何使用ClickHouse ClickHouse集群 TGMARS DATA 消息中间件 RDBMS(MYSQL) 数据仓库(TDW) 画像服务 BI服务 查询服务 ETL工具 一切以用户价值为依归 25 业务应用实践 iData 2 • 支持更多的机器学习算法 • 支持explain 查看整个sql 执行计划 • 集群管理 一切以用户价值为依归0 码力 | 26 页 | 3.58 MB | 1 年前33. 数仓ClickHouse多维分析应用实践-朱元
clickhouse数仓应用实践 演讲人:朱元 日期: 2019-10-20 所遇问题 目录 CONTENTS 现状背景 应用实践 01 数据链路长 现状 即席查询性能差 数据压缩率低 需求响应慢 02 数据架构 数据同步ck 01 1,基于公司对数据要求为T+1 2. 基于现有开发人员水平及成本 因此采用可视化同步工具kettle. 先将oracle数据平台维0 码力 | 14 页 | 3.03 MB | 1 年前38. Continue to use ClickHouse as TSDB
choose it 不断收集CPU、 Memory等系统指标预 测系统未来趋势 不断收集市场变化信 息预测股价涨跌 不断的汇总日成交量从 而制定商业规划 不断收集温度,坐标,方向 ,速度等指标,优化路线和 驾驶方式 ► 上述业务数据特点: ► (1) 数据多 ► (2) 旧数据趋于不变 ► (3) 新数据更有价值 ► (4) 数据总是随时间变化而不断变化 Why we choose0 码力 | 42 页 | 911.10 KB | 1 年前3
共 9 条
- 1