2022阿里云數(shù)據(jù)庫解決方案合集_第1頁
2022阿里云數(shù)據(jù)庫解決方案合集_第2頁
2022阿里云數(shù)據(jù)庫解決方案合集_第3頁
2022阿里云數(shù)據(jù)庫解決方案合集_第4頁
2022阿里云數(shù)據(jù)庫解決方案合集_第5頁
已閱讀5頁,還剩71頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

阿里云數(shù)據(jù)庫解決方案合集2022云數(shù)據(jù)庫解決方案歷史性突破! 序言阿里云成為首家進(jìn)入Gartner數(shù)據(jù)庫魔力象限領(lǐng)導(dǎo)者的國內(nèi)企業(yè)。今年Gartner“TheresOnlyOneSOPDBM(事務(wù)處理)DMSA(管理與分析)CloudDatabaseManagementSystemdCHALLENGERSLEADERSCHALLENGERSLEADERSAmazonWebServicesMicrosoftGoogleOracleSnowflakeRedisLabsSAP IBMAlibabaCloud Marklogic InterSysternsDatabricksClouderaHuaweiNICHEPLAYERSVISIONARIES

阿里云智能數(shù)據(jù)庫產(chǎn)品團(tuán)隊(duì)一直致力于不斷健全產(chǎn)品體系,提升產(chǎn)品性能,打磨產(chǎn)品功能,從而幫助客戶實(shí)現(xiàn)更加極致的彈性能力、具備更強(qiáng)的擴(kuò)展能力、并利用云設(shè)施進(jìn)一步降低企業(yè)成本。以云原生分布式為核心技術(shù)抓手,打造以自研的在線事務(wù)型OLP)PoarDB和在線分析型(LAP)nalticBNoSQL數(shù)據(jù)庫、數(shù)據(jù)庫生態(tài)工具、云原生智能化數(shù)據(jù)庫管控平臺(tái),為阿里巴巴經(jīng)濟(jì)體以及各個(gè)行業(yè)的企業(yè)客戶和開發(fā)者提供從公共云到混合云再到私有云的完整解決方案,提供基于云基礎(chǔ)設(shè)施進(jìn)行數(shù)據(jù)從處理、到存儲(chǔ)、再到計(jì)算與分析的一體化解決方案。憑借于此,阿里云數(shù)據(jù)庫產(chǎn)品在云計(jì)算這個(gè)賽道上的快速演進(jìn),已經(jīng)成長(zhǎng)為全球前三的云數(shù)據(jù)庫廠商,根據(jù)DC數(shù)據(jù)庫市場(chǎng)分析報(bào)告統(tǒng)計(jì),209H250%;根據(jù)Gartner2019219Garner2020Forrester2019DBaaSWave里強(qiáng)勁表現(xiàn)者位置。在軟件領(lǐng)域,阿里云是中國第一家arter無論是個(gè)人開發(fā)者,中小企業(yè),還是全球化大規(guī)模企業(yè),阿里云數(shù)據(jù)庫服務(wù),都是您可靠、高效的選擇。目錄01 游戲行業(yè)多場(chǎng)景云數(shù)據(jù)庫解決方案

04 異地多活場(chǎng)景數(shù)據(jù)庫解決方案78問題和挑戰(zhàn)06游戲行業(yè)的整體特點(diǎn)及其對(duì)數(shù)據(jù)庫的需求79解決方案07游戲行業(yè)細(xì)分場(chǎng)景與解決方案93成功案例23方案優(yōu)勢(shì)96常見問題解答25客戶案例97參考資料32附錄98附錄在線教育行業(yè)數(shù)據(jù)庫解決方案 05 服飾行業(yè)數(shù)據(jù)庫解決方案34在線教育行業(yè)對(duì)數(shù)據(jù)庫的需求100服飾行業(yè)典型業(yè)務(wù)場(chǎng)景35K12教育行業(yè)細(xì)分場(chǎng)景與解決方案102解決方案49方案優(yōu)勢(shì)117方案優(yōu)勢(shì)51客戶案例119客戶案例(特步)54附錄122附錄大促營銷數(shù)據(jù)庫解決方案 06 用電信息采集和主站應(yīng)用系統(tǒng)數(shù)據(jù)庫解決方案56大促面臨的技術(shù)挑戰(zhàn)124電力用采系統(tǒng)的現(xiàn)狀57解決方案126解決方案(用電信息采集業(yè)務(wù)場(chǎng)景)72方案優(yōu)勢(shì)132成功案例73成功案例134常見問題解答75附錄136附錄5 云數(shù)據(jù)庫解決方案

游戲行業(yè)的整體特點(diǎn)及其對(duì)數(shù)據(jù)庫的需求通過深入調(diào)研,游戲行業(yè)的整體特點(diǎn)以及相關(guān)企業(yè)在使用數(shù)據(jù)庫時(shí)常見需求包括以下幾方面:1游戲行業(yè)場(chǎng)景多,對(duì)技術(shù)架構(gòu)定制化要求高很難歸納出一套可復(fù)制到所有游戲產(chǎn)品中的單一數(shù)據(jù)庫解決方案,必須根據(jù)游戲類

游戲合服需要平滑的數(shù)據(jù)遷移3當(dāng)游戲進(jìn)入平穩(wěn)期后,出于提升玩家游戲體驗(yàn)和控制成本的目的,會(huì)有游戲合服的需求。數(shù)據(jù)庫需要關(guān)注的重點(diǎn)就是保證數(shù)據(jù)的平滑遷移,整個(gè)遷移過程不能影響到玩家體驗(yàn),且數(shù)據(jù)合并要保證完整準(zhǔn)確,符合業(yè)務(wù)邏輯,解決沖突數(shù)據(jù)。3多場(chǎng)景云數(shù)據(jù)庫解決方案

2突發(fā)高峰訪問情況挑戰(zhàn)數(shù)據(jù)庫承載能力游戲新開服,或有重大活動(dòng)時(shí),會(huì)有難以精確預(yù)期的玩家訪問壓力。傳統(tǒng)的解決方案就是部署盡可能多的數(shù)據(jù)庫來承載高峰訪問,其問題是可能因?yàn)轭A(yù)測(cè)樂觀,導(dǎo)致昂貴數(shù)據(jù)庫資源的浪費(fèi),或因?yàn)轭A(yù)測(cè)保守,導(dǎo)致數(shù)據(jù)庫資源準(zhǔn)備不足,高峰期超載影響游戲業(yè)務(wù),立即擴(kuò)容時(shí)間又來不及,最終影響用戶體驗(yàn)。

游戲例行回檔需要敏捷的數(shù)據(jù)恢復(fù)能力4游戲運(yùn)營過程中,可能出現(xiàn)有玩家利用游戲漏洞,批量復(fù)制虛擬道具或其他嚴(yán)重破壞游戲公平性的行為,這時(shí)就需要業(yè)務(wù)緊急修復(fù)漏洞,同時(shí)將受影響數(shù)據(jù)恢復(fù)到漏洞被利用前的狀態(tài)(所謂回檔),如何提升數(shù)據(jù)恢復(fù)的速度成為挑戰(zhàn)。4放眼全球市場(chǎng),游戲產(chǎn)業(yè)收入增長(zhǎng)迅速,且有明顯的反經(jīng)濟(jì)周期特征。相較于日美等游戲ARPU(每用戶平均收入)值都有很大的提升空間。加強(qiáng)精細(xì)而精細(xì)化運(yùn)營和用戶體驗(yàn)提升,均需要穩(wěn)定可靠的技術(shù)架構(gòu)支撐,尤其是處于技術(shù)架構(gòu)核心位置的數(shù)據(jù)庫技術(shù)的保障。阿里云的游戲行業(yè)數(shù)據(jù)庫解決方案通過使用云數(shù)據(jù)庫的產(chǎn)品組合,應(yīng)對(duì)游戲行業(yè)多種細(xì)分場(chǎng)景,充分利用阿里云數(shù)據(jù)庫高性能、低成本、高可用、易維護(hù)的優(yōu)勢(shì),幫助游戲客戶適應(yīng)當(dāng)前和未來業(yè)務(wù)發(fā)展的需要。游戲行業(yè)細(xì)分場(chǎng)景與解決方案數(shù)據(jù)庫的選型跟游戲分區(qū)方式息息相關(guān),市面網(wǎng)絡(luò)游戲(移動(dòng)游戲)可分為兩大類:

分區(qū)分服:因?yàn)樵谟螒驒C(jī)制上就已經(jīng)把負(fù)載打散,一般一個(gè)分區(qū)數(shù)據(jù)存儲(chǔ)不超過10w玩家的數(shù)據(jù),因此游戲平穩(wěn)期,分區(qū)數(shù)據(jù)庫壓力不會(huì)太大,但也衍生出了合服時(shí)的數(shù)據(jù)合并需求。集群部署架構(gòu)2000-10000及以上玩家同時(shí)在線SLB集群部署架構(gòu)2000-10000及以上玩家同時(shí)在線SLBECS網(wǎng)關(guān)服務(wù)器ECS網(wǎng)關(guān)服務(wù)器1ECS游戲服器1ECS游戲服務(wù)器2~NECS戰(zhàn)國服務(wù)器N+1RDS游戲數(shù)據(jù)庫注:網(wǎng)關(guān)服務(wù)器與邏輯服務(wù)器數(shù)量可以不對(duì)等游戲1區(qū)2~NECS游戲服務(wù)器2~N1全區(qū)全服游戲1所有玩家數(shù)據(jù)在一個(gè)數(shù)據(jù)庫中,只會(huì)在游戲進(jìn)行時(shí)撮合玩家進(jìn)入游戲房間,像MOBA游戲如“吃雞”,或是玩家直接自己玩的休閑游戲如“開心消消樂”。此類游戲進(jìn)行中或結(jié)束后,游戲狀態(tài)數(shù)據(jù)會(huì)回寫數(shù)據(jù)庫實(shí)現(xiàn)持久化保存。2分區(qū)分服游戲2游戲客戶端不同區(qū)玩家數(shù)據(jù)在不同數(shù)據(jù)庫中,游游戲客戶端游戲1區(qū)游戲2區(qū)游戲3~N區(qū)ECS游戲1區(qū)游戲2區(qū)游戲3~N區(qū)ECS游戲服務(wù)器1ECS游戲服務(wù)器2ECS游戲服務(wù)器3~NRDS游戲數(shù)據(jù)庫1RDS游戲數(shù)據(jù)庫2RDS游戲數(shù)據(jù)庫3~NECS登錄服務(wù)器

戲有很明顯的活躍玩家周期,會(huì)經(jīng)歷開服、活躍玩家到峰值、活躍玩家進(jìn)入平穩(wěn)期、合服這樣的過程,如“部落戰(zhàn)爭(zhēng)”、“陰陽師”等。針對(duì)兩種類型的游戲的數(shù)據(jù)庫架構(gòu)截然不同。全區(qū)全服:因?yàn)橥婕覕?shù)據(jù)大集中,對(duì)數(shù)據(jù)庫性能要求高;應(yīng)用上一般采用多級(jí)緩存,分布式緩存技術(shù),利用緩存承載高并發(fā)讀請(qǐng)求,對(duì)數(shù)據(jù)庫進(jìn)行保護(hù)。

RDS游戲數(shù)據(jù)庫游戲推廣游戲買量?jī)?yōu)化方案游戲部署玩家訪問壓力應(yīng)對(duì)方案掉線問題解決方案游戲開發(fā)云游戲方案游戲排行榜方案游戲運(yùn)營游戲合服方案游戲回檔方案游戲設(shè)計(jì)游戲推廣游戲買量?jī)?yōu)化方案游戲部署玩家訪問壓力應(yīng)對(duì)方案掉線問題解決方案游戲開發(fā)云游戲方案游戲排行榜方案游戲運(yùn)營游戲合服方案游戲回檔方案游戲設(shè)計(jì)游戲立項(xiàng)ECS日志服務(wù)器 RDS日志數(shù)據(jù)庫1玩家訪問壓力應(yīng)對(duì)方案1方案概述游戲平穩(wěn)運(yùn)行期對(duì)數(shù)據(jù)庫壓力不大,但在以下三種情況下數(shù)據(jù)庫會(huì)面臨高并發(fā)訪問壓力:游戲推廣期,買量用戶蜂擁而至,頻繁開新服;維護(hù)停機(jī)后開服,很多玩家等待多時(shí),集中上線;重大版本上線或有重要活動(dòng),推廣效果超預(yù)期時(shí),會(huì)有大量老玩家回歸。由于買量和游戲運(yùn)營效果具有很大不確定性,很難準(zhǔn)確評(píng)估玩家壓力模型,業(yè)內(nèi)通用做RDS節(jié)點(diǎn),這樣很容易造成資源不足或浪費(fèi)。如下圖所示:在游戲的整個(gè)開發(fā)和運(yùn)營周期,數(shù)據(jù)庫的解決方案可分為以下七種:

需要數(shù)據(jù)遷移,TB級(jí)別數(shù)據(jù)可能需要幾個(gè)小時(shí)1玩家訪問壓力應(yīng)對(duì)方案1玩家訪問量突增,數(shù)據(jù)庫常成為瓶頸,需要快速變配、擴(kuò)容能力。

掉線問題解決方案5數(shù)據(jù)庫高可用、例行切換或變配,會(huì)導(dǎo)致應(yīng)用連接閃斷,可能導(dǎo)致玩家批量掉線重連,對(duì)游戲體驗(yàn)有很大影響。5

RDS只讀

擴(kuò)展只讀節(jié)點(diǎn)

RDSRDSRDS升配RDSRDS2游戲合服方案2分區(qū)分服游戲進(jìn)入平穩(wěn)期后,需定期進(jìn)行合服。對(duì)應(yīng)的數(shù)據(jù)庫也要進(jìn)行合并,讓數(shù)據(jù)合并后符合業(yè)務(wù)邏輯,但不能影響玩家,這是主要挑戰(zhàn)。3游戲排行榜方案3針對(duì)游戲排行榜這種通用的游戲需求,提供簡(jiǎn)單高效的數(shù)據(jù)存儲(chǔ)方案。4游戲回檔方案4當(dāng)游戲漏洞被利用,導(dǎo)致部分玩家數(shù)據(jù)失去平衡性,需要對(duì)相應(yīng)數(shù)據(jù)做回檔恢復(fù)處理。

