鹰角网络:EMR Serverless Spark 在《明日方舟》游戏业务的应用

简介: 鹰角网络为应对游戏业务高频活动带来的数据潮汐、资源弹性及稳定性需求,采用阿里云 EMR Serverless Spark 替代原有架构。迁移后实现研发效率提升,支持业务快速发展、计算效率提升,增强SLA保障,稳定性提升,降低运维成本,并支撑全球化数据架构部署。

作者:鹰角网络高级大数据研发 茅旭辉


背景介绍

鹰角网络是一家年轻且富有创新的游戏公司,致力于开发充满挑战性和艺术价值的游戏产品。公司目前涵盖了游戏开发、运营和发行的全生命周期业务。随着业务的扩展,鹰角网络从单一爆款游戏发展到多赛道、多平台、全球化的战略布局,在数据业务上进行了全面的优化和升级。


从业务上看,以《明日方舟》为代表的长线运营游戏,具有相对高频的活动周期和丰富多样的活动玩法,反映到数据层面则是数据需求量高、潮汐现象显著,需要高效的开发模式支持和灵活的弹性资源供给。我们的数据支持不仅仅有传统的 BI 报表形式,更是深入集成到游戏玩法和运营层面透出,对于引擎稳定性有强烈诉求。另外,内部面向业务的分析跑数场景,存在基于 Thrift Server 等能力扩展支持的诉求。



为什么选择阿里云 EMR Serverless Spark

原有架构痛点

在业务发展过程中,原有架构逐渐暴露出了如下痛点:

  1. 产品功能上,缺少外部 Catalog 支持和 DolphinScheduler 等流行调度引擎集成支持。
  2. 引擎性能上,社区兼容性相对较低产生稳定性问题,且不支持 Remote Shuffle Service 服务导致性能问题。
  3. 服务保障上,技术支持力度较弱,在用户痛点发掘和产品迭代方面做得不足。



EMR Serverless Spark 优势

我们期待的云原生大数据架构是基于开放生态、资源弹性、可插拔集成理念下的半托管+全托管灵活组合架构,而 EMR Serverless Spark 正是完美匹配这套理念的重要一环。它是一款兼容开源 Spark 的高性能 Lakehouse 产品,为用户提供任务开发、调试、发布、调度和运维等全方位的产品化服务,显著简化了大数据计算的工作流程,使用户能更专注于数据分析和价值提炼,具备如下核心优势:

  • 丰富的功能支持
  • 元数据管理:支持管理 Paimon Catalog,并且支持对接外部 Hive MetaStore 元数据服务。
  • 调度引擎支持:提供了 Airflow、DolphinScheduler 等多种调度引擎无缝集成。
  • 资源管理模型:提供了易于理解的三级资源管理模型(工作空间、队列、会话)和细粒度的队列资源监控。
  • 生态能力:提供了 Spark Thrift Server、Notebook 等多种生态功能,便于业务灵活使用。


  • 优秀的引擎性能
  • Shuffle 性能:内置 Celeborn 服务,解决了大 Shuffle 场景下的磁盘限制问题。
  • SQL 执行引擎:内置的高性能 Fusion 引擎,为计算加速提供支持。
  • 稳定性:100%保持社区兼容性,并积极修复潜在 Bug。
  • 版本支持:持续追踪 Spark 社区版本,提供多版本迭代支持和完整的引擎特性使用。


  • 完善的服务保障
  • 问题响应:提供了专业的技术咨询和解决方案支持,增强合作信任度。
  • 产品规划:提供了清晰的产品迭代规划,持续解决用户痛点场景。



技术方案设计

image.png

数据采集

在数据采集和管理方面,我们采用了自研的埋点工具来获取和管理日志数据,并利用 Flink CDC 技术同步数据库表。这确保了数据的实时性和准确性,为后续的数据分析提供了可靠的基础。


离线调度

在离线调度方面,我们实施了两种策略一种引擎,一是使用 Airflow 服务支持有代码基础的研发用户,同时为普通数据分析师和数仓研发提供了 DolphinScheduler 服务,这两种调度系统都实现了对 EMR Serverless Spark 的对接,满足平台服务的灵活性。

