快上車!數(shù)據(jù)庫智能自治時代已到來,騰訊云數(shù)據(jù)庫 X AI 取得新突破
為推動數(shù)據(jù)庫領(lǐng)域技術(shù)創(chuàng)新,賦能企業(yè)轉(zhuǎn)型升級,騰訊云原生數(shù)據(jù)庫團(tuán)隊持續(xù)發(fā)力,團(tuán)隊最新研究成果入選2022年國際頂會SIGMOD,并在2022年智能調(diào)優(yōu)人機(jī)大賽中戰(zhàn)績不菲。這標(biāo)志著騰訊云數(shù)據(jù)庫在數(shù)據(jù)庫自治領(lǐng)域取得重大突破,實現(xiàn)性能領(lǐng)先。
騰訊云數(shù)據(jù)庫云原生團(tuán)隊近期舉辦了線上直播知識分享活動“騰訊云數(shù)據(jù)庫自治AI技術(shù)首次解密”,本次直播對數(shù)據(jù)庫自治領(lǐng)域進(jìn)行行業(yè)探討,并分享了騰訊云數(shù)據(jù)庫自治的AI研究和實踐經(jīng)驗。

加入AI技術(shù)
形成數(shù)據(jù)庫自治大腦
?周可 / 華中科技大學(xué)教授
周可教授表示,在海量數(shù)據(jù)的大背景下,DBA(人工運維)的增長遠(yuǎn)遠(yuǎn)跟不上數(shù)據(jù)的增長,且用戶負(fù)載具有多樣性和動態(tài)性,一成不變的運維方式已不能夠滿足用戶的需求。把AI加入到數(shù)據(jù)庫,形成數(shù)據(jù)庫的自治大腦,符合數(shù)據(jù)庫自治的發(fā)展方向。
實現(xiàn)數(shù)據(jù)庫自治的基本框架包括觀察、分析、決策三個方面。用更低的成本收集負(fù)載數(shù)據(jù),根據(jù)收集到的數(shù)據(jù)選擇合適的方法進(jìn)行分析,最后決策部分解決何時部署,量化操作以便于模型處理,進(jìn)行反饋操作使模型能夠進(jìn)行自學(xué)習(xí),自優(yōu)化,從而使自治數(shù)據(jù)庫可以在不需要人工輔助的前提下,針對特定的數(shù)據(jù)和負(fù)載自動地進(jìn)行配置、管理和優(yōu)化。
未來,數(shù)據(jù)庫自治面臨的挑戰(zhàn)有三方面:
數(shù)據(jù)庫負(fù)載動態(tài)多樣,需要保證數(shù)據(jù)庫的高效適應(yīng)性;
用更少的資源,保證數(shù)據(jù)庫的性能穩(wěn)定性;
數(shù)據(jù)庫自治操作具有可解釋性,以便幫助系統(tǒng)管理員從中學(xué)習(xí),還可以促進(jìn)系統(tǒng)的優(yōu)化發(fā)展。