游戲買量?jī)?yōu)化方案6游戲運(yùn)營階段,最大的支出是獲客成本,即在多種渠道投放廣告獲取用戶的開銷(買量)。通過對(duì)海量的獲客結(jié)果數(shù)據(jù)進(jìn)行實(shí)施分析,調(diào)整不同渠道投放比例,可大幅提升買量行為效率。67開放世界類游戲方案7新興的游戲類型。

阿里云提供以下數(shù)據(jù)庫解決方案:PolarDB存儲(chǔ)計(jì)算分離,升配、加只讀節(jié)點(diǎn)無需數(shù)據(jù)遷移PolarDB只讀計(jì)算節(jié)點(diǎn) PolarDB主計(jì)算節(jié)點(diǎn) PolarDB主計(jì)算節(jié)點(diǎn)擴(kuò)展只讀節(jié)點(diǎn) PolarDB升配PolarDB存儲(chǔ)PoarDBin5i;無需提前購買昂貴的高規(guī)格數(shù)據(jù)庫,一旦數(shù)據(jù)庫容量評(píng)估不足,玩家并發(fā)訪問壓力超過數(shù)據(jù)庫負(fù)載,可快速進(jìn)行升配保證游戲平穩(wěn)運(yùn)行;一旦游戲進(jìn)入平穩(wěn)期,業(yè)務(wù)壓力下降,還可對(duì)PolarDB000001服0210%8%12%2另一種情況是會(huì)將多個(gè)數(shù)據(jù)庫實(shí)例中玩家數(shù)據(jù)合并到同一張數(shù)據(jù)表中,不同服玩家真的合并在一個(gè)服進(jìn)行游玩,游戲體驗(yàn)最佳,但可能會(huì)涉及玩家名稱沖突、聯(lián)盟名稱沖突、任務(wù)進(jìn)度不同步,物價(jià)差異等問題,需要游戲運(yùn)營和研發(fā)人員采取相應(yīng)處理對(duì)策。這種方案需要兩個(gè)步驟,如下圖:2另一種情況是會(huì)將多個(gè)數(shù)據(jù)庫實(shí)例中玩家數(shù)據(jù)合并到同一張數(shù)據(jù)表中,不同服玩家真的合并在一個(gè)服進(jìn)行游玩,游戲體驗(yàn)最佳,但可能會(huì)涉及玩家名稱沖突、聯(lián)盟名稱沖突、任務(wù)進(jìn)度不同步,物價(jià)差異等問題,需要游戲運(yùn)營和研發(fā)人員采取相應(yīng)處理對(duì)策。這種方案需要兩個(gè)步驟,如下圖:10%8%12%30DTS數(shù)據(jù)遷移業(yè)務(wù)壓力評(píng)估購買合理規(guī)格PolarDB數(shù)據(jù)遷移發(fā)現(xiàn)負(fù)載風(fēng)險(xiǎn)升配活擴(kuò)增只讀節(jié)點(diǎn)業(yè)務(wù)平穩(wěn)后降配或削減只讀節(jié)點(diǎn)業(yè)務(wù)壓力評(píng)估購買合理規(guī)格PolarDB數(shù)據(jù)遷移發(fā)現(xiàn)負(fù)載風(fēng)險(xiǎn)升配活擴(kuò)增只讀節(jié)點(diǎn)業(yè)務(wù)平穩(wěn)后降配或削減只讀節(jié)點(diǎn)DB2DB1DB0DB2DB1DB02合服前數(shù)據(jù)庫實(shí)例活躍用戶比PolarDB的默認(rèn)備份方式是快照備份,備份時(shí)間不隨數(shù)據(jù)量的增長(zhǎng)而變長(zhǎng)。PolarDB的存儲(chǔ)默認(rèn)按存儲(chǔ)量計(jì)費(fèi),如果數(shù)據(jù)量較大建議購買存儲(chǔ)包。2合服前數(shù)據(jù)庫實(shí)例活躍用戶比1數(shù)據(jù)湖分析DLA方案概述1數(shù)據(jù)湖分析DLA跨實(shí)際分析出沖突用戶數(shù)據(jù),數(shù)據(jù)并表前調(diào)整好分區(qū)分服的游戲往往在游戲的平穩(wěn)期會(huì)有合服的場(chǎng)景,原因如下:跨實(shí)際分析出沖突用戶數(shù)據(jù),數(shù)據(jù)并表前調(diào)整好0201服00節(jié)約應(yīng)用和數(shù)據(jù)庫成本。游戲進(jìn)入平穩(wěn)期后,每個(gè)分區(qū)會(huì)流失相當(dāng)數(shù)量的玩家,應(yīng)用和數(shù)據(jù)庫負(fù)載都開始走低,將原來位于多個(gè)RDS實(shí)例的數(shù)據(jù)庫合并到一個(gè)RDS實(shí)例,實(shí)例負(fù)載也完全可以滿足游戲運(yùn)行需要,多余的實(shí)例就可以釋放,節(jié)約成本。0201服00合服前數(shù)據(jù)庫實(shí)例活躍用戶比DB2DB1DB0提升留存玩家游戲體驗(yàn)的需要。因?yàn)榉謪^(qū)玩家流失,在線進(jìn)行聊天和游戲互動(dòng)的玩家就會(huì)變少,留存玩家就會(huì)感覺游戲體驗(yàn)下降,此時(shí)合服,將分散在各個(gè)區(qū)的留存玩家聚到一起,玩家有會(huì)找到之前開新服時(shí)那種人滿為患的游戲熱情。合服前數(shù)據(jù)庫實(shí)例活躍用戶比DB2DB1DB000服合服后數(shù)據(jù)庫實(shí)例活躍用戶占比活躍用戶占比DB0游戲合服場(chǎng)景的關(guān)鍵點(diǎn)是數(shù)據(jù)的遷移。一種相對(duì)簡(jiǎn)單的情況是將多個(gè)物理庫從多個(gè)數(shù)據(jù)庫實(shí)例集中遷移到一個(gè)數(shù)據(jù)庫實(shí)例,游戲數(shù)據(jù)在邏輯上并沒有真正合并,應(yīng)用只需要切換數(shù)據(jù)庫鏈接串即可,如下圖所示。00服合服后數(shù)據(jù)庫實(shí)例活躍用戶占比活躍用戶占比DB000服01服02服00服01服02服10% 8% 12%合服前數(shù)據(jù)庫占比實(shí)例 DB0 DB1 DB2合服前數(shù)據(jù)庫占比實(shí)例DB0DB1DB202服01服00服DB2DB1DB0合服前數(shù)據(jù)庫占比實(shí)例活躍用戶占比02服01服00服DB2DB1DB0合服前數(shù)據(jù)庫占比實(shí)例活躍用戶占比阿里云數(shù)據(jù)庫針對(duì)游戲合服的方案有如下優(yōu)勢(shì):游戲行業(yè)常見的的數(shù)據(jù)遷移包含結(jié)構(gòu)遷移、全量移或同步鏈路都能擁有良好的傳輸性。底層為服務(wù)集群,如果集群內(nèi)任對(duì)部分傳輸鏈路提供用安全傳輸協(xié)議及安全n通過標(biāo)準(zhǔn)對(duì)不同服數(shù)據(jù)庫實(shí)例2操作流程與關(guān)鍵步驟2一、數(shù)據(jù)遷移流程遷移環(huán)境準(zhǔn)備 創(chuàng)建遷移任務(wù)并配置遷移映射關(guān)系 遷移環(huán)境準(zhǔn)備創(chuàng)建遷移任務(wù)并配置遷移映射關(guān)系SQL查詢流程在需要進(jìn)行關(guān)聯(lián)查詢的數(shù)據(jù)庫實(shí)例白名單中加入DLA的IP白名單再DLA中創(chuàng)建底層映射到數(shù)據(jù)實(shí)例的在需要進(jìn)行關(guān)聯(lián)查詢的數(shù)據(jù)庫實(shí)例白名單中加入DLA的IP白名單再DLA中創(chuàng)建底層映射到數(shù)據(jù)實(shí)例的鏈接

觀察遷移進(jìn)度游戲應(yīng)用數(shù)據(jù)源切換觀察遷移進(jìn)度游戲應(yīng)用數(shù)據(jù)源切換在DLA中創(chuàng)建數(shù)據(jù)庫實(shí)例外表通過DLA在DLA中創(chuàng)建數(shù)據(jù)庫實(shí)例外表通過DLA多個(gè)數(shù)據(jù)實(shí)例的數(shù)據(jù)只能幫助發(fā)現(xiàn)跨服用戶數(shù)據(jù)之間

3游戲排行榜應(yīng)對(duì)方案3游戲排行榜應(yīng)對(duì)方案1方案概述1為了鼓勵(lì)玩家之間互相競(jìng)爭(zhēng),游戲中會(huì)有排行榜的功能。玩家可根據(jù)自己在排行榜上的高排名獲得成就感,提升游戲參與積極性。存儲(chǔ)排行榜的數(shù)據(jù)庫選型非常重要,如果使用關(guān)系型數(shù)據(jù)庫,如RDSMySQL來存儲(chǔ)用戶和積分?jǐn)?shù)據(jù),會(huì)有如下幾個(gè)問題:隨著游戲熱度逐漸增長(zhǎng),特別是新游戲,積分變化會(huì)非常頻繁,對(duì)數(shù)據(jù)udate更新并發(fā)很高,容易導(dǎo)致RDS實(shí)例過載。

積分?jǐn)?shù)據(jù)因?yàn)閷?shí)時(shí)激勵(lì)玩家競(jìng)爭(zhēng),實(shí)時(shí)性要求強(qiáng),玩家查詢頻率高,每次都要進(jìn)行排序,在數(shù)據(jù)量較大情況下CPU打滿。如果采用只讀實(shí)例或緩存來緩解RDS的排序查詢,會(huì)面臨數(shù)據(jù)復(fù)制延遲和數(shù)據(jù)一致性的問題。選用云數(shù)據(jù)庫Redis的Sortedsets數(shù)據(jù)類型進(jìn)行存儲(chǔ),在這個(gè)有序集合中,字符串不允許重復(fù),分?jǐn)?shù)可以重復(fù)并且是有序存儲(chǔ)的。如下圖:100Dell98100Dell98Tom97Ann90Pe89Ken85Lily......sorted_set_name本方案具備以下優(yōu)勢(shì):添加、刪除和更新玩家積分均有對(duì)應(yīng)接口,對(duì)開發(fā)非常友好。排行榜數(shù)據(jù)都在內(nèi)存存儲(chǔ),可承載高并發(fā)更新,且因?yàn)閿?shù)據(jù)已經(jīng)是有序的,查詢時(shí)延大RDS數(shù)據(jù)庫。Redis可用性(前提是游戲應(yīng)用層也要提前做雙機(jī)房容災(zāi))。ReisRB持久化保存;且可在控制臺(tái)使用備份文件進(jìn)行數(shù)據(jù)恢復(fù),讓排行榜數(shù)據(jù)具備數(shù)據(jù)誤操作后的快速恢復(fù)能力。

4游戲回檔應(yīng)對(duì)方案4游戲回檔應(yīng)對(duì)方案1方案概述1網(wǎng)絡(luò)游戲的回檔,給玩家?guī)淼闹苯痈惺苁亲罱欢螘r(shí)間內(nèi)積累的經(jīng)驗(yàn)值、新獲得的道具物品突然消失不見,會(huì)給玩家挫敗感,帶來極壞的游戲體驗(yàn)。但游戲數(shù)據(jù)的回檔依然是有重大價(jià)值的,常見于游戲中出現(xiàn)了重大漏洞,有玩家利用漏洞非法復(fù)制裝備、貨幣,游戲回檔會(huì)考察RPO、RTO兩個(gè)指標(biāo),即希望數(shù)據(jù)能夠回檔到過去任意時(shí)間點(diǎn),恢復(fù)時(shí)間盡可能快。數(shù)據(jù)庫設(shè)計(jì)架構(gòu)如下:2企業(yè)數(shù)據(jù)中心其他云廠商MySQLECS上MySQL2企業(yè)數(shù)據(jù)中心其他云廠商MySQLECS上MySQL本地機(jī)房MySQL生產(chǎn)數(shù)據(jù)物理備份增量標(biāo)準(zhǔn)型存儲(chǔ)池?cái)?shù)據(jù)備份DBS恢復(fù)集群備份集群企業(yè)數(shù)據(jù)中心掛載掛載掛載可讀可寫多次掛載10:00:0009:50:0009:50:00極速型存儲(chǔ)池增量數(shù)據(jù)合并每10min快照點(diǎn)掛載集群文件服務(wù)集群MySQLMySQLMySQL秒級(jí)恢復(fù)根據(jù)要開發(fā)的排行榜功能,確認(rèn)玩家ID和積分字段購買節(jié)點(diǎn)“節(jié)點(diǎn)類型”為雙副本的標(biāo)準(zhǔn)版Redis根據(jù)Redis標(biāo)準(zhǔn)接口開發(fā)排行榜應(yīng)用根據(jù)要開發(fā)的排行榜功能,確認(rèn)玩家ID和積分字段購買節(jié)點(diǎn)“節(jié)點(diǎn)類型”為雙副本的標(biāo)準(zhǔn)版Redis根據(jù)Redis標(biāo)準(zhǔn)接口開發(fā)排行榜應(yīng)用edsQPS3務(wù)必要選擇雙副本,否則沒有高可用保證。Java的積分排行榜代碼示例可參見/document_detail/26366.html

