逼真的人物设定,精美的主题布局,沉浸式的互动体验,交互式的多元场景……一系列虚拟与现实高度契合又相互映射的设定,成就了“元宇宙”游戏世界的无穷魅力。GVERSE开发的Blockman Go平台就是有着相当大体量的UGC(用户生产内容)平台之一。面对GVERSE的海量数据、目标对象琐碎、大体量的数据库迁移需求,亚马逊云科技团队设计了以Amazon DynamoDB、Amazon Aurora等服务为核心的迁移方案,并专门设计了多套定制化技术方案,引入专业的项目管理持续跟进,使得所有数据在7小时内迁移完成。
机会:时间紧、任务重的数据库迁移需求
随着开发门槛的降低,沙盒游戏以其不可比拟的交互性,或许将成为打开“内容创作3.0时代”的钥匙。GVERSE开发的Blockman Go平台允许玩家自行开发多个不同类型的游戏供其他玩家游玩,同时也提供丰富的社交互动功能,是一个UGC平台。但与此同时,这类平台也存在一些独有的问题。
GVERSE技术合伙人及技术总监郑恒国指出,UGC平台类游戏与常见的网游相比,具有覆盖玩家层面广、数据量大且琐碎等特点,对服务器的配置提出了相当大的考验。GVERSE此前就与亚马逊云科技有广泛接触,使用其动态CDN、网络加速及大数据等服务,过程中亚马逊云科技全球多节点的广泛布局和良好稳定性等特点,都给他留下了深刻的印象,因此,本次数据库迁移选择了继续与亚马逊云科技合作。
解决方案:定制化策略解决1450张
大中小表迁移难题
Amazon DynamoDB迁移,拆分表格类别,割切当天数小时内完成迁移
由于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”(不可能完成的任务)。
MySQL迁移,全托管服务,让客户省时省力
GVERSE的MySQL数据库大小约为2T,考虑到管理便捷性,选择使用Amazon Aurora作为承载。Amazon Aurora的全托管特性能大幅度节约运营维护成本,其自动执行标准化数据库集群和复制的特性,解决了数据库配置和管理方面的最大问题。
Amazon S3迁移,数据在线传输解决方案,解决细碎文件难题
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等安全产品,从基础设施保护等方面确保用户数据安全。此举有效消除了潜在风险,让客户对所有业务运行在亚马逊云科技上充满信心。
业务成果:专业的人做专业的事,
迁移与能效两不误
郑恒国表示,此前Blockman Go的数据服务部署在不同平台,新增游戏内容、版本测试以及配置管理等都需要开发两套系统来进行适配。游戏数据库统一迁移到亚马逊云科技之后,只需一套方案便可解决。另外,由于不再跨平台传输数据,在免除传输风险的同时也显著优化了数据同步成本。如果公司是采取传统的IDC服务,运维团队可能需要5~10人,如今只需1人即可。郑恒国指出,整体来看,应用亚马逊云科技服务之后,工作效率有大约20~30%提升。
郑恒国也对迁移过程中亚马逊云科技团队的专业能力和服务精神做出了高度评价。鉴于项目管理流程方法的特殊性,亚马逊云科技专门为GVERSE发起了由客户团队与Amazon DynamoDB专家组成的项目专责团队,为项目提供管理协助以降低实施风险。对于每一个专属定制化处理方案,具体实施前亚马逊云科技专家团队都会驻场留守,进行现场测试与沟通,确保客户在理解方案的基础上认可方案,知其然亦知其所以然,保障方案的顺利部署。
迁移完成后,GVERSE得以拥有高弹性、长期稳定、安全合规的服务保障,这对于一个面向海外、面向全世界玩家的公司尤其关键。郑恒国提到,网络游戏场景可能面对的峰值场景,尤其对GVERSE这样业务分布在多个不同国家与地区、需要采取分布式架构处理业务,DAU骤增导致的处理复杂度会呈指数级增加。亚马逊云科技解决方案解放了基础设施对GVERSE的掣肘,将其主要精力放在拓展海外市场、更好地服务玩家方面,无需担忧数据的安全与稳定,专注于企业创新进程中。
郑恒国表示:“亚马逊云科技帮助网游厂商解决了机器运维、网络优化和安全合规方面的问题,其良好的服务使我们无需在不擅长领域付出时间和精力,让网游厂商能够更专注于业务创新工作,我认为亚马逊云科技是一家很厉害的公司。”
未来,GVERSE希望继续与亚马逊云科技合作,深入学习Amazon DynamoDB成本优化方法,使用ARM架构提升性能等,共同在降本增效这条路上做更多探索。