发布于: May 25, 2023
逼真的人物设定,精美的主题布局,沉浸式的互动体验,交互式的多元场景…… 一系列虚拟与现实高度契合又相互映射的设定,成就了 “元宇宙” 游戏世界的无穷魅力。
其中,主打 “让梦想照进‘现实’” 的沙盒游戏以其自由度发挥到极致的属性,成为众玩家和游戏公司不断探索的热门领域。GVERSE 开发的 Blockman Go 平台就是有着相当大体量的 UGC(用户生产内容)平台之一。
面对 GVERSE 的海量数据、目标对象琐碎、大体量的数据库迁移需求,亚马逊云科技团队设计了以 Amazon DynamoDB、Amazon Aurora 等服务为核心的迁移方案,并专门设计了多套定制化技术方案,引入专业的项目管理持续跟进,使得所有数据在 7 小时内迁移完成。值得一提的是,Amazon DynamoDB 成功承载 1450 张大中小表艰巨任务,并实现数据库请求毫秒级低延迟响应。目前,GVERSE 使用的亚马逊云科技服务包括:Amazon Aurora、Amazon DynamoDB、Amazon Lambda、Amazon CloudFront、Amazon Elastic Compute Cloud (Amazon EC2)、Amazon Simple Storage Service (Amazon S3) 等。
随着开发门槛的降低,沙盒游戏以其不可比拟的交互性,或许将成为打开 “内容创作 3.0 时代” 的钥匙。与传统的 RPG (角色扮演游戏)、SLG(策略类游戏)游戏不同,沙盒游戏内置的开发工具简单易学,即便是没有编程、建模基础的 “萌新” 也可以轻松成为创作者。这种情况下,玩家成为了内容输出的主力,人人都可成为开发者。
GVERSE 开发的 Blockman Go 平台允许玩家自行开发多个不同类型的游戏供其他玩家游玩,同时也提供丰富的社交互动功能,是一个 UGC 平台。目前市面上的《Roblox》、《Minecraft》等 UGC 平台,均拥有相当大的体量,市场前景优越。与此同时,这类平台也存在一些独有的问题。
GVERSE 技术合伙人及技术总监郑恒国指出,UGC 平台类游戏与常见的网游相比,具有覆盖玩家层面广、数据量大且琐碎等特点,对服务器的配置提出了相当大的考验。再加上游戏往往面向海外发行,同时为多个不同国家与地区的玩家服务,此前 GVERSE 的服务不得不分散部署在合作伙伴的本地 IDC 及多个不同云服务提供商上,体系异常繁复的同时,也带来了额外的管理和运营成本。
随着与第三方合作项目的结束,GVERSE 需在极短时间内将数据回迁、自行管理,同时也希望借此机会彻底解决业务分散的痛点。郑恒国提到,GVERSE 此前就与亚马逊云科技有广泛接触,使用其动态 CDN、网络加速及大数据等服务,过程中亚马逊云科技全球多节点的广泛布局和良好稳定性等特点,都给他留下了深刻的印象,因此,本次数据库迁移选择了继续与亚马逊云科技合作。
“首先,这次迁移是要把原本分散在多个不同 IDC 和云的所有游戏数据毫无遗漏地梳理出来,确保没有遗失;其次是要保证迁移过程中的数据校验,如果有数据错误需要及时恢复,做到数据保全;最后,本次迁移涉及到的产品类别复杂,涵盖 Amazon S3、Amazon Relational Database Service (RDS)、Amazon DynamoDB 等,” 郑恒国表示,“这是一项既重且繁的工作,‘重’是指数据量大,‘繁’体现在要考虑到细节梳理、合规性、版本和活动配置等诸多方面 。”
从数字上看,这一次的迁移涵盖 1450 张大、中、小表格,2TB+ 的 MySQL 数据库以及超过 6 亿对象的 20TB 数据,距离迁移只有 26 天,项目推进的每一天都是 “尖峰时刻”。亚马逊云科技为此专门引入了项目管理团队协助,为 GVERSE 制定了有针对性的迁移方案。
将之前分散的游戏数据统一迁移到亚马逊云科技上之后,我们在游戏版本开发、测试、上线等方面的工作效率提升了30%。
郑恒国
GVERSE INTERNATIONAL PTE. LTD.
技术合伙人及技术总监
由于 Amazon DynamoDB 具有自动伸缩功能,能够可靠地扩展到数百万个并发用户请求,同时确保不超过 10 毫秒的一致低延迟,因此 GVERSE 主要运用 Amazon DynamoDB+ Amazon Lambda 方案来完成迁移工作。
对于 Amazon DynamoDB 的迁移,亚马逊云科技对解决方案做了深入研究,发现 GVERSE 的表格数据量极大且数量繁多,涉及到共计 1450 张大小不同的表,此规模在整个世界范围内都相当罕见。其中,用户表格含有全量用户数据,导入导出时间预估 7 小时,而如果采用传统 “Double-Write” 双写方法,耗时可能长达数个月。此外,由于客户产品的 UGC 属性,每个开启的小游戏都会单独存放在一张表格中,整个平台有 1000 多个小游戏(由游戏玩家创建),但活跃度不一,因此出现了表数量大、小表众多的挑战。更为棘手的是,为了保障用户体验,GVERSE 要求割切当天数小时内完成数据库迁移,这就使迁移任务变得更加艰巨。
面对这项挑战,亚马逊云科技经过多次讨论和项目验证,提出了定制化的最终迁移解决方案:对最大表格采用 CDC 方案(Change Data Capture,变更数据捕捉)进行复制,对于剩余的表格分批次分类别进行迁移,小表先行,再针对不同类别的表格采用 Amazon CLI 命令行分批进行 Amazon DynamoDB S3 export 与 Amazon DynamoDB S3 Import 方式迁移,最终在割切当天完成了这项 “Mission Impossible”(不可能完成的任务)。
GVERSE 基于亚马逊云科技的系统架构示意图
UGC 游戏平台 “玩家自行编写游戏、自行选择游戏游玩” 的特点,决定了平台上存在大量游戏和离散的玩家行为信息,导致部分数据桶存有海量 40K 以下小文件,此前使用的 CRR(Cross-Region Replication,跨区域复制)方法不再具有效率优势。亚马逊云科技选择用 Amazon Data Transfer Hub (DTH) 解决方案对这部分数据进行迁移,它具有多数据来源支持、无服务器结构(无前期成本、按用量付费)、直观易用等外部特征,尤其适合从多个不同 IDC 或云端,传输大量不同类型、不同大小的文件到亚马逊云科技原生服务。DTH 的启用让超过 6 亿个碎文件实现轻松迁移,工期从 CRR 方法 1 个月工期缩短至 3 天,完美匹配了客户需求。
为了让玩家无风险地以 UGC 方式制作和生成游戏,迁移完成后亚马逊云科技还为 GVERSE 部署了 Amazon Guarduty RDS Protection, Amazon Inspector, Amazon Security Hub 和 Amazon WAF 等安全产品,从基础设施保护等方面确保用户数据安全。此举有效消除了潜在风险,让客户对所有业务运行在亚马逊云科技上充满信心。
GVERSE 基于亚马逊云科技的安全架构示意图
郑恒国表示,此前 Blockman Go 的数据服务部署在不同平台,新增游戏内容、版本测试以及配置管理等都需要开发两套系统来进行适配。游戏数据库统一迁移到亚马逊云科技之后,只需一套方案便可解决。另外,由于不再跨平台传输数据,在免除传输风险的同时也显著优化了数据同步成本。如果公司是采取传统的 IDC 服务,运维团队可能需要 5~10 人,如今只需 1 人即可。郑恒国指出,整体来看,应用亚马逊云科技服务之后,工作效率有大约 20~30% 提升。
郑恒国也对迁移过程中亚马逊云科技团队的专业能力和服务精神做出了高度评价。鉴于项目管理流程方法的特殊性,亚马逊云科技专门为 GVERSE 发起了由客户团队与 Amazon DynamoDB 专家组成的项目专责团队,为项目提供管理协助以降低实施风险。对于每一个专属定制化处理方案,具体实施前亚马逊云科技专家团队都会驻场留守,进行现场测试与沟通,确保客户在理解方案的基础上认可方案,知其然亦知其所以然,保障方案的顺利部署。
迁移完成后,GVERSE 得以拥有高弹性、长期稳定、安全合规的服务保障,这对于一个面向海外、面向全世界玩家的公司尤其关键。郑恒国提到,网络游戏场景可能面对的峰值场景,尤其对 GVERSE 这样业务分布在多个不同国家与地区、需要采取分布式架构处理业务,DAU 骤增导致的处理复杂度会呈指数级增加。亚马逊云科技解决方案解放了基础设施对 GVERSE 的掣肘,将其主要精力放在拓展海外市场、更好地服务玩家方面,无需担忧数据的安全与稳定,专注于企业创新进程中。
郑恒国表示:“亚马逊云科技帮助网游厂商解决了机器运维、网络优化和安全合规方面的问题,其良好的服务使我们无需在不擅长领域付出时间和精力,让网游厂商能够更专注于业务创新工作,我认为亚马逊云科技是一家很厉害的公司。”
未来, GVERSE 希望继续与亚马逊云科技合作,深入学习 Amazon DynamoDB 成本优化方法,使用 ARM 架构提升性能等,共同在降本增效这条路上做更多探索。
想要了解游戏行业的最新举措?想要与行业先行者一起,共看前沿技术在游戏“构建”、“运行”和“增长”全生命周期的最佳实践?
GVERSE INTERNATIONAL PTE. LTD. 是一家新成立于 2015 年的新创企业。公司致力于打造一个全球范围内的游戏 UGC 平台,帮助普通玩家将创意转化为游戏。