我们选择了 Serverless Spark 作为其离线计算引擎,相比于之前的架构,Serverless Spark 显著减少了运维成本,并提高了系统的稳定性和可靠性。其 Celeborn 能力解决了大 Shuffle 任务操作中的磁盘限制问题,同时任务状态与调度工具实现了强一致性,无需二次确认,进一步优化了数据处理流程。


在线计算

为了支持在线计算和数据应用,我们使用 StarRocks 进行在线计算,高质量的指标数据通过智能 BI 系统实现可视化实时展示,并提供了清晰的业务洞察。同时,数据还被整合到经营分析平台,为其业务发展提供了统一支持。数据也应用于算法团队进行业务探索与数据科学分析。


典型应用场景

DolphinScheduler 集成作业开发

image.png

Serverless Spark 在 DolphinScheduler 中集成了专用的作业类型ALIYUN_SERVERLESS_SPARK,支持 SQL、SQL File、Jar 包等多种作业形式。我们在本地 Git 仓库开发作业,通过 CI 流程部署到 OSS 存储路径下,并使用 SQL File/Jar 作业类型,提交相应的作业文件到 Serverless Spark 执行计算。

image.png


Thrift Server 支持 Ad-Hoc

Serverless Spark 内置了 Thrift Server 服务,支持通过 JDBC 的方式连接 Spark执行 SQL 查询,提供了便捷将 Spark 环境与其他数据分析工具集成的途径。目前Spark Thrift Server 能力在内部主要支持以下两类场景:

  • 以产品运营人员为主的 Ad-Hoc 分析场景,期望通过 Spark 引擎执行 SQL 查询,但希望忽略资源配置等非必要信息,可以直接使用 DolphinScheduler 内置的 SQL 作业类型 + Spark 数据源进行简单查询。同时 Spark Thrift Server 会话支持动态资源配置,可以自适应支持 Ad-Hoc 查询所需资源。
  • 以数仓研发为主的数据结果返回场景,能够拿到 SQL 查询结果并传递给下游作业使用。

image.png


迁移后的收益

通过这一系列技术栈的优化,我们不仅优化了数据管理和分析流程,还有效支持了公司的全球化战略和业务扩展,目前我们已经在海外基于 EMR Serverless Spark 搭建类似数据架构。

EMR Serverless Spark 主要给我们带来了以下收益:

  1. 研发效率提升,支持业务快速发展
    迁移到 EMR Serverless Spark + DolphinScheduler 架构后,使用 Spark SQL 会话功能快速开发验证+DolphinScheduler 生产调度的模式,研发效率显著提升,多次保障了关键活动节点的数据产出支持。


  1. 计算效率提升,增强SLA保障
    在以用户宽表为代表的指标计算场景下,单作业计算用时从30分钟降低到15分钟,计算加速50%;核心 SLA 链路整体产出时间缩短1.5小时,大幅增强了 SLA 保障能力。


  1. 稳定性提升,降低运维压力
    EMR Serverless Spark 的多版本管理能力为用户提供了灵活的选择空间,支持快速升级至最新优化版本,确保用户始终享有最稳定的运行体验。



总结及后续期待

经过了业务实践证明,EMR Serverless Spark 在大数据研发下 Spark 生态领域的经典业务场景具备了足够的优势。对于未来,我们期望它能继续以开放原则发展 Lakehouse 生态能力,例如统一 Catalog 管理等能力,并逐步覆盖更多的边缘场景和探索型场景。



阿里云 EMR Serverless Spark 版是一款面向 Data+AI 的高性能 Lakehouse 产品。它为企业提供了一站式的数据平台服务,包括任务开发、调试、调度和运维等,极大地简化了数据处理和模型训练的全流程。同时,它100%兼容开源 Spark 生态,能够无缝集成到客户现有的数据平台。使用 EMR Serverless Spark,企业可以更专注于数据处理分析和模型训练调优,提高工作效率。


EMR Serverless Spark 交流钉钉群:58570004119

image.png