以盡可能少的時間
獲得較好的調(diào)優(yōu)效果
邢家樹 / 騰訊云數(shù)據(jù)庫高級工程師
數(shù)據(jù)庫的參數(shù)多,調(diào)優(yōu)難度大,運維人時成本高;現(xiàn)存工具功能有限,耗時久且效果一般;部分用戶沒有專職運維團(tuán)隊,參數(shù)調(diào)優(yōu)更是難以實現(xiàn)。針對種種困難,騰訊云數(shù)據(jù)庫團(tuán)隊推出參數(shù)調(diào)優(yōu)服務(wù),端到端地自動調(diào)優(yōu)數(shù)據(jù)庫參數(shù)。相比于現(xiàn)存方法,CDBTune(騰訊云MySQL混合調(diào)優(yōu)系統(tǒng))無需細(xì)分負(fù)載類型,無需積累大量樣本,可智能學(xué)習(xí)參數(shù)調(diào)優(yōu)過程,獲得較好的參數(shù)調(diào)優(yōu)效果 。
原理上采用深度強(qiáng)化學(xué)習(xí)模型。通過對數(shù)據(jù)庫進(jìn)行壓測,記錄數(shù)據(jù)庫的內(nèi)外部指標(biāo),生成樣本進(jìn)行學(xué)習(xí)。使用遺傳算法和專家經(jīng)驗進(jìn)行快速預(yù)熱,通過并行架構(gòu)顯著提升調(diào)優(yōu)速度。實行端到端的設(shè)計,簡單、高效且易于訓(xùn)練,易于實現(xiàn)服務(wù)化,能夠在盡可能少的時間里,為用戶找到最佳調(diào)優(yōu)方向。
落地到工程實踐應(yīng)用層面。分離服務(wù)調(diào)度和任務(wù)執(zhí)行工作,由worker執(zhí)行具體的任務(wù)。Learner任務(wù)負(fù)責(zé)抽取樣本,計算網(wǎng)絡(luò)梯度,更新神經(jīng)網(wǎng)絡(luò),為Actor推薦數(shù)據(jù)庫參數(shù)。Actor則負(fù)責(zé)與訓(xùn)練實例交互,設(shè)置參數(shù),回放流量,并收集性能數(shù)據(jù);每完成一輪,從Learner獲取新的參數(shù)推薦,形成閉環(huán)。整體上實現(xiàn)為并行架構(gòu),具備高可用、可擴(kuò)展、任務(wù)自動恢復(fù)等能力。

數(shù)據(jù)庫自治
“監(jiān)控-診斷-解決”
AI技術(shù)實踐
?張遠(yuǎn) / 騰訊云數(shù)據(jù)庫專家工程師
在數(shù)據(jù)庫服務(wù)中,數(shù)據(jù)庫資源包括內(nèi)存/IO/CPU,資源的監(jiān)控,異常的識別、檢測非常重要,只有合理地使用數(shù)據(jù)庫資源,才能保持?jǐn)?shù)據(jù)庫服務(wù)的穩(wěn)定高效。騰訊云MySQL的異常檢測能力,可自動發(fā)現(xiàn)異常(內(nèi)存分析、內(nèi)核埋點、io延遲硬件資源統(tǒng)計),對異常進(jìn)行識別,實現(xiàn)異常檢測內(nèi)部閉環(huán),降低運維壓力。
騰訊云MySQL可設(shè)置SQL限流功能,在發(fā)現(xiàn)異常請求之后,對異常業(yè)務(wù)SQL進(jìn)行限流,從而保證正常SQL語句能夠運行;改進(jìn)MySQL官方原有直方圖,推出Compressed直方圖,避免了因數(shù)據(jù)傾斜導(dǎo)致統(tǒng)計信息不準(zhǔn),選錯計劃而導(dǎo)致的問題;推出Statment Outline功能,將用戶需要的查詢計劃固化下來,不需要修改SQL語句,從Outlint表中即可查詢到對應(yīng)的計劃,從而提升用戶使用體驗;對新建索引進(jìn)行并行優(yōu)化,推出并行排序優(yōu)化,并行構(gòu)建btree,與官方mysql對比,性能更好(加速比最高可到15,是官方mysql的5倍),功能更全;優(yōu)化器自治方面,跟蹤業(yè)務(wù) SQL 性能數(shù)據(jù) (SQL 標(biāo)簽,性能埋點,變化跟蹤),自動產(chǎn)生優(yōu)化策略(統(tǒng)計信息,虛擬索引,計劃干預(yù)),驗證優(yōu)化策略并灰度生效,實現(xiàn) SQL 調(diào)優(yōu)閉環(huán),降低規(guī)模化運營壓力。
針對特定業(yè)務(wù)場景性能問題,?對死鎖場景優(yōu)化,設(shè)置死鎖檢測開關(guān),豐富死鎖信息,對事務(wù)鎖優(yōu)化,降低發(fā)生死鎖的概率同時減少了鎖資源占用;對電商業(yè)務(wù)的秒殺場景,動態(tài)一鍵開啟熱點更新保護(hù)功能,使業(yè)務(wù)無感知,秒殺場景性能提升50倍;遷移切換場景優(yōu)化,通過主備緩存同步優(yōu)化解決HA預(yù)熱時間長等問題,使HA業(yè)務(wù)平滑過度,減少抖動。