本方案具備以下優(yōu)勢(shì):DBS增量日志實(shí)時(shí)備份,數(shù)據(jù)可回檔到任意時(shí)間點(diǎn)。針對(duì)游戲回檔場(chǎng)景,可選用BS的“極速型存儲(chǔ)池”方案,每10in生成一份完整的數(shù)據(jù)快照,需要恢復(fù)到任意時(shí)間點(diǎn)的增量數(shù)據(jù)回放秒級(jí)完成,數(shù)據(jù)可直接掛載到MySQL實(shí)例,然后快速查詢出需要回檔的完整玩家數(shù)據(jù)。19云數(shù)據(jù)庫解決方案 AlibabaCloudDatabaseSolutions 20192操作流程與關(guān)鍵步驟購買DBS備份實(shí)例和相應(yīng)存儲(chǔ)備份任務(wù)配置中設(shè)置秒級(jí)恢復(fù)當(dāng)需要回檔時(shí),選擇要恢復(fù)的時(shí)間點(diǎn),發(fā)起秒級(jí)恢復(fù)數(shù)據(jù)任務(wù)獲取恢復(fù)數(shù)據(jù)的NFS掛載點(diǎn)自建立MySQL實(shí)例,直接掛在NFS的購買DBS備份實(shí)例和相應(yīng)存儲(chǔ)備份任務(wù)配置中設(shè)置秒級(jí)恢復(fù)當(dāng)需要回檔時(shí),選擇要恢復(fù)的時(shí)間點(diǎn),發(fā)起秒級(jí)恢復(fù)數(shù)據(jù)任務(wù)獲取恢復(fù)數(shù)據(jù)的NFS掛載點(diǎn)自建立MySQL實(shí)例,直接掛在NFS的查詢需要回檔用戶數(shù)據(jù)秒級(jí)恢復(fù)數(shù)據(jù)保存的存儲(chǔ)池,受限于IMSQL的查詢,不可作為線上生產(chǎn)庫使用。5掉線問題應(yīng)對(duì)方案5掉線問題應(yīng)對(duì)方案ClientClient1方案概述1持就是一個(gè)典型的例子。一旦到數(shù)據(jù)庫連接發(fā)生閃斷,由于應(yīng)用沒有很好的連接探活和重試機(jī)制,就會(huì)導(dǎo)致玩家與數(shù)據(jù)庫失去連接,直接現(xiàn)象就是全服玩家批量掉線,這對(duì)游戲運(yùn)營商HA切換或變配操作都會(huì)導(dǎo)致應(yīng)用到數(shù)據(jù)庫連接閃斷,屬于正常運(yùn)維現(xiàn)象,需要給游戲服務(wù)端屏蔽掉這種閃斷。PlarBPlarBXHA

PolarDB-X節(jié)點(diǎn)HAPolarDB只讀節(jié)點(diǎn)PolarDB主節(jié)點(diǎn)ProxyProxyHAPolarDB只讀節(jié)點(diǎn)PolarDB主節(jié)點(diǎn)ProxyProxyPolarDB-X節(jié)點(diǎn)RDS備實(shí)例RDS主實(shí)例2操作流程與關(guān)鍵步驟購買云原生數(shù)據(jù)庫PolarDB或PolarDB-X,無需特殊配置,應(yīng)用直接連接使用即可具備數(shù)據(jù)庫底層變更防閃斷能力。云數(shù)據(jù)庫防閃斷能力,僅能保證數(shù)據(jù)庫底層變更不會(huì)影響到游戲應(yīng)用,不影響玩家體驗(yàn),但應(yīng)用到數(shù)據(jù)庫的網(wǎng)絡(luò)存在抖動(dòng)、閃斷的可能性,應(yīng)用依然需要考慮自己的數(shù)據(jù)庫探活和短線重連機(jī)制。AlibabaCloudDatabaseSolutions 226游戲買量?jī)?yōu)化方案26游戲買量?jī)?yōu)化方案1方案概述1T而廣告、買量分析需要數(shù)據(jù)分析技術(shù),很多游戲客戶缺乏大數(shù)據(jù)技術(shù)和人才的儲(chǔ)備,短期難以落地,需要易于上手,又易于落地的短平快數(shù)據(jù)分析方案。阿里云數(shù)據(jù)庫提供游戲廣告實(shí)時(shí)運(yùn)營分析平臺(tái):

采用RDS(或PolarDB)實(shí)例和ADBDTS在二者間建立數(shù)據(jù)同步鏈路根據(jù)具體業(yè)務(wù)需求,在Quick中創(chuàng)建相應(yīng)過濾條件,展示表單購買云上報(bào)表工具QuickBI.將ADB高性能庫和大容量作為其數(shù)據(jù)源用DLA將ADB高性能庫和中數(shù)據(jù)寫入到ADB大容量庫根據(jù)具體業(yè)務(wù)需求,在Quick中創(chuàng)建相應(yīng)過濾條件,展示表單購買云上報(bào)表工具QuickBI.將ADB高性能庫和大容量作為其數(shù)據(jù)源用DLA將ADB高性能庫和中數(shù)據(jù)寫入到ADB大容量庫購買數(shù)據(jù)庫分析DLA,創(chuàng)建賬號(hào),創(chuàng)建外部表,創(chuàng)建schema分別指向ADB高性能庫、大容量庫,創(chuàng)建ADB外部表配置數(shù)據(jù)投遞,驗(yàn)證投遞結(jié)果購買日志服務(wù)Project和Logstror.將日志數(shù)據(jù)接入日志服務(wù)\h/acts/best-practice/preview?id=572960高并發(fā)低延遲分析數(shù)據(jù)清洗、數(shù)據(jù)分析(歷史數(shù)據(jù))ADB大存儲(chǔ)庫ADB高并發(fā)低延遲分析數(shù)據(jù)清洗、數(shù)據(jù)分析(歷史數(shù)據(jù))ADB大存儲(chǔ)庫ADB高性能庫DTS數(shù)據(jù)傳輸服務(wù)QuickBILogtailECSECSRDSMySQLRDSMySQL日志服務(wù)海量日志DLA日志服務(wù)海量日志DLAOSSADBDAU等數(shù)據(jù),為廣告投放效果提供有力在線決策保障。(分鐘級(jí)數(shù)據(jù)湖分析DLA、ADB高性能庫和大容量庫實(shí)現(xiàn)了數(shù)據(jù)冷、溫、熱三級(jí)分層,在充分滿足各層數(shù)據(jù)分析效率同時(shí),有效降低了客戶整體數(shù)據(jù)存儲(chǔ)成本。DLA和ADB兼容標(biāo)準(zhǔn)SQL,沒有接觸過大數(shù)據(jù)的研發(fā)人員可以輕松上手,完成平臺(tái)開發(fā)。

開放世界游戲并非是一個(gè)獨(dú)立的游戲類型,而是近年來越來越受歡迎的一種游戲設(shè)計(jì)。在之前的網(wǎng)絡(luò)游戲中,游戲看似宏大,但數(shù)據(jù)庫中并不需要存儲(chǔ)龐大的環(huán)境數(shù)據(jù),因?yàn)榄h(huán)境是設(shè)定好的,不會(huì)因玩家行為而改變,即靜態(tài)環(huán)境,動(dòng)態(tài)玩家。在之前的游戲模式中,數(shù)據(jù)庫僅需要存儲(chǔ)存儲(chǔ)量較小,且研發(fā)工程師對(duì)單機(jī)數(shù)據(jù)庫的能力不會(huì)做樂觀評(píng)估,會(huì)通過壓縮設(shè)計(jì)師的數(shù)據(jù)實(shí)體規(guī)模來控制數(shù)據(jù)量,避免數(shù)在開放世界游戲中,環(huán)境數(shù)據(jù)是龐大而可變的,留給玩家充分探索和互動(dòng)的空間。最具代表性的就是大獲成功的主機(jī)游戲《原神》。這是一個(gè)建立在多層系統(tǒng)之上的巨大開放世界,發(fā)現(xiàn)不同的系統(tǒng)之間究竟如何交互的過程充滿著驚喜和樂趣。

這種開放世界設(shè)計(jì)擴(kuò)展到網(wǎng)絡(luò)游戲中,必然帶來海量數(shù)據(jù)的復(fù)雜存儲(chǔ)需求:數(shù)據(jù)庫會(huì)存儲(chǔ)更多的數(shù)據(jù),游戲內(nèi)環(huán)境不再是靜態(tài)的貼圖,而會(huì)隨玩家行為影響而時(shí)時(shí)發(fā)生變化,并需要被記錄下來,這就需要彈性數(shù)據(jù)庫如PolarDB。游戲應(yīng)用與數(shù)據(jù)庫交互會(huì)變的更,QPS、并發(fā)壓力都會(huì)變大,這就需要云原生分布式數(shù)據(jù)庫PolarDB-X。游戲空間的擴(kuò)大,會(huì)有接近現(xiàn)實(shí)世界的復(fù)雜定位場(chǎng)景,可能需要時(shí)空數(shù)據(jù)庫存儲(chǔ)地理位置。更繁雜的游戲內(nèi)社交關(guān)系可能需要圖GDB來支持。AlibabaCloudDatabaseSolutions 24方案優(yōu)勢(shì)數(shù)據(jù)管理DMS數(shù)據(jù)庫開發(fā)者工作臺(tái)企業(yè)數(shù)據(jù)庫研發(fā)管理套件OLTPNoSQL產(chǎn)OLAPDTS做為數(shù)據(jù)總線,可以實(shí)現(xiàn)數(shù)據(jù)順暢流動(dòng);DMS幫助構(gòu)建完整數(shù)據(jù)庫研發(fā)流程,同時(shí)保障內(nèi)部數(shù)據(jù)安全;DAS數(shù)據(jù)管理DMS數(shù)據(jù)庫開發(fā)者工作臺(tái)企業(yè)數(shù)據(jù)庫研發(fā)管理套件結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)訪問跨實(shí)例查詢結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)訪問跨實(shí)例查詢數(shù)據(jù)庫實(shí)驗(yàn)室規(guī)則引擎流程管控權(quán)限管控任務(wù)管控實(shí)時(shí)數(shù)據(jù)處理緩存/KV數(shù)據(jù)關(guān)系數(shù)據(jù) 文檔數(shù)據(jù)圖數(shù)據(jù)數(shù)據(jù)緩存Redis/Memcache時(shí)序/時(shí)空數(shù)據(jù)TSDB/InfluxDB關(guān)系型數(shù)據(jù)庫RDSAliSQL/SQLServer/PG云原生數(shù)據(jù)庫POLARDBMySQL/PG/Oracle在線分析數(shù)據(jù)戶服務(wù)DataLakeAnalytics分析型數(shù)據(jù)庫:交互式在線分析 列式分析數(shù)據(jù)庫AnalyticDBClickhouse云外數(shù)據(jù)庫MySQL/MariaDB數(shù)據(jù)上云SQLServer 數(shù)據(jù)同步與傳輸DTS Oracle 混合云數(shù)據(jù) DB2 同步PostgreSQL Redis DTS數(shù)據(jù)同步/分發(fā) MongoDB ... 數(shù)據(jù)庫備份DBS海量數(shù)據(jù)存儲(chǔ)HBase圖數(shù)據(jù)GDB文檔型數(shù)據(jù)MongoDB分布式擴(kuò)展DRDS在線應(yīng)用時(shí)序/時(shí)空數(shù)據(jù)(loT、監(jiān)控、時(shí)空信息)智能優(yōu)化異常恢復(fù)安全保護(hù)彈性調(diào)度監(jiān)控大盤混合云管理數(shù)據(jù)庫自治服務(wù)DAS智能優(yōu)化異常恢復(fù)安全保護(hù)彈性調(diào)度監(jiān)控大盤混合云管理針對(duì)游戲行業(yè)不同場(chǎng)景在使用數(shù)據(jù)庫過程中遇到的挑戰(zhàn),阿里云數(shù)據(jù)庫已經(jīng)有了成熟的應(yīng)對(duì)之策:阿里云數(shù)據(jù)庫產(chǎn)品種類豐富,可結(jié)合細(xì)分游戲類型,如全球同服游戲,以及具體業(yè)務(wù)場(chǎng)景,如游戲新開服,設(shè)計(jì)從緩存到關(guān)系型數(shù)據(jù)庫的完整全球數(shù)據(jù)同步方案,供用戶實(shí)施。充分利用云上數(shù)據(jù)庫資源彈性的優(yōu)

勢(shì),PolarDB計(jì)算存儲(chǔ)層分離,可在分鐘級(jí)別快速升配或增加只讀節(jié)點(diǎn);MongoDB底層存儲(chǔ)采用云盤架構(gòu),不受單機(jī)容量限制,這些都能用來應(yīng)對(duì)游戲新開服等壓力場(chǎng)景。針對(duì)游戲合服場(chǎng)景,可利用DLA跨數(shù)據(jù)庫實(shí)例、跨數(shù)據(jù)庫類型對(duì)數(shù)據(jù)進(jìn)行沖突分析,預(yù)先處理沖突數(shù)據(jù);而DTS可實(shí)現(xiàn)數(shù)據(jù)全量增量平滑遷