相关文章
|
2月前
|
机器学习/深度学习 PyTorch TensorFlow
卷积神经网络深度解析:从基础原理到实战应用的完整指南
蒋星熠Jaxonic,深度学习探索者。深耕TensorFlow与PyTorch,分享框架对比、性能优化与实战经验,助力技术进阶。
|
4月前
|
监控 安全 Shell
管道符在渗透测试与网络安全中的全面应用指南
管道符是渗透测试与网络安全中的关键工具,既可用于高效系统管理,也可能被攻击者利用实施命令注入、权限提升、数据外泄等攻击。本文全面解析管道符的基础原理、实战应用与防御策略,涵盖Windows与Linux系统差异、攻击技术示例及检测手段,帮助安全人员掌握其利用方式与防护措施,提升系统安全性。
209 6
|
3月前
|
机器学习/深度学习 人工智能 算法
卷积神经网络深度解析:从基础原理到实战应用的完整指南
蒋星熠Jaxonic带你深入卷积神经网络(CNN)核心技术,从生物启发到数学原理,详解ResNet、注意力机制与模型优化,探索视觉智能的演进之路。
415 11
|
DataWorks 数据挖掘 Serverless
阿里云EMR Serverless StarRocks 内容合集
阿里云 EMR StarRocks 提供存算分离架构,支持实时湖仓分析,适用于多种 OLAP 场景。结合 Paimon 与 Flink,助力企业高效处理海量数据,广泛应用于游戏、教育、生活服务等领域,显著提升数据分析效率与业务响应速度。
300 0
|
4月前
|
数据采集 存储 数据可视化
Python网络爬虫在环境保护中的应用:污染源监测数据抓取与分析
在环保领域,数据是决策基础,但分散在多个平台,获取困难。Python网络爬虫技术灵活高效,可自动化抓取空气质量、水质、污染源等数据,实现多平台整合、实时更新、结构化存储与异常预警。本文详解爬虫实战应用,涵盖技术选型、代码实现、反爬策略与数据分析,助力环保数据高效利用。
292 0
|
4月前
|
安全 Linux
利用Libevent在CentOS 7上打造异步网络应用
总结以上步骤,您可以在CentOS 7系统上,使用Libevent有效地构建和运行异步网络应用。通过采取正确的架构和代码设计策略,能保证网络应用的高效性和稳定性。
153 0
|
6月前
|
人工智能 分布式计算 DataWorks
一体系数据平台的进化:基于阿里云 EMR Serverless Spark 的持续演进
本文介绍了一体系汽配供应链平台如何借助阿里云EMR Serverless Spark实现从传统Hadoop平台向云原生架构的迁移。通过融合高质量零部件供应与创新互联网科技,一体系利用EMR Serverless Spark和DataWorks构建高效数据分析体系,解决大规模数据处理瓶颈。方案涵盖实时数据集成、Lakehouse搭建、数仓分层设计及BI/ML应用支持,显著提升数据处理性能与业务响应速度,降低运维成本,为数字化转型奠定基础。最终实现研发效率提升、运维压力减轻,并推动AI技术深度整合,迈向智能化云原生数据平台。
234 4
|
6月前
|
监控 安全 Linux
AWK在网络安全中的高效应用:从日志分析到威胁狩猎
本文深入探讨AWK在网络安全中的高效应用,涵盖日志分析、威胁狩猎及应急响应等场景。通过实战技巧,助力安全工程师将日志分析效率提升3倍以上,构建轻量级监控方案。文章详解AWK核心语法与网络安全专用技巧,如时间范围分析、多条件过滤和数据脱敏,并提供性能优化与工具集成方案。掌握AWK,让安全工作事半功倍!
215 0
|
6月前
|
人工智能 分布式计算 大数据
大数据≠大样本:基于Spark的特征降维实战(提升10倍训练效率)
本文探讨了大数据场景下降维的核心问题与解决方案,重点分析了“维度灾难”对模型性能的影响及特征冗余的陷阱。通过数学证明与实际案例,揭示高维空间中样本稀疏性问题,并提出基于Spark的分布式降维技术选型与优化策略。文章详细展示了PCA在亿级用户画像中的应用,包括数据准备、核心实现与效果评估,同时深入探讨了协方差矩阵计算与特征值分解的并行优化方法。此外,还介绍了动态维度调整、非线性特征处理及降维与其他AI技术的协同效应,为生产环境提供了最佳实践指南。最终总结出降维的本质与工程实践原则,展望未来发展方向。
339 0