- 快召唤伙伴们来围观吧
- 微博 QQ QQ空间 贴吧
- 视频嵌入链接 文档嵌入链接
- 复制
- 微信扫一扫分享
- 已成功复制到剪贴板
3.吴酋珉-跨数据源的OLAP分析探索
展开查看详情
1 .2021.6
2 . 目录 Ø 业务的需求和痛点 Ø 引入openLookeng的原因 Ø 应用场景 Ø 遇到的问题 2
3 .哲学三问 Ø 我们是谁? Ø 我们从哪里来?(工作背景) Ø 我们要去哪里?(愿景及目标) 3
4 . OLAP分析中关于跨源场景的痛点 1. 数据管理系统形态多样,如关系型数据库、NoSQL数据库,文档数据库、Key-value数据库、对象存储系统等, 且大都有自成体系的一套SQL方言; 2. 为了对不同数据源进行联合查询,需要使用不同的客户端去连接不同的数据源,整个分析过程架构复杂,分析 效率低下; 3. 传统数据仓库通过ETL流程,将加工后的数据集中保存在专题数据仓库中,供数据分析师或用户使用。但随着数 据规模的增长,ETL流程资源消耗大且耗时的问题凸显,且用户需要接受T+1的数据分析模式; 4
5 .相关业务需求 • 面向亿级用户产生的PB级数据 跨源 • 数据分布在不同的数据产品,如MySQL、MongoDB、ES、对象存储 分析 等,需要进行跨源查询分析 数据 融合 • 在全局基础数据模型上,添加个性化配置数据,再进行融合分析 数据 • 业务用户做数据SQL探索分析时,需要将两个数据源的表关联 探索 • 期望直接在SQL工具中操作完成查询分析 5
6 .构想 Ø 我们希望走一条变数据搬运为数据连接的路:连接跨数据源跨AZ的数据,统一SQL入口,提供高性能的交互式 查询能力,提供对多源异构数据进行融合分析能力 JDBC SQL ODBC Rest API openLookeng Apache Big Data RDBMS NoSQL 6
7 .对比Presto(Trino)的优势 • Coordinator高可用 • 跨DC的Connector分析能力 • 虚拟数据集市 • 性能增强(启发式索引) • 动态过滤增强 7
8 .TPCDS测试对比 tpcds-1TB tpcds-3TB tpcds-10TB openlk相对于trino性能提升 ↑ 3% ↑ 14% ↑ 28% 8
9 . 应用场景:统一SQL入口,提升开发效率与分析性能 Ø 痛点:多个数据源,需要分别开发对应任务脚本,开发难度大;跨源分析任务流水线长,效率过低,难以自动化开展 Ø 收益:统一SQL ,提升开发效率;提升跨源异构数据源融合分析性能(ms级分析) 数据分析系统 数据分析系统 ANSI SQL 跨源聚合分 Driver 析程序 openLooKeng ANSI SQL统一接口 Hive JDBC HBase ES Client 高性能MPP分析引擎 HQL Client 数据源A 数据源B 数据源C 数据源A 数据源B 数据源C HIVE HBase ES HIVE HBase ES 9
10 . 应用场景:统一SQL入口,减少数据冗余 Ø 需求:对查询性能有较高要求,同时避免数据重复搬迁,减少复杂的ETL过程 Ø 痛点:HIVE SQL兼容性和交互式分析性能无法满足业务系统的要求,导致繁琐的ETL,数据重复拷贝多份 业务系统 业务系统 ANSI SQL 2003 Hive SQL ANSI SQL openLookeng 数据源 Hive ETL MPPDB 数据源 Hive 2 copies 1 copy openLooKeng使用同一份数据,减少ETL,提升数据存储和分析效率 10
11 . 应用场景:跨域分析探索 Ø 需求:跨数据中心的数据访问需求 Ø 收益:可实现跨地域数据分析性能从天级缩短到分钟级 11
12 .遇到的问题 数据分析系统(WEB门户) 应用环境 BI 应用 数据集(旧) Excel数据导入 openLookeng环境 openLookeng 数据源环境 MPPDB Hive Kylin ElasticSearch Clickhouse 新旧方案性能提升不明显 12
13 .改进的思路 统一OLAP引擎 openLookeng 宽表同步 Clickhouse Kylin Cube构建 MPPDB Hadoop 13
14 . 其他实践经验:对数据源的保护措施 Ø 对数据源的影响主要是通过两方面来控制: – 源端:对源端来讲处理的就是SQL语句,依靠源端本身的机制,如对慢SQL的监控及自愈处理; – Connector节点:对不同品种数据源的Connector的策略是不同的 • 对关系型数据库的join操作是由openlookeng来处理,Where子语句中的过滤操作会下推,以减少传输的数据量; • 对Hive则是只读取metastore中的元数据,然后直接对接HDFS的数据,所有计算都由openlookeng来处理,提升处理效率; • 对MPPDB则是通过直接访问计算节点获取数据,避免对管理/控制节点产生压力; • … Ø 建立黑白名单机制,避免Connector连接到重要业务系统的数据库做OLAP分析操作 14
15 .谢 谢!