移,整個(gè)遷移過程游戲業(yè)務(wù)無感知,同時(shí)還具備遷移鏈路高可用、斷點(diǎn)續(xù)傳和數(shù)據(jù)完整性校驗(yàn)?zāi)芰Α@迷粕洗鎯?chǔ)資源優(yōu)勢(shì),構(gòu)建基于快(可選服務(wù)可在分鐘級(jí)拉起一份歷史數(shù)據(jù)快照,供客戶快速查詢數(shù)據(jù),進(jìn)行定向數(shù)據(jù)回檔恢復(fù)。25 云數(shù)據(jù)庫解決方案 AlibabaCloudDatabaseSolutions 26客戶案例1心動(dòng)網(wǎng)絡(luò)1客戶感言1“PolarDB提供高性能讀寫能力,100MySQL,使得業(yè)務(wù)可以無縫100/硬件故障導(dǎo)致服務(wù)端重啟時(shí)業(yè)務(wù)的快速恢復(fù)。”2案例背景2心動(dòng)網(wǎng)絡(luò),國內(nèi)極具知名度的游戲公司,中國互聯(lián)網(wǎng)百強(qiáng)企業(yè)。旗下業(yè)務(wù)涉及游戲研發(fā)運(yùn)營、動(dòng)畫制作、偶像娛樂等多個(gè)產(chǎn)業(yè)。2009年起,公司開始打造心動(dòng)網(wǎng)絡(luò)的自主品牌,致力于網(wǎng)頁及移動(dòng)客戶端游戲的研發(fā)與運(yùn)營。

游戲運(yùn)維發(fā)布、游戲服務(wù)端軟/硬件故障導(dǎo)致服務(wù)端重啟,需要數(shù)據(jù)庫支撐更快的數(shù)據(jù)讀取能力,以實(shí)現(xiàn)業(yè)務(wù)的快速恢復(fù)。3業(yè)務(wù)架構(gòu)3心動(dòng)網(wǎng)絡(luò)采用PolarDB分布式云原生數(shù)據(jù)庫方案構(gòu)建了全部業(yè)務(wù)系統(tǒng):PolarDB支持處理海量大數(shù)據(jù),同時(shí)具備高并發(fā)、高可用和很強(qiáng)的彈性伸縮能力;PolarDB特有的高性能讀能力,有效支撐游戲服務(wù)層的因變更、異常導(dǎo)致的服務(wù)端重啟業(yè)務(wù)快速恢復(fù)。

游戲服務(wù)游戲服#2游戲服務(wù)游戲服#2游戲服務(wù)ECS ECS PolarDBPolarDB集群

游戲服務(wù)游戲服務(wù)游戲服務(wù)游戲服務(wù)………… ECSPolarDB集群PolarDB集群PolarDB集群PolarDB集群游戲服#n為支持游戲業(yè)務(wù)快速出海,游戲發(fā)行TAPTAP游戲社區(qū)全球化運(yùn)營與交付,需要支撐全球化業(yè)務(wù)的統(tǒng)一部署。特別是東南亞人口密度較大的地PolarDB集群游戲服#n客戶服務(wù)于國內(nèi)、東南亞和歐美等地人口大國時(shí),在活動(dòng)峰值時(shí)需要支撐100萬級(jí)玩家同時(shí)在線的高并發(fā)壓力。

業(yè)務(wù)效果4PolarDB為千萬級(jí)用戶在線手游保駕護(hù)航。4優(yōu)良的游戲體驗(yàn)基于存儲(chǔ)計(jì)算分離架構(gòu),所有實(shí)例都帶有一主一只讀節(jié)點(diǎn),提供3倍于便于新開服以及應(yīng)用彈性擴(kuò)容。在游戲版本發(fā)布、服務(wù)端重啟等場(chǎng)景可以大大縮短

維護(hù)時(shí)間,又確保在極端情況下,不會(huì)因?yàn)橛螒蚍?wù)端軟、硬件故障造成服務(wù)恢復(fù)過慢而影響玩家體驗(yàn)。7*24高可用服務(wù)數(shù)據(jù)采用三副本一致性存儲(chǔ),很好地保證了數(shù)據(jù)的可靠性。同時(shí)在主實(shí)例發(fā)生故障的時(shí)候,系統(tǒng)能在短時(shí)間(30s-60s)內(nèi)完成快速切換,確保在線業(yè)務(wù)能夠在保

證數(shù)據(jù)完整性的同時(shí)快速恢復(fù)以提供正常的服務(wù)。豐富的業(yè)務(wù)支持5.6,完全兼容各種生態(tài)和中間件開源工具,非常方便游戲歷史戰(zhàn)績(jī)、游2某游戲公司2某游戲公司1客戶感言1“ADB快速地打造新一代游戲發(fā)行實(shí)時(shí)數(shù)據(jù)運(yùn)營2案例背景2該客戶是一家獨(dú)特且創(chuàng)新的游戲公司,目前在全球已有超過1億的手機(jī)游戲用戶。游戲領(lǐng)域的競(jìng)爭(zhēng)非常激烈,在互聯(lián)網(wǎng)高速增長(zhǎng)的同時(shí),流量成本不斷升高,市場(chǎng)營銷開始往精細(xì)化發(fā)展。

從而業(yè)務(wù)上要求游戲運(yùn)營平臺(tái)能夠做3搶先一步預(yù)測(cè)。針對(duì)上述業(yè)務(wù)挑戰(zhàn),客戶廣告大數(shù)據(jù)分析部門搭建了以系為生態(tài)核心的大數(shù)據(jù)架構(gòu),用于解決實(shí)

然而采用上述架構(gòu)和數(shù)據(jù)流后,隨著數(shù)據(jù)量的迅猛增長(zhǎng)以及業(yè)務(wù)的要求越來越高,存在如下問題:,有不小的學(xué)習(xí)與維護(hù)成本。o作為直接查詢的實(shí)時(shí)計(jì)算uceDataSoThirdDataServeruceDataSoThirdDataServerThirdSpreadingPlatformH5

業(yè)務(wù)架構(gòu)3針對(duì)上述業(yè)務(wù)挑戰(zhàn)和架構(gòu)遇到的痛點(diǎn),客戶大數(shù)據(jù)團(tuán)隊(duì)開始嘗試針對(duì)架構(gòu)和產(chǎn)品選型進(jìn)行考察,先后考察和嘗試KylinDruidKylin是預(yù)處理,并非實(shí)時(shí),查詢模式也比較固rudSQL支持不好、關(guān)聯(lián)性查詢不方便以及不支持查明細(xì)等等問題,最終與數(shù)據(jù)庫架構(gòu)師團(tuán)隊(duì)一起考察和POC了AnalyticDBforMySQL產(chǎn)品,體驗(yàn)到了AnalyticDB的快、靈活、易用、規(guī)模擴(kuò)展和高并發(fā)的優(yōu)點(diǎn)特性,成功地打造了圍AnalyticDBforMySQL為核心的新一代游戲廣告實(shí)時(shí)運(yùn)營分析平臺(tái)。3原始數(shù)據(jù)NginxAccessFiles原始數(shù)據(jù)NginxAccessFiles前端分析Cache系統(tǒng)PolarDBPrestoPrestoHiveConnectorHIverExternalTableDataafterETLHadoopLogstashKafkagolangAd/APPEventData前端分析Cache系統(tǒng)PolarDBPrestoPrestoHiveConnectorHIverExternalTableDataafterETLHadoopLogstashKafkagolangAd/APPEventData

原始數(shù)據(jù)歸因后數(shù)據(jù)預(yù)計(jì)算DTSDTS實(shí)時(shí)查詢ADBC8ADBS8N實(shí)時(shí)查詢ADBC8ADBS8NCache預(yù)計(jì)算查詢ProfessionalDataDapDataDashboard業(yè)務(wù)關(guān)聯(lián)查詢ProfessionalDataDapDataDashboard4業(yè)務(wù)效果4通過采用“PolarDB+ADB大存ADB高性能”產(chǎn)品組合打造出新一代游戲買量市場(chǎng)實(shí)時(shí)數(shù)據(jù)運(yùn)營分析平臺(tái),云原生數(shù)據(jù)處理、分析閉環(huán),實(shí)現(xiàn)了高效的游戲數(shù)據(jù)運(yùn)營,助力客戶手游市場(chǎng)雄踞海外和國內(nèi)。分析數(shù)據(jù)的實(shí)時(shí)性提升幫助用戶更好分析更好地指導(dǎo)業(yè)務(wù)開展。在構(gòu)建好倍的性能提升,極大的提升了業(yè)務(wù)體基于玩家行為日志表日益增長(zhǎng),日增長(zhǎng)過億數(shù)據(jù)量,通過ADB存儲(chǔ)密集型實(shí)例進(jìn)行存儲(chǔ)和分析,有效地降低的客戶的總體使用成本,總成本下降高達(dá)300%;

3某游戲公司3某游戲公司1案例背景1專業(yè)的游戲制作團(tuán)隊(duì)、先進(jìn)的游戲理念以及阿里云的技術(shù)支持成為這家游戲創(chuàng)業(yè)公司成功逆襲的神器。公司在發(fā)展過程中面臨以下業(yè)務(wù)需求:提供全面的游戲運(yùn)營指標(biāo)分析功能:全面提高游戲開發(fā)者的日常數(shù)據(jù)運(yùn)營工作效率,不僅提供付費(fèi)用戶、付費(fèi)率、付費(fèi)金額和用戶生命周期價(jià)值等更加精細(xì)化的運(yùn)營指標(biāo),游戲開發(fā)者可以更加深入,提供有效分析渠道效果,使每分錢都花在刀刃上:實(shí)時(shí)的分渠道數(shù)據(jù)統(tǒng)計(jì)可以監(jiān)測(cè)到不同渠道用戶的增長(zhǎng)、活快速的分析出投資回報(bào)率,讓開發(fā)者

實(shí)時(shí)入庫高并發(fā)低延遲分析DataWorksADBQuickBIOSS數(shù)據(jù)投遞DataWorks(歷史數(shù)據(jù))自動(dòng)投遞Logtail海量日志用戶登錄/注冊(cè)信息工具服務(wù)在線業(yè)務(wù)日志服務(wù)處理分析結(jié)果回流ECSDTS數(shù)據(jù)傳輸服務(wù)Mysql高規(guī)格SQLDLAOSSECSECSECSADB大存儲(chǔ)庫“ADB高性能+ADB大存儲(chǔ)+DLA”形成數(shù)據(jù)分析閉環(huán)ADB高性能庫:RDS-DTS)玩家登錄/注冊(cè)實(shí)時(shí)監(jiān)控,實(shí)現(xiàn)展現(xiàn)新增玩家&RDS獨(dú)占10min->ADB3s)ADB大存儲(chǔ)庫:(日志采集投遞)玩家行為分析,圈選高價(jià)值玩家,通過打點(diǎn)信息分析指導(dǎo)游戲研發(fā)優(yōu)化(百毫秒DLA數(shù)據(jù)湖:(OSS數(shù)據(jù)投遞)將OSS日志數(shù)據(jù)“T+1”投遞到ADB大存儲(chǔ)庫進(jìn)行海量熱數(shù)據(jù)分析,日投遞量1TB+OSS數(shù)據(jù)分析)將OSS日志數(shù)據(jù)(含玩家行為歷史、API舊志)進(jìn)行清洗加工,日掃描量5TB+

對(duì)渠道的評(píng)估更加準(zhǔn)確。對(duì)付費(fèi)用戶追蹤分析,了解付費(fèi)用戶的習(xí)慣:針對(duì)付費(fèi)用戶群,通過簡(jiǎn)單

易懂的數(shù)據(jù)分析模型和圖表,跟蹤付更好的反映付費(fèi)用戶在整個(gè)生命周期細(xì)致分析玩家游戲行為,改進(jìn)產(chǎn)品體驗(yàn),提高游戲收益:關(guān)卡、道具、消費(fèi)行為分析的功能可以了解道具和物品在使用過程中使用和消耗的總量以及趨勢(shì),開發(fā)者可以借此來做到恰到

好處的數(shù)值平衡設(shè)計(jì),也可充分利用數(shù)據(jù)分析的結(jié)果來幫助開發(fā)者優(yōu)化游戲內(nèi)付費(fèi)商品的收益。2業(yè)務(wù)架構(gòu)2構(gòu)建了以“ADB+DLA”為融合數(shù)據(jù)倉庫分析、以“RedisRDS”為實(shí)時(shí)高并發(fā)在線業(yè)務(wù)、以“DTS+DMS”為平滑工具服務(wù)的數(shù)據(jù)庫架構(gòu)。31 云數(shù)據(jù)庫解決方案 AlibabaCloudDatabaseSolutions 323業(yè)務(wù)效果 附錄針對(duì)玩家新增設(shè)備、新增玩家的實(shí)時(shí)RDSADB103基于玩家登陸注冊(cè)信息單表記錄數(shù)已經(jīng)高達(dá)數(shù)十億,單表數(shù)據(jù)量已經(jīng)高達(dá)TB級(jí)別,通過ADB高性能實(shí)例進(jìn)行秒級(jí)(<3)DAU以及玩家活躍狀態(tài)等數(shù)據(jù),為游戲廣告投放效果基于玩家行為日志表記錄數(shù)已經(jīng)高達(dá)數(shù)百億,單表數(shù)據(jù)量已經(jīng)高達(dá)百TBADB細(xì)致分析玩家游戲行為,有效地支撐了對(duì)產(chǎn)品改進(jìn)體驗(yàn)的分析,提高游戲基于進(jìn)行海量歷史數(shù)據(jù)對(duì)比分析,針對(duì)游戲廣告買量投放效果5分鐘刷新一次投放效果展現(xiàn),更加全面、快速的分析出投資回報(bào)率,使得對(duì)渠道的

術(shù)語表ARPU:每用戶平均收入,是一個(gè)時(shí)間段內(nèi)運(yùn)營商從每個(gè)用戶所得到的收入,一般是按照月來計(jì)算。合服:游戲分區(qū)分服架構(gòu)下,當(dāng)游戲進(jìn)入平穩(wěn)期后,不同服務(wù)器(可能是邏輯概念)上玩家會(huì)減少,出于資源利用率考同時(shí)也讓單位服務(wù)器內(nèi)玩家密度變大,帶來更好玩家間交互體驗(yàn)。bug游戲數(shù)據(jù)損壞,需要部分或全部恢復(fù)到之前正常情況下某個(gè)時(shí)間點(diǎn)的數(shù)據(jù)狀態(tài),玩家的感受會(huì)是最近達(dá)到的裝備不見了,完成的任務(wù)顯示尚未完成等等。買量:游戲的獲客行為,一般是在各大渠道發(fā)布廣告,吸引玩家下載游戲,進(jìn)行游玩,完成轉(zhuǎn)化,通過在渠道花錢投放廣告獲得玩家客戶,所以叫買量。

數(shù)據(jù)并表:就是將原來位于不同數(shù)據(jù)表中數(shù)據(jù)匯總存儲(chǔ)到一張數(shù)據(jù)表中,這些數(shù)據(jù)表可能位于不同的數(shù)據(jù)庫實(shí)例。RPO:恢復(fù)點(diǎn)目標(biāo),在故障發(fā)生后,數(shù)據(jù)能夠恢復(fù)到的時(shí)間點(diǎn),也反映著業(yè)務(wù)所能容忍的數(shù)據(jù)丟失量。RTO:恢復(fù)時(shí)間目標(biāo),在故障發(fā)生后,數(shù)據(jù)恢復(fù)到預(yù)期狀態(tài)所能承受的最長(zhǎng)時(shí)間。HA切換:數(shù)據(jù)庫的高可用特性,比如數(shù)據(jù)庫是主備架構(gòu),平時(shí)只有主實(shí)例對(duì)外提供服務(wù),備實(shí)例從主實(shí)例同步數(shù)據(jù),一旦主實(shí)例故障,HA切換后備實(shí)例代替主實(shí)例對(duì)外提供服務(wù),保證數(shù)據(jù)庫服務(wù)連續(xù)性。DAU:日活躍用戶數(shù)。33 云數(shù)據(jù)庫解決方案

