

导读 近年来,湖仓一体化在业界备受瞩目,不论是单点优化还是整体迁移,都取得了显著成果。本文将介绍腾讯游戏数据分析的湖仓一体化实践。(本文整理自 2023 年 7 月 21 日 DataFunCon2023(北京站)(线下)周威老师关于《腾讯游戏数据分析的湖仓一体化实践》的演讲,文章内容均切合于当时时间点)
1. 项目背景
2. 存算分离
3. 数据分层
4. 湖仓一体化
5. 性能优化
6. 效果展示和后续规划
7. 问答环节
分享嘉宾|周威 腾讯游戏 腾讯游戏分析引擎Tech Lead
编辑整理|刘明城
内容校对|李瑶
出品社区|DataFun
01
1. 项目背景
数据平台架构复杂,需要维护两个数据处理流程,数据一致性难以保证。 离线计算会产生大量的中间结果表,造成数据急速膨胀,加大服务器存储压力。 使用结果表展示数据,灵活性比较差,如果需要对数据进行上卷和下钻,则需要单独开发程序,计算新的结果表。

简化架构,合并实时离线两条处理流程,减少组件数量。 我们需要一个更灵活的方案,能够在性能方面提升,并且在资源管理、计算和存储方面具备更弹性的特点,从而降低成本。 使用同一套架构,通过不同的组件和配置支持不同场景的数据分析服务。

2. 平台架构

存算分离
1. 弹性计算节点

2. 隔离与弹性

03
数据分层
1. 数据下沉
实时流+离线数据先导入 BE 本地存储;FE 按照“时间分区”定时生成下沉任务(export 命令),BE 执行数据下沉到数据湖的操作。 实时流数据同时写入 BE 和 Iceberg 数据湖(实现 IcebergTableSink);定期对实时入湖的数据进行 compact,排序并合并来提升访问性能。

2. 统一查询

3. Agg 下推优化

4. 批量数据读取

湖仓一体化
1. DDL 一体化

2. Delete 一体化

3. 统一导入

性能优化
1. 总体视图

2. 数据湖元数据访问优化


效果展示和后续规划
1. 某游戏业务效果展示

2. 后续规划

07


分享嘉宾
INTRODUCTION

周威

腾讯游戏

腾讯游戏分析引擎 Tech Lead

担任腾讯游戏分析引擎团队 Tech Lead,负责游戏数据分析引擎技术研发和规划工作;近期主要从事数据分析引擎的研发以及数仓一体化架构在腾讯游戏数据分析场景下的落地;在开源社区有诸多贡献,StarRocks 开源社区 Committer;同时在存储计算底层技术领域,如 MySQL,Ceph,K8s,Linux Kernel 等领域均有丰富的研发和运营经验。


往期推荐


点个在看你最好看

文章转载自锋哥聊DORIS数仓,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




