從新手游上線看游戲數(shù)據(jù)庫選型
最近我們深入游戲場(chǎng)景,參與支撐一個(gè)全新的手游項(xiàng)目上線,交流中發(fā)現(xiàn)經(jīng)驗(yàn)豐富的游戲架構(gòu)師都比較認(rèn)可一個(gè)觀點(diǎn):游戲業(yè)務(wù)設(shè)計(jì)離不開一款靠譜的 KV 數(shù)據(jù)庫。
這款游戲項(xiàng)目定位是爆款精品,有長(zhǎng)期運(yùn)營(yíng)規(guī)劃,因此在前期開發(fā)階段就鎖定了合適的“主數(shù)據(jù)庫”選型——華為云 KV 數(shù)據(jù)庫 GaussDB(forRedis)。
回顧這次項(xiàng)目,我們總結(jié)了游戲業(yè)務(wù)對(duì)數(shù)據(jù)庫的部分關(guān)鍵訴求:
1.注重玩家體驗(yàn),對(duì) KV 數(shù)據(jù)庫穩(wěn)定性要求很高
這款游戲預(yù)計(jì)上半年會(huì)達(dá)到日活數(shù)百萬 DAU,目前核心的玩家數(shù)據(jù)都使用 KV 數(shù)據(jù)庫存儲(chǔ)。一旦數(shù)據(jù)庫發(fā)生不可用,很可能大量玩家無法進(jìn)入戰(zhàn)斗房間。
在穩(wěn)定性方面,GaussDB(forRedis)能力領(lǐng)先,在 3 可用區(qū)架構(gòu)下,可靠性極高。研發(fā)團(tuán)隊(duì)很早以前就已經(jīng)對(duì)集群管理做了大量可靠性加固工作,極端場(chǎng)景下,即使集群發(fā)生大半數(shù)節(jié)點(diǎn)故障,客戶的業(yè)務(wù)也可以在數(shù)秒內(nèi)快速恢復(fù),完全不會(huì)造成大規(guī)模玩家體驗(yàn)受損。

穩(wěn)定性能力是需要持續(xù)打磨的,華為云研發(fā)團(tuán)隊(duì)還在繼續(xù)對(duì) GaussDB(forRedis)集群管理架構(gòu)進(jìn)行優(yōu)化,以實(shí)現(xiàn)極致的快速恢復(fù)。
2.考慮長(zhǎng)期運(yùn)營(yíng),數(shù)據(jù)存儲(chǔ)成本要可控
其實(shí)業(yè)界有很多游戲公司都會(huì)用 KV 庫存玩家數(shù)據(jù),這里最常用的是自建開源 Redis,在 GB 級(jí)的數(shù)據(jù)量下,這個(gè)方案沒有不妥,但一旦考慮到長(zhǎng)期運(yùn)營(yíng),開源 Redis 純內(nèi)存成本是直線上漲的,例如:16GB 成本需要 1500,后期擴(kuò)容到 32GB 需要 3000,一年后到了 320GB 就要 30000。在成本痛點(diǎn)訴求下,業(yè)務(wù)方肯定會(huì)尋求最合適自己業(yè)務(wù)的存儲(chǔ)選型。
這次的項(xiàng)目里,GaussDB(forRedis)就是最適合游戲業(yè)務(wù)的 KV 數(shù)據(jù)庫。存儲(chǔ)池成本遠(yuǎn)比純內(nèi)存低,客戶可以放心長(zhǎng)期存,這個(gè)游戲放在華為云 3 年、5 年、10 年,客戶都不必?fù)?dān)心將來的成本問題,可以放心聚焦到游戲自身的運(yùn)營(yíng)和質(zhì)量打磨上。
3.資源彈性,活動(dòng)前后能夠無感擴(kuò)縮容
游戲首發(fā)只是個(gè)開頭,長(zhǎng)期運(yùn)營(yíng)中,會(huì)給玩家舉辦各類節(jié)日活動(dòng)。這時(shí)候就要求數(shù)據(jù)庫能夠彈性伸縮。GaussDB(forRedis)存算分離架構(gòu)最具特色的就是:秒級(jí)擴(kuò)容。使用華為云 GaussDB(forRedis)后,游戲客戶完全可以這樣操作:
(1)周五晚上擴(kuò)一波資源,在線擴(kuò)就行,對(duì)業(yè)務(wù)影響極小;
(2)周末做活動(dòng)抗住大數(shù)據(jù)量、大流量,確?;顒?dòng)順利;
(3)等到周一活動(dòng)熱度過去,進(jìn)行一把在線縮容即可。
這里面涉及到很多的技術(shù)設(shè)計(jì),比如秒級(jí)擴(kuò)容,其基本原理如下:

GaussDB(forRedis)計(jì)算資源、存儲(chǔ)資源都支持獨(dú)立擴(kuò)展:

這次游戲上線很成功,GaussDB(forRedis)強(qiáng)力保障了客戶業(yè)務(wù)穩(wěn)定高效運(yùn)行。今年 GaussDB(forRedis)產(chǎn)品和研發(fā)團(tuán)隊(duì)會(huì)繼續(xù)加強(qiáng)投入,力爭(zhēng)在穩(wěn)定性、使用體驗(yàn)上有進(jìn)一步的提升,為更多業(yè)務(wù)架構(gòu)帶來更優(yōu)的解決方案。
審核編輯黃宇
-
數(shù)據(jù)庫
+關(guān)注
關(guān)注
7文章
3993瀏覽量
67743 -
華為云
+關(guān)注
關(guān)注
3文章
2805瀏覽量
19092
發(fā)布評(píng)論請(qǐng)先 登錄
華納云為游戲數(shù)據(jù)庫選擇高性能NVMe SSD存儲(chǔ)
數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—服務(wù)器異常斷電導(dǎo)致Oracle數(shù)據(jù)庫故障的數(shù)據(jù)恢復(fù)案例
數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—MongoDB數(shù)據(jù)庫文件丟失的數(shù)據(jù)恢復(fù)案例
數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—SQL Server數(shù)據(jù)庫被加密如何恢復(fù)數(shù)據(jù)?
MySQL數(shù)據(jù)庫是什么
數(shù)據(jù)庫數(shù)據(jù)恢復(fù)——MongoDB數(shù)據(jù)庫文件拷貝后服務(wù)無法啟動(dòng)的數(shù)據(jù)恢復(fù)
數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—SQL Server附加數(shù)據(jù)庫提示“錯(cuò)誤 823”的數(shù)據(jù)恢復(fù)案例
分布式云化數(shù)據(jù)庫有哪些類型
MySQL數(shù)據(jù)庫的安裝
關(guān)系型數(shù)據(jù)庫和非關(guān)系型區(qū)別
SqlServer數(shù)據(jù)恢復(fù)—SqlServer數(shù)據(jù)庫數(shù)據(jù)恢復(fù)案例
云數(shù)據(jù)庫是哪種數(shù)據(jù)庫類型?
數(shù)據(jù)庫加密辦法
數(shù)據(jù)庫數(shù)據(jù)恢復(fù)—Mysql數(shù)據(jù)庫表記錄丟失的數(shù)據(jù)恢復(fù)流程

從新手游上線看游戲數(shù)據(jù)庫選型
評(píng)論