在線教育行業(yè)對(duì)數(shù)據(jù)庫的需求面對(duì)快速增長(zhǎng)的在線教育市場(chǎng),在線以及越來越多樣化的線上即時(shí)互動(dòng)場(chǎng)景。同時(shí),在線課堂一旦故障,影響面大且企業(yè)往往需要賠付用戶損失,數(shù)據(jù)容災(zāi)和多活功能必不可少。從在線教育的業(yè)務(wù)角度來看,對(duì)數(shù)據(jù)庫有以下需求:

課堂業(yè)務(wù)2在線課堂經(jīng)常帶來高并發(fā)讀寫請(qǐng)求,數(shù)據(jù)庫需要提高在應(yīng)對(duì)課堂峰值的高并發(fā)讀寫請(qǐng)求能力。同時(shí),在名師、名課效應(yīng)越來越明顯的背景下,需要保障最為核心的上課場(chǎng)景下數(shù)據(jù)的容災(zāi)和多活。在全球教全球?qū)W場(chǎng)景下,數(shù)據(jù)庫還需要滿足全球數(shù)據(jù)存取的需求。21運(yùn)營業(yè)務(wù)2在線教育十分看重營銷獲客活動(dòng),獲2

考試業(yè)務(wù)3在線教育經(jīng)常發(fā)生動(dòng)輒數(shù)萬人同時(shí)涌3在線教育行業(yè)數(shù)據(jù)庫解決方案

客前的活動(dòng)信息和獲客后的集中注冊(cè)和下單操作都是對(duì)數(shù)據(jù)庫的巨大沖擊。開始上課后,家長(zhǎng)都希望能第一時(shí)間看到學(xué)生上課的各項(xiàng)統(tǒng)計(jì)指標(biāo)。為了讓家長(zhǎng)放心,需要支撐并提升學(xué)生上課數(shù)據(jù)實(shí)時(shí)分析和運(yùn)營能力。

入的考試場(chǎng)景,需要保障題庫試卷快速生成,以及提交后的即時(shí)判分,數(shù)據(jù)庫將面臨頻繁的數(shù)據(jù)請(qǐng)求。同時(shí),為了實(shí)現(xiàn)豐富的互動(dòng)和教育手段,使用數(shù)據(jù)庫設(shè)計(jì)系統(tǒng)時(shí)需要考慮業(yè)務(wù)需求的不斷增長(zhǎng)。20132019比增長(zhǎng)2019367020192.32020Q1突破4.23億,K12(學(xué)前教育到大學(xué)教育之間群體)成為目前最具前景的教育市場(chǎng)。基于艾瑞咨詢2019年初的統(tǒng)計(jì),目前在線教育在整個(gè)教育市場(chǎng)中的占比不足%。相對(duì)于其他互聯(lián)網(wǎng)K12可靠的數(shù)據(jù)庫解決方案。1ECSRedis緩存1ECSRedis緩存HARDS主實(shí)例RDS備實(shí)例1方案背景典型的營銷獲客活動(dòng)場(chǎng)景包括發(fā)送名師講課、精品課程、特價(jià)課程給家長(zhǎng),吸引新客注冊(cè)老客購買。活動(dòng)發(fā)送覆蓋的用戶比較多,而且通常會(huì)集中發(fā)送。在獲客場(chǎng)景中,發(fā)送記錄批量落庫、同一時(shí)間大量用戶查詢活動(dòng)內(nèi)容、新客集中注冊(cè)、新老客戶下單,里面每一個(gè)環(huán)節(jié)都對(duì)數(shù)據(jù)庫帶來沖擊。在活動(dòng)發(fā)送和用戶參與、提交活動(dòng)信息方案架構(gòu)營銷活動(dòng)內(nèi)容一般固定后不會(huì)實(shí)時(shí)修改,內(nèi)容適合放在緩存中。同一時(shí)間大量用戶訪問活動(dòng)內(nèi)容,會(huì)表現(xiàn)為熱點(diǎn)KEY伴隨高并發(fā)場(chǎng)景;用戶一旦感興趣參與活動(dòng)后,即為獲客成功,用戶會(huì)訪問并跳轉(zhuǎn)到具體課程或者活動(dòng)內(nèi)容,填寫資料提交信息,此新用戶信息對(duì)客戶業(yè)務(wù)非常關(guān)鍵,需要落庫存儲(chǔ),形成對(duì)關(guān)系型數(shù)據(jù)庫的高并發(fā)讀寫。常用的典型架構(gòu)如上圖所示:2K12與解決方案教育行業(yè)從年齡維度可以劃分為學(xué)前教育、K12教育、大學(xué)教育、成人和職業(yè)教育,K12教育是最核心也是最具活力的群體。整個(gè)線上教育圍繞在線課堂展開,從時(shí)間維度可以劃分為課前、課中、課后這三個(gè)部分。K12教育的完整流程圖如下圖所示,整個(gè)流程場(chǎng)景非常多,這里只列舉與數(shù)據(jù)庫操作相關(guān)的場(chǎng)景,而每個(gè)場(chǎng)景對(duì)數(shù)據(jù)庫的依賴和需求也截然不同。課前課前·課表生成課程查詢·老師查詢選擇老師·特定時(shí)間約課搶課課中·IM消息互動(dòng)·課件發(fā)布和修改·直播錄制課后·據(jù)答題結(jié)果推薦復(fù)習(xí)課程·推薦相關(guān)興趣內(nèi)容和課程·實(shí)時(shí)成績(jī)排名和課程報(bào)表1營銷獲客 2課程制造 3下單約課 4.進(jìn)入教師 5.大小班課 6.知識(shí)鞏固6.答題評(píng)分·課堂互動(dòng)·IM消息互動(dòng)6.分析推薦·基于精準(zhǔn)畫像的用戶推薦·營銷活動(dòng)開展與數(shù)據(jù)記錄·營銷精品課程列表與讀取·開課教室查詢·集中打卡簽到·驗(yàn)證進(jìn)入教室·課件發(fā)布和修改·直播錄制AlibabaCloudDatabaseSolutions 38在線教育營銷活動(dòng)請(qǐng)求數(shù)據(jù)量小,查ss阿里云Redis企業(yè)版(Tair)的多線程性能增強(qiáng)模式,可以極大緩解突發(fā)大量請(qǐng)求導(dǎo)致的連接問題,高并發(fā)下運(yùn)行更穩(wěn)定。s解決營銷場(chǎng)景下,數(shù)十萬人同時(shí)請(qǐng)求KEY當(dāng)營銷獲客成功,目標(biāo)用戶確定參與

內(nèi)容,大量用戶集中提交信息,然后查詢,形成高并發(fā)讀寫數(shù)據(jù)庫場(chǎng)景。3關(guān)鍵步驟活動(dòng)開始之前,根據(jù)業(yè)務(wù)壓力評(píng)估結(jié)eds/olar3關(guān)鍵步驟活動(dòng)開始之前,根據(jù)業(yè)務(wù)壓力評(píng)估結(jié)eds/olarB。活動(dòng)開始后,根據(jù)數(shù)據(jù)庫的負(fù)載壓力,在控制臺(tái)發(fā)起增加云Redis/PolarDB只讀節(jié)點(diǎn),或者進(jìn)行彈性升配。活動(dòng)結(jié)束后,業(yè)務(wù)趨于平穩(wěn),評(píng)估數(shù)據(jù)庫壓力情況,在控制臺(tái)發(fā)起數(shù)據(jù)庫的降配或者減少只讀實(shí)例節(jié)點(diǎn)。其中的注意事項(xiàng)包括:Reis標(biāo)準(zhǔn)版本和集群版本都支持增加只讀節(jié)點(diǎn),但是集群版本使用讀寫分離會(huì)對(duì)起始規(guī)格有要求,需要32GB及以上規(guī)格。PlarB個(gè)只讀節(jié)點(diǎn),可直接開啟讀寫分離。PlarB如果數(shù)據(jù)量較大,建議購買存儲(chǔ)包。得益于n就增加只讀計(jì)算節(jié)點(diǎn)來分擔(dān)更多讀請(qǐng)求。如果主實(shí)例寫壓力也很大,同樣在n就快速實(shí)現(xiàn)規(guī)格快速彈性升配,不需要類似RDS或者自建活,此時(shí)會(huì)跳轉(zhuǎn)請(qǐng)求課程或者活動(dòng) 綜上考慮推薦優(yōu)選方案如下圖所:ProxyServersECSRead/writeHAMasterRedisSlaveRedisHAMasterRedisSlaveRedisRedisReadReplicaHAPolarDBHAPolarDBPolarDB只讀計(jì)算節(jié)點(diǎn)PolarDB存儲(chǔ) 2課程查詢解決方案2課程查詢解決方案1方案背景1老客戶或者新獲客戶都會(huì)頻繁的進(jìn)行課程查詢或者名師查詢,以篩選出最適合孩子的課程和老師,這些課程列表會(huì)分別存儲(chǔ)在緩存和落在數(shù)據(jù)庫中。由于課程查詢屬于在線上課之前用戶必然會(huì)進(jìn)行的操Q(mào)PS的場(chǎng)景。2方案架構(gòu)2必然需要極大的資源來支撐查詢請(qǐng)求,所以推薦放在緩存中,來為后端關(guān)系型數(shù)據(jù)edis+QPS代理層能實(shí)現(xiàn)對(duì)業(yè)務(wù)透明,方便業(yè)務(wù)快速迭代。一旦課程內(nèi)容變更,業(yè)務(wù)更新數(shù)據(jù)庫,同時(shí)刷新緩存,可以保障緩存、數(shù)據(jù)1.1.23關(guān)鍵步驟3緩存推薦使用阿里云eds(Tair)。Tair是多線程版本,在超大連接數(shù)和高并發(fā)情況下更能發(fā)揮多線程的優(yōu)勢(shì),特別是在極端情況下也能保持穩(wěn)定,可以避免緩存擊穿,流量打到數(shù)據(jù)庫引起業(yè)務(wù)雪崩等場(chǎng)景。

一般課程列表、名師介紹等等內(nèi)容生成KEY對(duì)應(yīng)的Vaule可能較大,高QSRdis2負(fù)載高導(dǎo)致網(wǎng)卡排隊(duì)等情況。RDS讀寫分離架構(gòu),在課程查詢場(chǎng)景中,讀寫比往往可:1,讀占據(jù)絕大部分,增加只讀實(shí)例能快速擴(kuò)展讀能力,而較少的DML操作也不用擔(dān)心只讀延遲問題。33約課報(bào)名解決方案1方案背景1由于在線教育不再依賴傳統(tǒng)教育方式的線下教室大小或者出行成本的限制,家長(zhǎng)和學(xué)生很容易就能直接和名師或者明星課程學(xué)習(xí),造成名師和明星課程一推出就瘋搶的局面,導(dǎo)致約課報(bào)名場(chǎng)景的高并發(fā)讀寫需求。對(duì)于一些頭部在線教育客戶來說,不管是一對(duì)一模式還是大小班課模式,約課場(chǎng)景都是壓力最大的場(chǎng)景。諸如周二的約課開放日,上百萬的課程預(yù)約會(huì)在很短的時(shí)間內(nèi)高并發(fā)完成。此外,大量的約課數(shù)據(jù)需要保留在數(shù)據(jù)庫中,所以這也是一個(gè)海量的數(shù)據(jù)存儲(chǔ)場(chǎng)景,同樣需求底層數(shù)據(jù)能夠切片存儲(chǔ),分散數(shù)據(jù),降低單庫存儲(chǔ)數(shù)據(jù),保證查詢性能。綜合來講,約課報(bào)名是高并發(fā)、高吞吐結(jié)合海量存儲(chǔ)的場(chǎng)景。

方案架構(gòu)2針對(duì)約課場(chǎng)景高并發(fā)讀寫、海量數(shù)據(jù)存儲(chǔ)的需求,且主線都是圍繞學(xué)生和老師這兩個(gè)維度展開的場(chǎng)景,非常需要和很適合分布式數(shù)據(jù)庫這樣同時(shí)具備scaeupscaeout數(shù)據(jù)庫具備很好的擴(kuò)展讀、寫和并發(fā)的能力,多個(gè)節(jié)點(diǎn)分散承載讀寫壓力,多個(gè)底層數(shù)據(jù)節(jié)點(diǎn)切片存儲(chǔ),數(shù)據(jù)打散。當(dāng)然,一旦采用分布式數(shù)據(jù)庫之后,數(shù)據(jù)的完整統(tǒng)計(jì)分析、業(yè)務(wù)的關(guān)聯(lián)查詢會(huì)造成不便利性,對(duì)業(yè)務(wù)設(shè)計(jì)有一定要求。因此,成熟的方案是形成匯聚庫,將前端多頁業(yè)務(wù)數(shù)據(jù)匯聚到一個(gè)“倉庫”中,將這些操作統(tǒng)一放在匯聚倉庫中進(jìn)行,能極大便利業(yè)務(wù)查詢需求和性能。針對(duì)約課場(chǎng)景高并發(fā)讀2