數(shù)據(jù)庫“智能化”
以適應(yīng)任何業(yè)務(wù)場景
?程昌明 / 騰訊云數(shù)據(jù)庫高級產(chǎn)品經(jīng)理
由于業(yè)務(wù)系統(tǒng)的千差萬別,針對業(yè)務(wù)的參數(shù)調(diào)優(yōu)是令數(shù)據(jù)庫管理者頭痛的難題,往往需要借助經(jīng)驗去構(gòu)筑一套相對“有效”的參數(shù)模版,往往模板無法應(yīng)對所有情況。“智能”以適應(yīng)任何業(yè)務(wù)場景。
騰訊云MySQL在2019和2022年發(fā)表2篇SIGMOD頂級論文:
2019年,騰訊云數(shù)據(jù)庫產(chǎn)品團(tuán)隊首度提出基于深度強(qiáng)化學(xué)習(xí)(DRL)的端到端云數(shù)據(jù)庫參數(shù)調(diào)優(yōu)系統(tǒng)CDBTune,該研究論文“An End-to-End Automatic Cloud Database Tuning System Using Deep Reinforcement Learning”入選SIGMOD Research Full Paper(研究類長文)
2022年,騰訊云數(shù)據(jù)庫產(chǎn)品團(tuán)隊最新研究成果入選 SIGMOD Research Full Paper(研究類長文),論文題目為“HUNTER: An Online Cloud Database Hybrid Tuning System for Personalized Requirements”,標(biāo)志著騰訊云數(shù)據(jù)庫團(tuán)隊在數(shù)據(jù)庫AI智能化上取得進(jìn)一步突破,實現(xiàn)性能領(lǐng)先。
通過AI智能分析的方式,能夠獲得最佳的調(diào)參效果;通過“一鍵”方式,完成復(fù)雜的調(diào)參過程,獲得最佳參數(shù)設(shè)置建議。根據(jù)業(yè)務(wù)情況,業(yè)務(wù)每個階段需要的特性是不一樣的。騰訊云MySQL的最佳實踐可對應(yīng)到業(yè)務(wù)的以下三個階段:
實例新購階段:針對每一種場景訓(xùn)練最優(yōu)配置,盡可能匹配業(yè)務(wù)特征,不同的工作負(fù)載上有15%-50%的提升。
業(yè)務(wù)快速迭代階段:確定業(yè)務(wù)類型,不同的場景根據(jù)自身情況完全自定義,預(yù)估優(yōu)化結(jié)果,一鍵快速應(yīng)用到實例。以游戲為例,開局時玩家瘋狂涌入;以電商為例,購物峰值的產(chǎn)生;有預(yù)見性地提前設(shè)置好最佳參數(shù)以應(yīng)對即將到來的數(shù)據(jù)庫峰值壓力。
業(yè)務(wù)穩(wěn)定運行階段:通過對數(shù)據(jù)庫的工作負(fù)載特征捕獲、重放,對監(jiān)控指標(biāo)、SQL運行狀態(tài)進(jìn)行監(jiān)控分析,不斷通過深度學(xué)習(xí)調(diào)整參數(shù)值以最終輸出最佳參數(shù)值。
數(shù)據(jù)庫自治未來的“智能”展望 ,除了數(shù)據(jù)庫參數(shù),還有各種各樣的因素影響著數(shù)據(jù)庫的高效運行,SQL執(zhí)行效率、索引是否合理、鎖、資源配置等都可以通過“AI”的方式得到解決。
騰訊云MySQL“智能調(diào)參“將于5月份對外發(fā)出公測邀請,敬請期待!
數(shù)據(jù)庫專家怎么說


﹀
﹀
﹀
淺析騰訊云數(shù)據(jù)庫高可用特性|云原生篇
數(shù)據(jù)庫納管平臺DBhouse的技術(shù)路線與實踐
↓↓點擊閱讀原文,了解更多優(yōu)惠


