导读:随着网易游戏品类及产品的快速发展,游戏数据分析场景面临着越来越多的挑战,为了保证系统性能和 SLA,要求引入新的组件来解决特定业务场景问题。为此,网易游戏引入 Apache Doris 构建了全新的湖仓一体架构。经过不断地扩张,目前已发展至十余集群、为内部上百个项目提供了稳定可靠的数据服务、日均查询量数百万次,整体查询性能得到 10-20 倍提升。
内容共建:胡彪,网易游戏高级大数据开发工程师 & SelectDB 内容团队
网易游戏数据与平台服务部旨在通过数据科技为网易旗下众多游戏提供运营及决策支持,是推动游戏商业成功、品质提升以及渠道优化的重要支撑。近年来,随着网易游戏品类及产品的快速增加,数据规模呈爆炸性增长,每日新增数据达百 TB 级别,不仅需要对玩家基本行为指标(活跃度、付费情况、用户新增等)进行分析,还需深入游戏内部复杂数据,对譬如游戏行为、游戏性能等详细信息进行分析。面对如此大规模的数据增长,如何高效实时的提供数据支持成为必须面对的一大挑战。
为了满足各大业务场景对实时分析时效性的要求,同时保证数据快速写入和极速查询,网易游戏数据与平台服务部亟需一个合适的 OLAP 引擎补充原有的离线数仓架构体系。经过大量的产品调研,Apache Doris 与网易游戏技术中心的整体要求高度契合。因此在 2021 年引入了 Apache Doris,并经过不断地发展,目前已发展至十余集群,为内部上百个项目提供稳定可靠的服务。
本文将分享网易游戏在选型数据仓库架构升级过程中的思考以及基于 Apache Doris 构建湖仓一体全新架构的解决方案,并分享 Apache Doris 在关键业务场景中的落地实践。此外,本文也将分享网易游戏在 Apache Doris 集群运维上的建设及管理经验,以供读者思考或借鉴。
早期架构及挑战

早期数据架构如上图所示,数据主要来源于业务数据库、游戏日志及接口数据,通过实时与离线两条链路对数据进行加工。在查询入口层面,我们自研了统一查询引擎 SmartSQL,可基于 RBO、CBO 和 HBO 实现对 Trino、Spark 和 Hive 的智能查询路由。如果用户想要进一步加速查询,数据将通过 ETL 计算成结果数据写入至 HBase 中供点查访问。此外,日志数据还将额外写入一份至 Elasticsearch 中,为日志分析场景提供数据支持。
然而,这一架构在使用过程中也暴露出了许多问题:
- 运维成本高:涉及组件较多,包括 Apache Hive、Spark、Trino、HBase、Elasticsearch 等,运维复杂度相对较高,需要投入较多的人力。
- 研发成本高:过多的组件也带来较高的研发成本。面对新增的需求,不仅要开发 Spark、Trino 作业,也要开发 HBase 作业,这要求分析师理解并学习不同组件的使用方法及数据模型,研发成本及难度较高、开发流程长。
- 数据时效性差:该架构数据处理链路长,需要经过多次流转,时效性和查询效率均无法满足业务需求。
为了应对早期架构的局限性和挑战,我们在选择新的 OLAP 解决方案时,重点考虑了以下几个核心需求:
- 具备简洁的架构设计,能够满足多种业务场景的同时降低系统组件的复杂度,进而降低运维成本、提高系统的稳定性。
- 提供统一易用的能力,可由单一组件替代之前架构中的多个组件,降低用户的学习和使用成本,提高研发效率。
- 具备实时高效的数据处理能力,能够支持实时数据的高并发写入和亚秒级查询响应,满足业务对高时效性的要求。同时希望新引擎符合实时数仓及湖仓一体发展趋势。
基于以上需求,经过深入评估,我们最终选择了 Apache Doris 作为 OLAP 解决方案,以下是具体的选型依据:

基于 Apache Doris 构建全新的湖仓一体架构

随着 Apache Doris 湖仓一体的能力日趋成熟,我们基于 Apache Doris 构建了全新的湖仓一体架构,并针对不同应用场景设计了不同的数据解决方案:
- 数仓分层存储: 将数据实时写入 Apache Doris 中,所有热数据的查询均在 Apache Doris 数据仓库中进行,根据 TTL 策略将热数据转冷至数据湖中;
- 数据湖查询加速: 将 ODS 层数据写入数据湖中,DWD、DWS、ADS 层则存储在 Apache Doris 中。上层数据应用在执行查询时,对于高 QPS 和低延迟要求的 SQL 直接走 Doris 内表,明细数据则通过 Apache Doris 提供的 Hive Catalog 以及 Iceberg Catalog 查询湖中数据,同时还可通过外表物化视图将外部数据经过物化视图写入内表。
全新的湖仓一体架构充分结合了仓和湖的能力,实现存储和查询的统一,并基于 Apache Doris 物化视图等能力可以进一步简化数据建模加工、实现数据湖查询加速等能力。
Apache Doris 在网易游戏质量保障中心场景下的应用
QData 是网易游戏质量保障中心下属的大数据团队,团队职责是从质量角度出发,针对游戏产品生命周期中的支付、奖励、性能、登录等主题,为游戏提供实时监控、离线分析、报表等服务,以提升游戏性能、优化设备表现。

最低0.47元/天 解锁文章
1428

被折叠的 条评论
为什么被折叠?



