游戏行业要出海,数据库云端迁移之路怎么走?

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Tair(兼容Redis),内存型 2GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
简介: 本文来自IT168,作者卿云

远来和尚会念经,出海的企业能赚钱。

随着中国人口红利消失、竞争加剧,很多互联网公司选择出海掘金,竞争尤为激烈的游戏行业也不例外,出海仍是不少游戏公司的必修课。

去年12月12日登陆港交所的心动网络也是游戏厂商出海大军中的一员,但是出海带来业务增长的同时也带来了IT方面的挑战,为了不影响玩家体验,心动网络开启了上云、迁移数据库之路。

出海2.jpg

1、出海掘金业务猛增迎挑战

心动网络于2002年成立,前身为中国最早的互联网分享网站之一的VeryCD(电炉大全)。2009年起,公司开始打造心动网络的自主品牌,进军游戏领域,致力于网页及移动客户端游戏的研发与运营。

2016年心动网络增资海外发行公司龙成网络,投资成立公司易玩(上海)网络科技有限公司,打造游戏社区平台TapTap,进一步拓展公司产品在海内外的发行运营渠道,构建内容社区平台,去年心动网络加大了海外的扩张步伐,将《碧蓝航线》、《永远的7日之都》、《第五人格》等国内大热产品带到海外,主打韩国、港澳台和东南亚市场。

市场研究机构Newzoo发布的东南亚游戏市场研究报告显示,随着移动设备迅速普及,东南亚网络人口不断增长,2019年东南亚游戏市场规模有望达到46亿美元,同比增幅22%,成为全球增速最快的游戏市场。

随着业务的发展其营收也水涨船高,这两年心动网络的海外营收也不断走高,根据招股书披露,2018年心动网络在海外营收占比由2016年的2.1%上升到61.5%。
业务的发展离不开强大的IT支撑,据悉,心动网络为支持游戏业务快速出海、游戏发行和TapTap游戏社区全球化运营与交付,需要支撑全球化业务的统一部署。在服务国内、东南亚和欧美等地人口大国时,活动峰值有100万级玩家同时在线,需要支撑高并发压力,提供低延迟、高稳定的云服务。

云计算具有可扩展、高并发的性能,此前心动网络大部分业务部署在IDC,为了降本增效逐步使用了阿里云的ECS、RDS、SLB等产品和服务迁往云端。

其中承载应用的数据库是上云升级的重中之重,比如游戏运维发布、游戏服务端软/硬件故障导致服务端重启,需要数据库支撑更快的数据读取能力,以实现业务的快速恢复。

而心动网络业务的高速增长使得原来的MySQL数据库面临着挑战,部分项目会有单表大量读写的瓶颈,造成业务的延迟较大。其另一个主要痛点是新版本发布时数据备份慢,游戏新版本发布往往是凌晨,发版前对数据备份动辄需要几个小时才能完成,非常影响凌晨发布的效率。

2、从 MySQL 到 PolarDB

遇到瓶颈后发力海外的心动网络希望继续沿用阿里云的服务升级,但彼时阿里云海外节点较少,于是测试使用了AWS Aurora。而随着阿里云不断发力海外,其自研的云原生数据库PolarDB有了足够的海外节点,心动网络找到了PolarDB。

经过多轮讨论与评估,压测各项指标分析,PolarDB可100%兼容MySQL,使得心动网络的业务可以无缝迁移。同时,PolarDB大幅减少了单表读写压力,使业务相对更稳定,且不需要花太多时间去进行分库分表的优化,成本比Aurora更低。因此,心动网络最终选择了PolarDB。

PolarDB是一款关系型分布式数据库,采用工业界得到广泛验证的计算与存储分离架构,原生兼容MySQL,经历了双11大规模高并发、高可用、扩展性检验,又有基于中国市场的丰富实践,成为包括心动网络在内很多企业数据库上云的选择。

不过数据库作为应用软件中最难迁移的技术之一,稍有差池后果很严重。心动网络数据库迁移前双方团队进行了风险评估以及数据备份,唯一担心的是迁移后的性能和数据库结构不一致问题。
由于在迁移前充分压测了PolarDB的性能并进行测试迁移,正式迁移相对顺利。最终心动网络采用PolarDB分布式云原生数据库方案构建了全部业务系统,解决了相关挑战,具体来看:

1、优良游戏体验:基于存储计算分离架构,实例都带有一主一只读节点,基于高性能的读写能力,便于新开服以及应用弹性扩容。在游戏版本发布、服务端重启等场景可以大大缩短维护时间,又确保在极端情况下,不会因为游戏服务端软、硬件故障造成服务恢复过慢而影响玩家体验。
2、7*24 高可用服务:数据采用三副本一致性存储,保证了数据的可靠性。同时在主实例发生故障时系统能在短时间(30s-60s)内完成快速切换,确保在线业务能够在保证数据完整性的同时快速恢复以提供正常的服务。
3、备份速度快:传统的数据库备份时间跟数据容量相关,容量越大备份越慢。但PolarDB在计算存储分离的架构下,通过分布式存储的快照(Snapshot)来实现数据库的无锁备份(lock-free backup),并且通过Copy-on-Write把数据的复制拷贝后置,可以做到30秒以内完成整个数据库的备份,使备份时长与容量无关。
4、丰富的业务支持:100%兼容MySQL5.6和MySQL8.0,完全兼容MySQL各种生态和中间件开源工具,非常方便游戏历史战绩、游戏充值和运营活动的开展。

3、数据库合适的才是最好的

作为对标基础物理的数据库,研发难度极大。这两年国产数据正逐步展露头角,就游戏产业而言,一些共性的低延迟、全球同服、高并发等挑战,PolarDB分布式云原生数据库有其独特的优势。

而从心动网络数据库迁移过程可以看到,企业云端数据库选型考虑的是综合因素,性能、成本、服务等都会影响最终结果,相信每个企业都有自己的考量,合适的才是最好的。

根据IT168&ITPUB发布的国内首份《云数据库选型及满意度调查报告》,云数据库在中国企业中的应用是大势所趋,82%的企业表示,已经部署或正在计划部署云数据库。在云时代,以PolarDB为代表的下一代云原生数据库已经掀开了一角崭新的未来。

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
3月前
|
弹性计算 关系型数据库 数据库
手把手带你从自建 MySQL 迁移到云数据库,一步就能脱胎换骨
阿里云瑶池数据库来开课啦!自建数据库迁移至云数据库 RDS原来只要一步操作就能搞定!点击阅读原文完成实验就可获得一本日历哦~
|
3月前
|
关系型数据库 MySQL 数据库
|
3月前
|
关系型数据库 MySQL 数据库
RDS MySQL灾备服务协同解决方案构建问题之数据库备份数据的云上云下迁移如何解决
RDS MySQL灾备服务协同解决方案构建问题之数据库备份数据的云上云下迁移如何解决
|
23天前
|
算法 大数据 数据库
云计算与大数据平台的数据库迁移与同步
本文详细介绍了云计算与大数据平台的数据库迁移与同步的核心概念、算法原理、具体操作步骤、数学模型公式、代码实例及未来发展趋势与挑战。涵盖全量与增量迁移、一致性与异步复制等内容,旨在帮助读者全面了解并应对相关技术挑战。
32 3
|
1月前
|
存储 Prometheus 运维
游戏出海-选择云观测监控
游戏出海-选择云观测监控
游戏出海-选择云观测监控
|
2月前
|
存储 SQL 关系型数据库
一篇文章搞懂MySQL的分库分表,从拆分场景、目标评估、拆分方案、不停机迁移、一致性补偿等方面详细阐述MySQL数据库的分库分表方案
MySQL如何进行分库分表、数据迁移?从相关概念、使用场景、拆分方式、分表字段选择、数据一致性校验等角度阐述MySQL数据库的分库分表方案。
397 15
一篇文章搞懂MySQL的分库分表,从拆分场景、目标评估、拆分方案、不停机迁移、一致性补偿等方面详细阐述MySQL数据库的分库分表方案
|
30天前
|
弹性计算 安全 测试技术
阿里云国际服务器与游戏出海业务结合,九河云助推企业快速运营
阿里云国际服务器与游戏出海业务结合,九河云助推企业快速运营
|
1月前
|
NoSQL 数据管理 关系型数据库
利用阿里云的尖端数据库解决方案增强游戏数据管理
利用阿里云的尖端数据库解决方案增强游戏数据管理
|
2月前
|
SQL Java 数据库连接
数据库迁移不再难:Flyway 与 Liquibase 大比拼,哪个才是你的真命天子?
【9月更文挑战第3天】数据库迁移在软件开发中至关重要,尤其在使用 ORM 框架如 Hibernate 时。为确保部署时能顺利应用最新的数据库变更,开发者常使用自动化工具。Flyway 和 Liquibase 是当前流行的两种选择,均能有效管理数据库版本控制。Flyway 采用 SQL 脚本表示变更,简单易用;Liquibase 支持多种脚本格式,功能更强大,适合复杂项目。本文将对比这两种工具的特点,并通过示例展示各自的优缺点,帮助开发者根据项目需求做出合适的选择。
473 1
|
3月前
|
JSON NoSQL Ubuntu
在Ubuntu 14.04上如何备份、恢复和迁移MongoDB数据库
在Ubuntu 14.04上如何备份、恢复和迁移MongoDB数据库
90 1