寫、海量數(shù)據(jù)存儲(chǔ)的需求,且主線都是圍繞學(xué)生和老師這兩個(gè)維度展開的場(chǎng)景,非常需要和很適合分布式數(shù)據(jù)庫這樣同時(shí)具備scale-up和scale-out能力的架構(gòu)來承載。分布式數(shù)據(jù)庫具備很好的擴(kuò)展讀、寫和并發(fā)的能力,多個(gè)節(jié)點(diǎn)分散承載讀寫壓力,多個(gè)底層數(shù)據(jù)節(jié)點(diǎn)切片存儲(chǔ),數(shù)據(jù)打散。當(dāng)然,一旦采用分布式數(shù)據(jù)庫之后,數(shù)據(jù)的完整統(tǒng)計(jì)分析、業(yè)務(wù)的關(guān)聯(lián)查詢會(huì)造成不便利性,對(duì)業(yè)務(wù)設(shè)計(jì)有一定要求。因此,成熟的方案是形成匯聚庫,將前端多頁業(yè)務(wù)數(shù)據(jù)匯聚到一個(gè)“倉庫”中,將這些操作統(tǒng)一放在匯聚倉庫中進(jìn)行,能極大便利業(yè)務(wù)查詢需求和性能。4上課場(chǎng)景解決方案4上課場(chǎng)景解決方案課表內(nèi)容緩存HAHAHAMasterNMaster2課表內(nèi)容緩存HAHAHAMasterNMaster2Master1ProxyServers基礎(chǔ)數(shù)據(jù)老師庫RDS學(xué)生庫RDS課表庫RDS約課庫1SlaveNSlave2Slave1ECS1課程可能持續(xù)幾個(gè)月甚至年許,課程記錄需要保留,在課程軌跡等業(yè)務(wù)場(chǎng)景中使用,形成海量課堂記錄存儲(chǔ),對(duì)數(shù)據(jù)庫帶來存儲(chǔ)壓力。方案背景在學(xué)生家長(zhǎng)購買課程并且成功預(yù)約方案背景在學(xué)生家長(zhǎng)購買課程并且成功預(yù)約后,K12完成,將進(jìn)入上課環(huán)節(jié)。具體場(chǎng)景為,學(xué)生在指定時(shí)間打開APP或者電腦客戶端,點(diǎn)擊“進(jìn)入教室”,開始既定課程學(xué)習(xí)。K12一對(duì)一模式、小班課(1V4/6/8)、大班課(最大可達(dá)萬人)。目前在線教育的整體發(fā)展趨勢(shì)是越來越多的向大班課模式靠攏。學(xué)生點(diǎn)擊進(jìn)入教室,需要給學(xué)生初始化教室,查詢當(dāng)前教室元數(shù)據(jù),生成教室(AI列出當(dāng)前教室課程重點(diǎn)等信息,打卡簽到等。同時(shí)一些重要的節(jié)點(diǎn)數(shù)據(jù),比如進(jìn)入教室、開始上課、課程問答、課堂每小節(jié)打卡等內(nèi)容,還需要有數(shù)據(jù)記錄,在課堂中或者課堂結(jié)束后生成課堂報(bào)表,來給到家長(zhǎng)端查看,讓家長(zhǎng)能實(shí)時(shí)或者匯總看到孩子的每堂課學(xué)習(xí)完成率和精彩問答等,這也是各在線教育機(jī)構(gòu)非常看中的一環(huán),讓家長(zhǎng)能很輕松的就實(shí)時(shí)掌握學(xué)生的學(xué)習(xí)狀態(tài),增加家長(zhǎng)體驗(yàn)和購買意愿。PolarDB集群DTS實(shí)時(shí)同步數(shù)據(jù)匯聚PolarDB集群3關(guān)鍵步驟3使用緩存數(shù)據(jù)庫來承載讀流量,降低關(guān)系型數(shù)據(jù)庫的負(fù)載,提升讀取響應(yīng)時(shí)間。通過緩存失效或者訂閱底層binlog的方式來實(shí)現(xiàn)緩存和數(shù)據(jù)庫存儲(chǔ)之間的一致性。數(shù)據(jù),按照學(xué)生或者老師維度進(jìn)行數(shù)載高并發(fā)和海量連接請(qǐng)求,理節(jié)點(diǎn)數(shù)據(jù)切片存儲(chǔ),也即分庫分表

DTS實(shí)時(shí)同步能力可以保障維持單庫在一個(gè)推薦以內(nèi)的合理范圍(一個(gè)或者多個(gè)分布式數(shù)據(jù)庫的數(shù)據(jù)可以通過數(shù)據(jù)同步工具實(shí)時(shí)同步到B集群中。B中性能保障優(yōu)異。這樣不僅解決數(shù)據(jù)拆分后的聚合問題,同時(shí)會(huì)N1形成聚合查詢庫,業(yè)務(wù)直接在一個(gè)庫中做業(yè)務(wù)查詢或者關(guān)聯(lián),避免跨庫等

上課作為在線教育最核心的場(chǎng)景,對(duì)容災(zāi)能力要求非常高,學(xué)生如果無法按時(shí)進(jìn)入教室開課,老師如果無法正常開始講課,隨著時(shí)間的推遲,會(huì)帶來非常大的經(jīng)濟(jì)損失,這對(duì)數(shù)據(jù)庫高可用、容災(zāi)雙活提出要求。在課堂互動(dòng)場(chǎng)景中,學(xué)生和老師的互動(dòng)、問答等,都會(huì)以消息的形式發(fā)送接收,對(duì)時(shí)效性和不丟消息要求非常eds內(nèi)容保留或者直接使用U/SB式實(shí)現(xiàn),對(duì)edis的流量帶寬和熱key性能帶來很大的挑戰(zhàn)。在大班課場(chǎng)景,聊天窗口聊天信息,ReisedsKEY,導(dǎo)致熱KEY和流量帶寬打滿等情況。2方案架構(gòu)2在一對(duì)一場(chǎng)景中,可能每小時(shí)都有數(shù)萬節(jié)課在開始和進(jìn)行,所以對(duì)數(shù)據(jù)庫的壓力更多的

5課后考試作業(yè)場(chǎng)景解決方案互動(dòng)消息&Master2ProxyServers聊天課堂互動(dòng)MasterNMaster1互動(dòng)消息&Master2ProxyServers聊天課堂互動(dòng)MasterNMaster1教室教室 課件 課堂信息直播地址MasterSlave1MasterSlave1MasterSlave1MasterSlave1課件庫教師庫直播錄制&轉(zhuǎn)碼RDSRDSRDS課堂庫PolarDB-X消息&記錄落庫RDSRDS3關(guān)鍵步驟3

1方案背景學(xué)生完成課堂學(xué)習(xí),正常結(jié)束后會(huì)通過試題、作業(yè)來體現(xiàn)課堂學(xué)習(xí)效果和鞏固課堂知識(shí)。考試作業(yè)是從海量題庫中按照當(dāng)前課堂打標(biāo)知識(shí)點(diǎn)關(guān)聯(lián)后提取出來,比如題庫中有和數(shù)學(xué)加法聯(lián)系相關(guān)的上萬道題,提取其中20道生成作業(yè)。答題的快速多樣性也是體現(xiàn)在線教育對(duì)比傳統(tǒng)線下統(tǒng)一試卷的優(yōu)勢(shì),不同學(xué)生答題各異,同一學(xué)生答題可多種難度,這增加了答題質(zhì)量和體驗(yàn),但是給數(shù)據(jù)庫帶來了頻繁的數(shù)據(jù)請(qǐng)求。作業(yè)在規(guī)定時(shí)間內(nèi)完成后,會(huì)判題評(píng)分,在作業(yè)答題完成后,會(huì)有更多難度讓學(xué)生挑戰(zhàn),對(duì)應(yīng)生成不同難度和關(guān)聯(lián)作業(yè),并在最終提交后,生成排名。在家長(zhǎng)端,家長(zhǎng)們也能方便的隨時(shí)查看學(xué)生的作業(yè)完成和評(píng)分排名情況。

方案架構(gòu)22題目難易度評(píng)估,這些場(chǎng)景,XX、阿里云

接入阿里云數(shù)據(jù)傳輸服務(wù)能夠方便、成熟的實(shí)現(xiàn)跨機(jī)房、跨ns)/場(chǎng)景中已經(jīng)實(shí)現(xiàn)集群方式打散請(qǐng)場(chǎng)1對(duì)于作業(yè)答題場(chǎng)景:錯(cuò)題率&難度分析BI抽取作業(yè)題生成試卷實(shí)時(shí)數(shù)倉輕量級(jí)OLAP抽取作業(yè)題生成試卷實(shí)時(shí)數(shù)倉輕量級(jí)OLAPRedisRDSADB分析家長(zhǎng)監(jiān)督判題評(píng)分試卷庫作業(yè)題庫PolarDB8.0PolarDBPolarDB對(duì)于排名場(chǎng)景:

1方案背景學(xué)生的課程報(bào)名、行為日志、上課、

方案架構(gòu)2在線數(shù)據(jù)大量在關(guān)系型數(shù)據(jù)庫中產(chǎn)2Sorted_Set_Class2Sorted_Set_Class1全國排名 班級(jí)排Sorted_Set_Class2Sorted_Set_Class1Sorted_Set_GLobalSorted_Set_GLobal3Sorted_Set_Class3關(guān)鍵步驟3Sorted_Set_Class3PolarDB的存儲(chǔ)計(jì)算分離架構(gòu),能保障單表億級(jí)別的時(shí)候依舊具備高并發(fā)低延遲的讀取和批量提交能力。PolarDB讀寫分離架構(gòu),新增只讀節(jié)點(diǎn)最多只需5Min,在定期大型班課場(chǎng)景,能在開始前幾分鐘快速彈性升配和擴(kuò)容,提升數(shù)據(jù)庫容量,日常保留較低規(guī)格。RedisSortedset數(shù)據(jù)結(jié)構(gòu),學(xué)生分?jǐn)?shù)數(shù)據(jù)寫入后天然

Class1Class1Class1Class1Class1Class1有序存儲(chǔ),非常適合排名場(chǎng)景。使用分析型數(shù)據(jù)庫ADB來承載諸如分析錯(cuò)題分布,以及統(tǒng)計(jì)答題率、錯(cuò)OLAP場(chǎng)景。同樣使用ADB數(shù)據(jù)庫構(gòu)建實(shí)時(shí)數(shù)倉,將試卷內(nèi)容、答題記錄等通過數(shù)據(jù)同DTSADB數(shù)據(jù)庫SQL語句簡(jiǎn)單快速的實(shí)現(xiàn)BI

簽到打卡、答題準(zhǔn)確率、排名等數(shù)據(jù),都以及課程推薦等場(chǎng)景的重要數(shù)據(jù)。例如,按照學(xué)生的錯(cuò)題分布,實(shí)時(shí)推薦學(xué)生課外讀物或者其他課程來鞏固知識(shí)點(diǎn)。隨著課程的推進(jìn),這些數(shù)據(jù)分析的實(shí)時(shí)性和靈活性是很多客戶考驗(yàn)分析質(zhì)量和分析結(jié)果轉(zhuǎn)換率的重要因素。建議在線數(shù)據(jù)OLTP的場(chǎng)景在關(guān)系型數(shù)據(jù)庫如MySQL、PolarDB中產(chǎn)生和查詢,而OLAP分析類的場(chǎng)景,特征如海量數(shù)據(jù)、復(fù)雜查詢、多表關(guān)聯(lián)和函數(shù)計(jì)算等,由專門的分析AnalyticDB來做實(shí)時(shí)分析,中DTS做數(shù)據(jù)實(shí)時(shí)流轉(zhuǎn),或者基于DataLakeAnalytics來匯聚多種數(shù)據(jù)源來做準(zhǔn)實(shí)時(shí)或者偏離線分析。基于以上OLTP、OLAP分離的思路設(shè)計(jì)分析場(chǎng)景,不影響在線業(yè)務(wù),也讓分析更實(shí)時(shí),數(shù)據(jù)價(jià)值化。

生,稱為熱數(shù)據(jù),通過DTS數(shù)據(jù)同步工具實(shí)時(shí)同步到分析型數(shù)據(jù)庫AnaytiDB來做實(shí)時(shí)分析。除此之外,在線數(shù)據(jù)的產(chǎn)生除了結(jié)構(gòu)化的數(shù)據(jù)庫數(shù)據(jù),還可以是半結(jié)構(gòu)化或者非結(jié)構(gòu)化的日志數(shù)據(jù)、消息數(shù)據(jù)、OSS文件,都可以匯聚到AnalyticDB,形成數(shù)倉來做分析。準(zhǔn)實(shí)時(shí)或者偏離線數(shù)據(jù),稱為溫?cái)?shù)據(jù)或者冷數(shù)據(jù),數(shù)據(jù)一般存放在日志、OSataLakeAnalytics數(shù)據(jù)湖來直接進(jìn)行分析或者清洗,不用再冗余一份數(shù)據(jù),將清洗后的結(jié)果直接輸出到比如報(bào)表或者業(yè)務(wù)AnalyticDBalyicDB的高性能查詢引擎進(jìn)一步做分析查詢。AlibabaCloudDatabaseSolutions 482方案架構(gòu)2在線數(shù)據(jù)大量在關(guān)系型數(shù)據(jù)庫中產(chǎn)生,稱為熱數(shù)據(jù),通過DTS數(shù)據(jù)同步工具實(shí)時(shí)同步到分析型數(shù)據(jù)庫AnalyticDB來做實(shí)時(shí)分析。除此之外,在線數(shù)據(jù)的產(chǎn)生除了結(jié)構(gòu)化的數(shù)據(jù)庫數(shù)據(jù),還可以是半結(jié)構(gòu)化或者非結(jié)構(gòu)化的日志數(shù)據(jù)、消息數(shù)據(jù)、OSSAnalyticDB,形成數(shù)倉來做分析。基于AnalyticDB實(shí)現(xiàn)OLTP、OLAP場(chǎng)景分離:

準(zhǔn)實(shí)時(shí)或者偏離線數(shù)據(jù),稱為溫?cái)?shù)據(jù)或者冷數(shù)據(jù),數(shù)據(jù)一般存放在日志、OSS存儲(chǔ)或者數(shù)據(jù)庫里,建議使用DataLakeAnalytics進(jìn)行分析或者清洗,不用再冗余一份數(shù)據(jù),將清洗后的結(jié)果直接輸出到比如報(bào)表或者業(yè)務(wù)系統(tǒng),也可以存儲(chǔ)到AnalyticDBAnalyticDB

3關(guān)鍵步驟,彈性能實(shí)現(xiàn)冷熱數(shù)據(jù)自存儲(chǔ)成本大量降低,保障查詢性能,同時(shí)計(jì)算資源和存儲(chǔ)資源分離,可以按業(yè)務(wù)需求和數(shù)據(jù)量選配組裝。計(jì)算的數(shù)據(jù)同步,選擇分布鍵,讓數(shù)據(jù)散

列在AnalyticDB分布式存儲(chǔ)里。創(chuàng)建數(shù)據(jù)湖可以對(duì)接多種數(shù)據(jù)庫和日志等存儲(chǔ),運(yùn)行為模式,在發(fā)生查詢的時(shí)候才計(jì)費(fèi),成本非常低,可以使用在數(shù)配置業(yè)務(wù)系統(tǒng)或者I系統(tǒng)連接DLA,結(jié)果數(shù)據(jù)寫入OLTPOLAP分離的設(shè)計(jì)理念數(shù)據(jù)庫隨需彈性擴(kuò)縮容數(shù)據(jù)庫隨需彈性擴(kuò)縮容最大支持88核,710G內(nèi)存,16PolarDBDTS數(shù)據(jù)實(shí)時(shí)同步工具分布式共享存儲(chǔ) 分布式共享存儲(chǔ)POLARSTOR POLARSTORPolarDB彈性數(shù)據(jù)庫集群 PolarDB彈性數(shù)據(jù)庫集日常 峰值PolarDBADB即席分析實(shí)時(shí)數(shù)據(jù)課程質(zhì)量 教學(xué)分析 用戶畫像云教材 云班課用戶體系最小支持2核,4G內(nèi)存,2個(gè)節(jié)點(diǎn)PolarDBAnalyticDB+DLA實(shí)現(xiàn)實(shí)時(shí)數(shù)倉: 數(shù)據(jù)清洗/數(shù)據(jù)分析

