隨著人口紅利的消散,游戲市場進(jìn)入存量競爭時代。大環(huán)境的變化為游戲行業(yè)的業(yè)務(wù)發(fā)展帶來諸多挑戰(zhàn),「降本增效」已然成為近些年游戲廠商開展業(yè)務(wù)的關(guān)鍵詞之一。加之玩家要求的不斷攀升、競爭態(tài)勢的愈演愈烈,游戲廠商正在深化各種數(shù)字化策略,挖掘海量數(shù)據(jù)價值,提高業(yè)務(wù)增長效率和創(chuàng)新能力,為玩家打造更精細(xì)化的游戲服務(wù)。
01
存算一體架構(gòu)難以滿足精細(xì)化運(yùn)營
基于上述趨勢,傳統(tǒng)的存算一體架構(gòu)逐漸在資源投入、運(yùn)維等層面逐漸暴露出以下問題:
延遲數(shù)據(jù)對投放計劃調(diào)整和活動優(yōu)化等業(yè)務(wù)場景的價值不高
多業(yè)務(wù)共用同一查詢集群,易造成不同業(yè)務(wù)間的資源搶奪、相互影響
存算一體化1:1擴(kuò)容的方式對部分場景友好度不夠,容易造成資源浪費(fèi)
基于本地存儲的分布式文件系統(tǒng)在成本、擴(kuò)展性、資源彈性等方面優(yōu)勢不大
部署復(fù)雜,運(yùn)維難度大,且較大程度上依賴運(yùn)維人員能力
......
尤其是在數(shù)據(jù)爆發(fā)增長的當(dāng)下,數(shù)據(jù)的處理能力和時效性,早已成為數(shù)據(jù)驅(qū)動業(yè)務(wù)增長的關(guān)鍵所在?;谘訒r數(shù)據(jù)分析出的市場策略,已經(jīng)無法讓企業(yè)在瞬息萬變的市場環(huán)境和不斷迭代的用戶需求下斬獲先機(jī)。
02
擁抱云原生加速度過行業(yè)陣痛期
云原生高效部署、敏捷迭代、彈性擴(kuò)容等優(yōu)勢,天然地突破了傳統(tǒng)存算一體架構(gòu)的瓶頸,也為數(shù)據(jù)驅(qū)動業(yè)務(wù)增長帶來了新的轉(zhuǎn)機(jī)。
云原生通過調(diào)度、資源隔離等技術(shù)手段,將在線和離線業(yè)務(wù)按優(yōu)先級和類型部署在相同的物理機(jī)上,避免傳統(tǒng)模式下高峰期資源占滿、低谷期資源利用率較低的情況。且云原生的資源池也可以承載更豐富的集群類型,實(shí)現(xiàn)集群的按需拉起和釋放。在集群部署和運(yùn)維方面,配備統(tǒng)一的管理界面,可對其運(yùn)行狀態(tài)進(jìn)行統(tǒng)一監(jiān)控和管理。
云原生技術(shù)的出現(xiàn),為企業(yè)的發(fā)展提供了一條降本增效的新思路。尤其是當(dāng)前游戲進(jìn)入精品化發(fā)展階段,業(yè)務(wù)的高速發(fā)展對算力提出了更高的要求,云原生化對游戲行業(yè)而言勢在必行。
為了幫助更多游戲廠商以更低的成本、更高的效率地開展精細(xì)化業(yè)務(wù),數(shù)數(shù)科技利用云原生技術(shù)打造了存算分離的云原生彈性集群方案——TE云原生方案(以下簡稱“方案”),助力游戲廠商在更豐富、復(fù)雜的應(yīng)用場景下,都能夠?qū)崟r、高效、經(jīng)濟(jì)地開展復(fù)雜、多元的數(shù)據(jù)分析需求。
03
TE云原生解決方案
打造性能與成本的卓越組合
TE云原生解決方案基于云上的對象存儲和容器化技術(shù),實(shí)現(xiàn)Trino查詢引擎的自定義彈性伸縮,資源自定義調(diào)度、隔離以及數(shù)據(jù)存儲的按需使用和無限擴(kuò)展能力。
TE云原生解決方案架構(gòu)圖
在存儲方面,支持跟云廠商的對象存儲如AWS S3打通,能在完全不影響上層數(shù)據(jù)查詢應(yīng)用的情況下,將歷史數(shù)據(jù)存放在云存儲中。結(jié)合實(shí)際落地案例數(shù)據(jù)可知,方案的落地能夠?qū)崿F(xiàn)游戲廠商月度服務(wù)器硬件成本30%以上的縮減。
在計算方面,方案可以實(shí)現(xiàn)對云計算資源的管理,將云廠商的容器服務(wù)如AWS EKS集群加入整體計算資源池中,根據(jù)隔離需求動態(tài)安裝對應(yīng)的彈性和隔離策略。這種方式可以提供隔離的計算環(huán)境,滿足不同請求類型的查詢,并且根據(jù)計算復(fù)雜情況動態(tài)伸縮,既滿足資源的按需分配,又能降本增效。
·查詢能力提升
游戲廠商的查詢大多集中在每天上班的特定時段,如上午09:00~11:30、下午14:00~17:00,這段時間內(nèi)很可能會產(chǎn)生某個時刻的請求高并發(fā)和大查詢。但因?yàn)榉?wù)器資源是固定的,一旦資源消耗完全,將造成查詢卡頓等現(xiàn)象。
方案利用云原生資源可靈活調(diào)度和管理的特性,實(shí)現(xiàn)了資源在查詢高峰時的自動化拉起。一旦高峰過去,將在空閑時段回收資源。此外,方案增強(qiáng)了Kubernetes HPA的彈性能力,可根據(jù)Trino worker查詢到的負(fù)載壓力和業(yè)務(wù)維度指標(biāo),靈活彈性地控制集群規(guī)模。集群規(guī)模越大,TE系統(tǒng)的查詢并發(fā)能力越高,吞吐量越大。
·業(yè)務(wù)資源隔離
方案使用的容器技術(shù)有良好的資源隔離能力,每個Trino實(shí)例單獨(dú)占用一個容器資源,容器與容器之間資源相互隔離。在架構(gòu)層面按照業(yè)務(wù)拆分Trino集群,不同的業(yè)務(wù)使用獨(dú)立的Trino集群。這樣從架構(gòu)層面和容器資源層面都做到了較好的資源隔離,避免業(yè)務(wù)之間的相互影響。
·資源彈性伸縮
利用云原生Kubernetes和容器相關(guān)技術(shù),實(shí)現(xiàn)資源快速的彈性伸縮以及靈活動態(tài)的按需分配。其中,資源的申請和回收都是TE云原生集群根據(jù)實(shí)際配置的彈性伸縮副本數(shù)(min,max)和彈性監(jiān)控指標(biāo)、閾值自動完成,整個過程無需人工參與。資源的按需分配,不僅減少了預(yù)采購冗余服務(wù)器的成本,還提高了資源利用率,保障了服務(wù)的響應(yīng)速度。
為了提升資源的響應(yīng)速度,數(shù)數(shù)采用了諸多措施,以AWS為例,通過Bottlerocket的AMI制作快照(提前將鏡像緩存到快照),并使用Karpenter管理和控制節(jié)點(diǎn)的彈性伸縮,將原本分鐘級的彈性節(jié)點(diǎn)速度優(yōu)化到秒級。
·資源靈活調(diào)度
云廠商提供了豐富的資源規(guī)格,不同規(guī)格資源的搭配使用,可能會在更小成本下產(chǎn)生更大的價值。如,一些常規(guī)應(yīng)用可以使用x86服務(wù)器,一些查詢應(yīng)用可以使用ARM服務(wù)器,通常來說ARM服務(wù)器較x86成本低10%左右。方案中的節(jié)點(diǎn)組就對云平臺中的多種實(shí)例類型進(jìn)行了整合,并基于Kubernetes強(qiáng)大的兼容性和適配性,實(shí)現(xiàn)了根據(jù)應(yīng)用特性對不同類型資源的調(diào)度。其中,所有節(jié)點(diǎn)組都會被統(tǒng)一管理,并根據(jù)業(yè)務(wù)場景、資源規(guī)模進(jìn)行調(diào)整優(yōu)化,以保證應(yīng)用性能和服務(wù)器成本之間達(dá)成平衡。
·架構(gòu)靈活可擴(kuò)展
方案結(jié)合了微服務(wù)的架構(gòu)設(shè)計理念和云原生技術(shù),極大地增加了架構(gòu)的擴(kuò)展性和靈活性,如:只需要簡單的配置部署即可實(shí)現(xiàn)多個Trino集群同時、相互獨(dú)立的運(yùn)行。應(yīng)用的調(diào)度和分配也都可以獨(dú)立管控,相較于虛擬機(jī)的部署方式在靈活性和可移植性上有較大的改善。
“實(shí)時、高效、經(jīng)濟(jì)”已成為游戲企業(yè)精細(xì)化運(yùn)營之路上的關(guān)鍵詞。TE云原生解決方案能夠幫助游戲廠商實(shí)現(xiàn)更低成本下更低延時的數(shù)據(jù)分析,第一時間完成對市場和游戲狀態(tài)的判斷。
目前,數(shù)數(shù)已經(jīng)攜手Habby、九九互動、青瓷、點(diǎn)點(diǎn)互動落地了計算和存儲引擎云原生方案。未來,數(shù)數(shù)還將全面實(shí)現(xiàn)TE各組件的云原生化,打造分析業(yè)務(wù)的一鍵上云,為游戲廠商實(shí)現(xiàn)更優(yōu)的分析體驗(yàn)和成本ROI。