- 快召唤伙伴们来围观吧
- 微博 QQ QQ空间 贴吧
- 视频嵌入链接 文档嵌入链接
- 复制
- 微信扫一扫分享
- 已成功复制到剪贴板
基于Amoro构建湖仓一体解决方案-马进
马进-网易数帆技术专家,Amoro Maintainer
分享介绍:
当前Iceberg、Hudi、Delta引领的表格式方案为湖仓一体的愿景带来了令人瞩目的想象力和可能性,然而多年过去,大量的实践证明一个可落地的湖仓一体需要更多的能力,来应对数据集成、数据优化、流批一体以及各种管理需求,Amoro是基于开源数据湖表格式的湖仓管理系统,其研发目标是向上和向下补齐数据湖表格式在落地中的不足,给平台和用户带来开箱即用的湖仓体验,为了实现这个愿景,Amoro已开源一年,预计年底发起基金会捐赠,本次分享将带你深入了解这个项目和社区。
展开查看详情
1 .基于 Amoro 构建湖仓一体解决方案 马进 – 网易数帆技术专家,主管 1
2 .开源的定位立起来了 Outline • Amoro 眼中的湖仓一体 • Amoro 是什么,怎么解决问题 • 社区与 Roadmap 2
3 .传统数据湖架构 • 成本高昂 • 数据冗余 • 系统运维开销 • 任务开发 • 数据质量差 • 数据延迟高 • 口径不统一 3
4 .湖仓一体愿景 4
5 .流批割裂的现状 近 N 天数据 数据集市 数据源 清洗/打宽/聚合 Kudu HBASE Flink 分钟/秒级 spark / Trino CDC LOG Flink spark / Trino 清洗/打宽/聚合 全部数据 spark 小时/天级 Hive Hive Hive Hive spark spark Hive Hive Hive Hive 5
6 .开放的数据湖表格式 • Aimed for structured data ACID Time travel • Operation transactional MVCC Update/delete rollback • SQL extensions Merge into • Incremental/stream processing 6
7 . 能不能搞基于开放数据湖架构,构建传统数仓的开箱即用的体验? 数据面 SQL / UDF ? 控制面 DDL / DSL 7
8 .Amoro is a Lakehouse management system built on open data lake formats 8
9 .Amoro catalog service AMS external catalog1 HMS1 跨引擎 external catalog2 HMS2 跨 IDC Thrift / REST Catalog API 跨云 external catalog3 GLUE 跨业务 internal catalog4 sysdb internal catalog5 9
10 .Amoro catalog service 10
11 .Optimizing scheduler 开箱即用 业务无感 持续进行 资源共享/隔离 11
12 .Minor optimizing 资源消耗少 调度频繁(min) 消除 eq-deletes 对写放大友好 12
13 .Major/full optimizing 资源消耗大 调度不太频繁 消除 deletes 对读放大友好 13
14 .Amoro on Iceberg self-optimizing metrics • Catalog service • Maintenance executors • Metrics, Tools, Dashboard • Continuous self-optimizing 14
15 .Amoro on Iceberg self-optimizing metrics • Catalog service • Maintenance executors • Metrics, Tools, Dashboard • Continuous self-optimizing 15
16 .CH-Benchmark Benchmark guide:https://amoro.netease.com/benchmark-guide/ 测试未开启 upsert 16
17 .Mixed format Iceberg 使用痛点 • Upsert 模式不高效 • Eq-deletes 性能差 • 流批写入冲突 Mixed-Iceberg 优化 • BaseStore 无 eq-deletes • 流批冲突解决 • Auto-bucket file index • Hive 格式兼容 17
18 .Mixed format Iceberg 使用痛点 • Upsert 模式不高效 • Eq-deletes 性能差 • 流批写入冲突 Mixed-Iceberg 优化 • BaseStore 无 eq-deletes • 流批冲突解决 • Auto-bucket file index • Hive 格式兼容 18
19 .Auto-bucket File Index 0 1 Snphot id : 1000 Key:11010011 change node:11 12M 0 1 0 1 0 1 0 1 。。。。。。 000 001 011 111 94M 108M 96M 82M base node:011 base node :111 change node base node change file base file 19
20 .Mixed format on Trino performance Benchmark guide:https://amoro.netease.com/benchmark-guide/ 测试开启 upsert 20
21 .开源的定位立起来了 社区用户 场景与诉求 • 流批一体基础设施 • CDC 入湖,自优化 • 开箱即用的工具 • 云原生数仓 • 增量计算… 21
22 .开源的定位立起来了 Roadmap • 架构优化:元数据服务与数据相关的服务解耦 • 完善 Apache Paimon (incubating) 集成 • 自优化计算资源自动伸缩 • 标准化的 DSL 和 CLI 工具 • 更多可插拔的能力 • 扩展 Offline 优化任务 • 更多 K8S 上的云原生实践 22
23 .23