在線數(shù)據(jù)庫 日志服務(wù)DTS

消息數(shù)據(jù)客戶端消費(fèi)冷數(shù)據(jù)分析 (低頻) 數(shù)據(jù)產(chǎn)出數(shù)據(jù)處理回流OSS清洗數(shù)據(jù)寫入數(shù)倉OSS數(shù)據(jù)直接導(dǎo)入數(shù)倉OSS DLA AnalyticDB實(shí)時(shí)數(shù)倉數(shù)據(jù)處理回流OSS清洗數(shù)據(jù)寫入數(shù)倉OSS數(shù)據(jù)直接導(dǎo)入數(shù)倉方案優(yōu)勢(shì)阿里云數(shù)據(jù)庫以真實(shí)業(yè)務(wù)場(chǎng)景出發(fā),面對(duì)在線業(yè)務(wù)OLTP場(chǎng)景,提供了MySQL、PolarDB、PolarDB-X據(jù)庫類型,來面對(duì)高流量、高并發(fā)、超大連接、海量數(shù)據(jù)、低成本等不同業(yè)務(wù)場(chǎng)景訴求,配合讀寫分離、快速彈性擴(kuò)容等特性服務(wù)于前端業(yè)務(wù)。同時(shí)結(jié)合緩存來幫助數(shù)據(jù)庫承擔(dān)數(shù)據(jù)讀流量、緩存層也有讀寫分離、集群等豐富的架構(gòu)來支撐請(qǐng)求。此MongoDB、HBase等在日志、高寫入等場(chǎng)景大量應(yīng)用。實(shí)時(shí)數(shù)據(jù)處理緩存/KV數(shù)據(jù)關(guān)系數(shù)據(jù)文檔數(shù)據(jù)圖數(shù)據(jù)實(shí)時(shí)數(shù)據(jù)處理緩存/KV數(shù)據(jù)關(guān)系數(shù)據(jù)文檔數(shù)據(jù)圖數(shù)據(jù)e 據(jù) 圖數(shù)據(jù)GDBMySQL/MariaDBSQLServer Oracle DB2 PostgreSQL Redis MongoDB ··· 數(shù)據(jù)上云傳輸DTS據(jù)同步DTS數(shù)據(jù)同步/分發(fā)數(shù)據(jù)庫自治服務(wù)DAS列式分析數(shù)據(jù)庫ClickHouse云原生數(shù)據(jù)倉庫AnalyticDBDataLakeAnalytics數(shù)據(jù)戶服務(wù)在線云外數(shù)據(jù)庫數(shù)據(jù)庫備份DBS海量數(shù)據(jù)存儲(chǔ)HBase在線應(yīng)用數(shù)據(jù)管理DMS數(shù)據(jù)庫開發(fā)者工作臺(tái)企業(yè)數(shù)據(jù)庫研發(fā)管理套件規(guī)則引擎結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)訪問跨實(shí)例查詢數(shù)據(jù)庫實(shí)驗(yàn)室

分析場(chǎng)景,能幫助業(yè)務(wù)快速實(shí)現(xiàn)數(shù)據(jù)分析實(shí)時(shí)化。DTS作為數(shù)據(jù)流轉(zhuǎn)通道,云上已經(jīng)實(shí)現(xiàn)了多種數(shù)據(jù)來源流向多種數(shù)據(jù)存儲(chǔ)DMS幫助構(gòu)建起完整的數(shù)據(jù)庫研發(fā)發(fā)布流程和可自定義的權(quán)限管理、審計(jì)、流程審批機(jī)制,保障公司內(nèi)部數(shù)據(jù)安全,幫助研發(fā)和運(yùn)維更高效的使用數(shù)據(jù)庫,提升效率;DAS智能數(shù)據(jù)庫運(yùn)維管理系統(tǒng),能降低數(shù)據(jù)庫運(yùn)維負(fù)擔(dān),貼合業(yè)務(wù)場(chǎng)景,快速定位和發(fā)現(xiàn)解決問題。阿里云形成了從數(shù)據(jù)庫內(nèi)核到生態(tài)產(chǎn)品的完整閉環(huán),應(yīng)對(duì)不同業(yè)務(wù)場(chǎng)景和數(shù)據(jù)需求。流程管控權(quán)限管控任務(wù)管控

在線教育場(chǎng)景中對(duì)數(shù)據(jù)庫的挑戰(zhàn)尤為突出,阿里云數(shù)據(jù)庫經(jīng)過大量的實(shí)踐,形成場(chǎng)景化的解決方案來很好的支撐。針對(duì)營銷、查課等波峰波谷場(chǎng)景,非Bs據(jù)、集中查詢的場(chǎng)景s

對(duì)于廣告投放、課程質(zhì)量管理、課后實(shí)時(shí)統(tǒng)計(jì)匯總、營銷等場(chǎng)景,基于于數(shù)據(jù)層的多、跨、單向、雙向數(shù)據(jù)同步等架構(gòu)。智能優(yōu)化異常恢復(fù)安全保護(hù)彈性調(diào)度監(jiān)控大盤混合云管理智能優(yōu)化異常恢復(fù)安全保護(hù)彈性調(diào)度監(jiān)控大盤混合云管理客戶案例1智啟藍(lán)墨1智啟藍(lán)墨案例背景1智啟藍(lán)墨是一家智能互聯(lián)網(wǎng)教育公司,提供基于人工智能、云技術(shù)、大數(shù)據(jù)和移動(dòng)互聯(lián)技術(shù)研發(fā)推動(dòng)教學(xué)模式變革的智能云教學(xué)平臺(tái)。公司在發(fā)展過程中,面臨以下業(yè)務(wù)挑戰(zhàn):16TB10儲(chǔ)和性能都碰到瓶頸。業(yè)務(wù)和分析共用一份數(shù)據(jù),報(bào)表分析對(duì)在線業(yè)務(wù)影響越來越大。希望構(gòu)建用戶推薦平臺(tái)從而挖掘數(shù)據(jù)價(jià)值。2業(yè)務(wù)架構(gòu)2PlrB6B10

OLAP復(fù)雜查詢切換到AnalyticDB,OLTP、OLAP分離架構(gòu)。歷史數(shù)據(jù)歸檔HBase,上層構(gòu)建Spark,構(gòu)建用戶推薦場(chǎng)景。3業(yè)務(wù)效果3無需改造遷移到a,滿足支撐分離架構(gòu),復(fù)雜查詢業(yè)務(wù)從在線庫切換到分析庫,減少業(yè)務(wù)與分析相互影響。調(diào)整后基本無業(yè)

2猿輔導(dǎo)2猿輔導(dǎo)1案例背景1該國內(nèi)知名的K12直播課程平臺(tái)面臨的業(yè)務(wù)挑戰(zhàn)包括:數(shù)會(huì)瞬間激增,自建實(shí)例無時(shí)答題延時(shí)也從正常情況下的1秒之內(nèi)增長(zhǎng)到平均5秒,用戶答題體驗(yàn)急劇下降。據(jù)庫的2業(yè)務(wù)架構(gòu)2在核心業(yè)務(wù)系統(tǒng)中,借助云原生數(shù)據(jù)olarB快速彈性的能力,在業(yè)務(wù)的高峰期臨時(shí)增加計(jì)算節(jié)點(diǎn)的配置和集群規(guī)

縱向擴(kuò)展(計(jì)算節(jié)點(diǎn)升配/降配):得益于計(jì)算與存儲(chǔ)分離,PolarDB實(shí)例的計(jì)算節(jié)點(diǎn)可以單獨(dú)升高或者降低配置,而且整個(gè)升降配過程只需要5-10分鐘。橫向擴(kuò)展(/):由于存儲(chǔ)是共享的,因此增加只讀節(jié)點(diǎn)的過程不需要任何的數(shù)據(jù)copy,整個(gè)5-10節(jié)點(diǎn)后,PolarProxy可以動(dòng)態(tài)感知并自動(dòng)加入到讀寫分離后端的讀節(jié)點(diǎn)中,對(duì)于使用讀寫分離地址連接PolarDB的應(yīng)用程序無須任何改動(dòng)便可享受到更好的性能和吞吐。靈活的存儲(chǔ)空間管理:存儲(chǔ)空間支持按使用量后付費(fèi),每小時(shí)自動(dòng)結(jié)算;同時(shí)也支持更優(yōu)惠的存儲(chǔ)包方式。同時(shí),底層數(shù)據(jù)存儲(chǔ)池可以自動(dòng)動(dòng)態(tài)擴(kuò)容、平衡,避免存儲(chǔ)碎片和數(shù)據(jù)熱點(diǎn)。ADB數(shù)據(jù)倉庫PolarDB在線數(shù)據(jù)實(shí)時(shí)同步ADB數(shù)據(jù)倉庫PolarDB在線數(shù)據(jù)實(shí)時(shí)同步復(fù)雜查詢DTSPolarFS歷史數(shù)據(jù)&行為數(shù)據(jù)歸檔 擎 歷史數(shù)據(jù)歸檔SparkStreamingHBase歷史數(shù)據(jù)歸檔用戶推薦調(diào)整后架構(gòu)學(xué)生端作業(yè)數(shù)據(jù)老師課程& 行為數(shù)考試數(shù)據(jù)原有架構(gòu)場(chǎng)景剝離低成本商業(yè)營銷 PolarProxy 接入代理升配擴(kuò)容 PolarProxy 接入代理升配擴(kuò)容業(yè)務(wù)高峰期數(shù)據(jù)庫引擎降配縮容共享存儲(chǔ)PolarDBPolarStore平時(shí)周末術(shù)語表應(yīng)用程序3術(shù)語解釋3術(shù)語解釋OPS每秒對(duì)磁盤的讀寫次數(shù),一般業(yè)務(wù)查詢?cè)蕉嘣椒稚ⅲo法在內(nèi)存中直接命中),該指標(biāo)越大,也表示磁盤的讀寫壓力越大,出現(xiàn)指標(biāo)較高需要擴(kuò)容磁盤性能。QPS每秒鐘對(duì)數(shù)據(jù)庫產(chǎn)生的查詢次數(shù)。是評(píng)估數(shù)據(jù)庫壓力的重要指標(biāo),一般是秒為單位,比如單次查詢耗時(shí)50ms,有100個(gè)活躍連接在發(fā)生查詢,那么QPS等于1秒(1000ms)/50ms*100=2000。DML數(shù)據(jù)操作語句,包含增刪改,insert、update、delete。PUB/SUBRedis里消息的通信模式,PUB代表消息發(fā)送,SUB代表消息接收。OLAP聯(lián)機(jī)分析處理系統(tǒng),這里通常是指SQL語句相對(duì)復(fù)雜,以多維分析、報(bào)表、海量數(shù)據(jù)的業(yè)務(wù)場(chǎng)景。OLTP聯(lián)機(jī)事務(wù)處理系統(tǒng),這里通常是指業(yè)務(wù)對(duì)數(shù)據(jù)庫的請(qǐng)求以短平快的小請(qǐng)求為主,查詢簡(jiǎn)單,響應(yīng)要求高,請(qǐng)求量和并發(fā)量大。通過云原生數(shù)據(jù)庫PolarDB的使用,在幫忙客戶節(jié)約成本的同時(shí),又可以輕松應(yīng)對(duì)在線用戶流量激增的情況,也為用戶提供流暢的在線教學(xué)體驗(yàn)。業(yè)務(wù)角度,課程完成率從90%左右提升至100%。30便可臨時(shí)使系統(tǒng)具備百萬用戶并發(fā)訪問的能力。PlarBMyQLPlarB570%的成本支出。55 云數(shù)據(jù)庫解決方案大促面臨的技術(shù)挑戰(zhàn)線上的電商促銷從線下衍生而來,但比線下可以覆蓋更多用戶、場(chǎng)景、商品、主題和活動(dòng)。電商促銷活動(dòng)等級(jí)分為超大規(guī)模促銷、主題促銷和日常促銷,像雙并且在大促里面加入了很多新鮮的元素,11ISV大促不僅僅是對(duì)商家供應(yīng)鏈、物流、網(wǎng)絡(luò)

22連接風(fēng)暴數(shù)據(jù)庫的連接有限,同一時(shí)間創(chuàng)建過多連接會(huì)消耗大量的資源導(dǎo)致數(shù)據(jù)庫卡頓,影響數(shù)據(jù)庫穩(wěn)定性。在大量線程并發(fā)工作時(shí)線程調(diào)度工作過多,緩存失效,緩存查詢快,數(shù)據(jù)庫查詢慢,大量增刪改查請(qǐng)求到數(shù)據(jù)庫執(zhí)行,導(dǎo)致數(shù)據(jù)庫資源競(jìng)爭(zhēng)加劇、鎖沖突嚴(yán)重。上述問題又會(huì)加劇應(yīng)用和數(shù)據(jù)庫連接釋放慢,如何預(yù)防數(shù)據(jù)庫的連接風(fēng)暴,降低創(chuàng)建連接的代價(jià),穩(wěn)定大促營銷數(shù)據(jù)庫解決方案20091111大促業(yè)務(wù)的峰值和系統(tǒng)r9首次超過美國,成為全球最大的整體零售市場(chǎng)。2020年,零售業(yè)和其他傳統(tǒng)企業(yè)數(shù)字化轉(zhuǎn)型更r2ey,不僅把它作為一個(gè)關(guān)鍵的銷售時(shí)期,而且把它作11、99MySQL產(chǎn)品系列(RDSMySQL、PolarDBMySQL)的大促解決方案,幫助企業(yè)客戶輕松應(yīng)對(duì)大促,實(shí)現(xiàn)消費(fèi)者、平臺(tái)、商家、供應(yīng)商、物流等大促鏈路上的所有角色共贏。

、全社會(huì)協(xié)同能力的挑。 大促1海量訪問根據(jù)市場(chǎng)部分的推廣和引流、歷年雙11的經(jīng)驗(yàn),大促的起始時(shí)刻的峰值呈現(xiàn)接90所有核心鏈路的增刪改查都是在數(shù)據(jù)庫上操作,對(duì)數(shù)據(jù)庫有比較大的沖擊。如果數(shù)無法支付等。大促帶來的巨大流量意味著到數(shù)據(jù)庫里的查詢會(huì)比較多,同時(shí)緩存失效也會(huì)導(dǎo)致數(shù)據(jù)庫的并發(fā)查詢比較多。

持續(xù)地提供數(shù)據(jù)庫服務(wù)是數(shù)據(jù)庫需要應(yīng)對(duì)的問題之一。33SQLSQL問題大促期間數(shù)據(jù)庫既要滿足業(yè)務(wù)響應(yīng)時(shí)間又要最大化地提供QPS。數(shù)據(jù)庫系統(tǒng)通常被認(rèn)為是一個(gè)響應(yīng)者,需要處理所有接收到的請(qǐng)求。在大促高并發(fā)場(chǎng)景下,各方面資源大多數(shù)是被打滿的狀態(tài),數(shù)據(jù)庫高度擁堵,是不大可能實(shí)現(xiàn)低并發(fā)時(shí)的響SQLSQL的話可能導(dǎo)致系統(tǒng)資源耗盡,整個(gè)數(shù)據(jù)庫服務(wù)卡頓或不可服務(wù),最終導(dǎo)致業(yè)務(wù)損失。44熱點(diǎn)商品售賣所謂熱點(diǎn)就是比較火的商品,一上架就被秒殺的商品,這類商品通常在數(shù)據(jù)庫里是一行記錄,對(duì)于MySQLInnoDB引擎而言并發(fā)越高行鎖競(jìng)爭(zhēng)越激烈,單行更新的性能會(huì)越低,行鎖的競(jìng)爭(zhēng)又會(huì)數(shù)據(jù)庫層連接的堆積,連接的堆積又會(huì)拖慢整個(gè)數(shù)據(jù)庫,數(shù)據(jù)庫慢又會(huì)導(dǎo)致應(yīng)用釋放連接慢,進(jìn)而影響整個(gè)應(yīng)用集群。大促總結(jié)彈性縮容應(yīng)急預(yù)案實(shí)時(shí)監(jiān)控性能評(píng)測(cè)大促總結(jié)彈性縮容應(yīng)急預(yù)案實(shí)時(shí)監(jiān)控性能評(píng)測(cè)彈性擴(kuò)容性能優(yōu)化容量評(píng)估流程管理大促前大促中大促后1方案概述解決方案大促前需要做容量評(píng)估、性能優(yōu)化、

大促后需要做一些恢復(fù)動(dòng)作,做些總結(jié)。本文不再贅述。大促前的工作最多,花的時(shí)間最長(zhǎng),因?yàn)樾枰獜膹?fù)雜系統(tǒng)中梳理識(shí)別風(fēng)險(xiǎn)并提前規(guī)避或解決。22大促前的準(zhǔn)備工作1容量評(píng)估1把大促做為一個(gè)項(xiàng)目來看,風(fēng)險(xiǎn)管理檢查各方面系統(tǒng)資源是否能支撐大促峰值。大促前首先要確認(rèn)業(yè)務(wù)指標(biāo)(包括交易創(chuàng)建和交易支付),由于現(xiàn)在大多數(shù)平臺(tái)都是分布式的,各個(gè)業(yè)務(wù)模塊需要根據(jù)業(yè)務(wù)指標(biāo)換算成業(yè)務(wù)模塊的技術(shù)指標(biāo)和資源指標(biāo),然后根據(jù)該指標(biāo)為大促做準(zhǔn)備。在大促前可能需要多次優(yōu)化或擴(kuò)容動(dòng)作,比如:性能評(píng)測(cè)不通過,需要再進(jìn)行性能優(yōu)化;如果性能優(yōu)化已經(jīng)到位,需要擴(kuò)容后再做性能評(píng)測(cè)看能不能滿足業(yè)務(wù)指標(biāo)。容量評(píng)估的有效方法就是要做壓測(cè),可以單獨(dú)對(duì)實(shí)例做基準(zhǔn)壓測(cè)或基于真實(shí)場(chǎng)景的壓測(cè)。實(shí)例基準(zhǔn)壓測(cè)實(shí)例既要滿足業(yè)務(wù)需求,又要節(jié)約成本。從實(shí)例本身出發(fā),可以通過tpcc,sysbench,mysqlslap等工具對(duì)實(shí)例本身能達(dá)到的基準(zhǔn)值測(cè)試,從而了解實(shí)例本身的性能。通過基準(zhǔn)壓測(cè)發(fā)現(xiàn)從業(yè)務(wù)角度壓測(cè)和基準(zhǔn)值有偏差時(shí),可以為從哪些方面優(yōu)化性能提供參考。也可以通過修改壓測(cè)語句針對(duì)秒殺場(chǎng)景單獨(dú)壓測(cè)。但是在實(shí)際應(yīng)用中,只有基準(zhǔn)測(cè)試的結(jié)果是不能充分評(píng)估真實(shí)業(yè)務(wù)場(chǎng)景的容量的,還需要做基于真實(shí)業(yè)務(wù)場(chǎng)景的壓測(cè)。

實(shí)例級(jí)別真實(shí)業(yè)務(wù)場(chǎng)景壓測(cè)通常做真實(shí)業(yè)務(wù)場(chǎng)景壓測(cè),可以從業(yè)PTS、loadrunnerDAS提供一種不需要從業(yè)務(wù)壓測(cè)的方法。DAS從源實(shí)例上捕獲流量,按照目標(biāo)實(shí)例規(guī)格支持的極限速度或指定回放速度,在目標(biāo)實(shí)例上進(jìn)行回放。回放后可以看監(jiān)控指標(biāo)評(píng)估能不能支撐住雙11峰值,如果不能則需要優(yōu)化性能或擴(kuò)容資源,或者降級(jí)一些不太核心的功能。全鏈路業(yè)務(wù)場(chǎng)景壓測(cè)上面兩個(gè)測(cè)試都是從數(shù)據(jù)庫層面單獨(dú)壓測(cè),為了和業(yè)務(wù)聯(lián)動(dòng),方便評(píng)估所有鏈路工作時(shí)的容量可以進(jìn)行全鏈路壓測(cè)。全怎么做全鏈路壓測(cè)的”。為了更好地服務(wù)阿里云用戶,阿里也把全鏈路壓測(cè)沉淀成PTS,PTS驗(yàn)證全國用戶真實(shí)業(yè)務(wù)操作對(duì)服務(wù)端性能、容量和系統(tǒng)穩(wěn)定性的影響,讓站點(diǎn)提前經(jīng)歷真實(shí)的高可以大幅提升效率和智能化準(zhǔn)備大促,全面逼近真實(shí)的系統(tǒng)驗(yàn)收能力,全面拉通端對(duì)端的鏈路,提供全方位的的解決方案。

性能優(yōu)化2性能優(yōu)化是根據(jù)性能分析的結(jié)果,對(duì)系統(tǒng)性能的改進(jìn)。通常在計(jì)算機(jī)系統(tǒng)中,這種活動(dòng)的動(dòng)機(jī)被稱為性能問題,它可以是真實(shí)的,也可以是預(yù)期的。大多數(shù)系統(tǒng)當(dāng)負(fù)載增加時(shí)會(huì)出現(xiàn)某種程度的性能下降。系統(tǒng)接受更高負(fù)載的能力稱為可伸縮性,而修改系統(tǒng)以處理更高負(fù)載就等同于性能調(diào)優(yōu)。系統(tǒng)可以進(jìn)行性能優(yōu)化說明某些方面存在瓶頸,期望通過優(yōu)化瓶頸滿足性能需求。2和大促相關(guān)的性能優(yōu)化可以分為架構(gòu)優(yōu)化、參數(shù)優(yōu)化和內(nèi)核優(yōu)化。阿里云RDSMySQL做了很多內(nèi)核優(yōu)化的補(bǔ)丁,可以幫助用戶很好地解決熱點(diǎn)庫存、高并發(fā)、走錯(cuò)索引等性能方面的問題。更多信息可參見“參考資料”章節(jié)。

架構(gòu)優(yōu)化應(yīng)用接入緩存層OLTPOLAPRDSMySQLRDSMySQL數(shù)據(jù)庫管理DASDMSDTSDBS應(yīng)用接入緩存層OLTPOLAPRDSMySQLRDSMySQL數(shù)據(jù)庫管理DASDMSDTSDBSADBMySQLADBPostgreSQLRDSMySQLRedisRDSMySQLMongoDBRDSPostgreSQLRDSPostgreSQLMemcaheECSECSECSSLBSLBSLBRDSMySQLRDSMySQLRedisARDSMySQLBRDSMySQLC大促場(chǎng)景下查詢請(qǐng)求比較多,應(yīng)用可以從幾個(gè)方面做,如:盡可能地使用靜態(tài)化頁面、盡量使緩存命中率100%、讀寫分離使讀流量不影響主業(yè)務(wù)。讀寫分離是存儲(chǔ)里面最簡(jiǎn)單的架構(gòu),顧名思義是把讀和寫分開。用主實(shí)例支撐寫流量和對(duì)主備延遲要求高的流量,用只讀實(shí)例支撐讀流量,不能從業(yè)務(wù)側(cè)寫。對(duì)RDSMySQL來說只讀實(shí)例和主實(shí)例之間通過主備復(fù)制的方式實(shí)現(xiàn)數(shù)據(jù)同步。要想實(shí)現(xiàn)讀寫分離,通常可以采用以下幾種方案:方案1:應(yīng)用獨(dú)立實(shí)現(xiàn)方案2:開源的中間代理方案3:阿里云的獨(dú)享代理用戶1用戶2用戶N共享代理VM用戶用戶1用戶2用戶N共享代理VM用戶1DB用戶2DB用戶NDB用戶1用戶2用戶N用戶1DB用戶2DB用戶NDB鏈接地址虛擬IPDNS虛擬IP獨(dú)享代理3獨(dú)享代理2獨(dú)享代理1

負(fù)載均衡,只讀實(shí)例延遲過大,不可用等23獨(dú)享代理數(shù)據(jù)庫代理可以在代理層實(shí)現(xiàn)讀寫分離、流量控制、連接保持等方面的優(yōu)化,避免業(yè)務(wù)流量同時(shí)直接訪問數(shù)據(jù)庫,造成數(shù)據(jù)庫癱瘓,進(jìn)而影響業(yè)務(wù)不可用。數(shù)據(jù)庫代理的位置可以參考下圖:共享代理是很多用戶共享VM(虛擬機(jī)),如上圖所示。共享代理的設(shè)計(jì)方式?jīng)Q定了它的資源隔離性不是很好,可能會(huì)存在多用戶爭(zhēng)搶資源導(dǎo)致訪問服務(wù)不穩(wěn)定的風(fēng)險(xiǎn)。獨(dú)享代理是相對(duì)共享代理而言的,獨(dú)享代理做了設(shè)計(jì)優(yōu)化,首先它的隔離性比較好,不會(huì)出現(xiàn)和其他用戶爭(zhēng)搶資源的問題,資源可擴(kuò)展,可承載更高流量;其次在大促時(shí)期開啟讀寫分離,大促結(jié)束后釋放只讀實(shí)例,關(guān)閉讀寫分離,也不用變更應(yīng)用內(nèi)的連接地址。

RDSRDSMySQLARDSMySQLRDSRDSMySQLRDSMySQLA BBCRDSMySQLC存儲(chǔ)架構(gòu)升級(jí)一個(gè)新業(yè)務(wù)上線到蓬勃發(fā)展需要經(jīng)scaleupscaleout階段。在早期階段,使用數(shù)據(jù)庫的方式如左圖所示,幾個(gè)庫分布在一個(gè)實(shí)例上面。當(dāng)單個(gè)實(shí)例不能支撐峰值時(shí),就會(huì)把幾個(gè)庫分別放到單獨(dú)的實(shí)例,這幾個(gè)實(shí)例互不干擾。隨著業(yè)務(wù)的進(jìn)一步發(fā)展,數(shù)據(jù)庫很難支撐,就需要使用緩存,如右圖所示。后期,如果單個(gè)實(shí)例也不能支撐A庫時(shí),就需要使用PolarDB-X如果經(jīng)過的充分的評(píng)估單個(gè)RDSMySQL不能支撐大促流量,又不想分庫分表,且ts6w,可以PolarDBMySQL;RDSMySQLPolarDBMySQL特別適用于大促準(zhǔn)備時(shí)間短、數(shù)據(jù)延遲要求高、突發(fā)流量較多、DAS

擴(kuò)容的場(chǎng)景。PolarDBMySQL可以滿足數(shù)據(jù)延遲要求,同時(shí)易于彈性升降配置。s,就需要對(duì)數(shù)據(jù)庫進(jìn)行拆分。拆分也有比較多的實(shí)現(xiàn)方X網(wǎng)、金融&支付、教育、通信、公共數(shù)據(jù)庫版本升級(jí)阿里云MySQL產(chǎn)品系列在不同的版本上做了不同程度的改進(jìn),各個(gè)版本的演進(jìn)可以參考:5.6,5.7,8.0。因?yàn)楹痛蟠傧嚓P(guān)主要關(guān)注點(diǎn)還是放在性能方面。從下面的性能測(cè)試圖可以看出比較新的版本性能是不同程度的有提升:由于不同版本之間的優(yōu)化器、排序方式等方面可能做了調(diào)整,如果不進(jìn)行驗(yàn)證直接升級(jí)的話,可能會(huì)導(dǎo)致原來不慢的SQL變慢、排序結(jié)果不一致等情況,從而影響到業(yè)務(wù),所以在升級(jí)之前必須進(jìn)行充分驗(yàn)證。架構(gòu)優(yōu)化從整體層面可以大幅度提高

參數(shù)優(yōu)化以下介紹的是高性能參數(shù)模版的參數(shù)優(yōu)化方法,高性能參數(shù)模板不一定適用于所有的場(chǎng)景,您也可以根據(jù)自己的業(yè)務(wù)場(chǎng)景有針對(duì)性的調(diào)整個(gè)別參數(shù),比如:修改binlog同步

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論