A-Tune-Online: Efficient and QoS-aware Online Configuration Tuning for Dynamic Workloads
作者:Yu Shen, Beicheng Xu, Yupeng Lu, Donghui Chen, Huaijun Jiang, Zhipeng Xie, Senbo Fu, Nan Zhang, Yuxin Ren, Ning Jia, Xinwei Hu, Bin Cui
Github鏈接:https://github.com/PKU-DAIR/A-Tune-Online
1. 問題背景與動機(jī)
現(xiàn)代在線服務(wù)(如數(shù)據(jù)庫、編譯器、分布式系統(tǒng)等)需要處理動態(tài)變化的負(fù)載,例如白天以交互式查詢?yōu)橹?,夜間轉(zhuǎn)為批量處理任務(wù),或突發(fā)流量導(dǎo)致的負(fù)載波動。傳統(tǒng)靜態(tài)調(diào)優(yōu)方法假設(shè)負(fù)載固定,無法適應(yīng)這種動態(tài)性,導(dǎo)致歷史最優(yōu)配置在新負(fù)載下性能下降甚至失效。因此,在線配置調(diào)優(yōu)系統(tǒng)需要滿足三個核心目標(biāo):動態(tài)性(快速適應(yīng)負(fù)載變化)、效率(低調(diào)優(yōu)開銷)和QoS保障(避免性能劣化)。然而,現(xiàn)有在線調(diào)優(yōu)方法因未能有效解決歷史數(shù)據(jù)干擾和負(fù)載變化檢測問題,在實(shí)際場景中表現(xiàn)不佳。
現(xiàn)有在線調(diào)優(yōu)方法主要分為兩類:一類(如Rover[1]、Online-Tune[2])假設(shè)負(fù)載變化微小,持續(xù)復(fù)用全部歷史觀測數(shù)據(jù)優(yōu)化,但不同負(fù)載的性能特征可能差異極大甚至負(fù)相關(guān),導(dǎo)致當(dāng)前調(diào)優(yōu)被誤導(dǎo),收斂效率低下;另一類(如OnlineTune[3])嘗試通過無監(jiān)督聚類分割歷史數(shù)據(jù),但聚類準(zhǔn)確性有限,誤分類的觀測數(shù)據(jù)仍會污染模型。此外,這些方法缺乏顯式且魯棒的負(fù)載變化檢測機(jī)制。
在線負(fù)載通常具有周期性或階段性穩(wěn)定的特點(diǎn)(如一種負(fù)載持續(xù)運(yùn)行一段時間后切換),A-Tune-Online的核心思路是:通過多階段負(fù)載檢測精準(zhǔn)觸發(fā)優(yōu)化重啟,隔離不相關(guān)歷史數(shù)據(jù);結(jié)合相似任務(wù)知識遷移加速重啟后的收斂;并利用置信區(qū)間構(gòu)建安全區(qū)域保障QoS。實(shí)驗(yàn)表明,其負(fù)載切換檢測準(zhǔn)確率和最終性能均顯著優(yōu)于現(xiàn)有方法。
2. 在線調(diào)優(yōu)流程
圖1. A-Tune-Online系統(tǒng)流程圖
(1)流程概述
如圖1所示,A-Tune-Online的在線調(diào)優(yōu)流程是一個基于環(huán)境感知的動態(tài)優(yōu)化系統(tǒng)。系統(tǒng)通過客戶端持續(xù)采集兩類關(guān)鍵環(huán)境變量:一類是通用系統(tǒng)指標(biāo),包括CPU利用率、內(nèi)存使用率等基礎(chǔ)資源指標(biāo);另一類是應(yīng)用特定指標(biāo),如Spark執(zhí)行器的任務(wù)執(zhí)行時間、數(shù)據(jù)庫查詢類型分布等。這些環(huán)境變量通過日志文件采集,既保證了數(shù)據(jù)的可獲取性,又避免了涉及隱私的高層信息泄露。
在服務(wù)器端,系統(tǒng)以環(huán)境變量為核心構(gòu)建了完整的調(diào)優(yōu)閉環(huán)。每次迭代時,服務(wù)器接收客戶端上傳的環(huán)境變量和性能數(shù)據(jù),并將其存入歷史數(shù)據(jù)庫。① 系統(tǒng)首先采用多指標(biāo)多階段負(fù)載檢測器來分析環(huán)境變量的變化:先通過基于規(guī)則的方法快速檢測潛在變化,再通過回放驗(yàn)證確保檢測準(zhǔn)確性。當(dāng)環(huán)境變量顯示負(fù)載發(fā)生顯著變化時,系統(tǒng)會觸發(fā)重啟優(yōu)化流程。② 此時基于機(jī)器學(xué)習(xí)相似性的雙預(yù)熱啟動機(jī)制會從歷史數(shù)據(jù)中篩選最相似的任務(wù)環(huán)境特征,為新一輪優(yōu)化提供熱啟動。之后 ③ 若環(huán)境變量未顯示顯著變化,則使用置信下界增強(qiáng)的QoS感知貝葉斯優(yōu)化,基于當(dāng)前環(huán)境特征構(gòu)建概率隨機(jī)森林模型,該模型能同時考慮配置參數(shù)和環(huán)境變量的交互影響,從而生成既安全又高效的配置推薦。
(2)多指標(biāo)多階段負(fù)載檢測器
這一設(shè)計直接針對現(xiàn)有方法負(fù)載檢測精度不足的問題。通過結(jié)合規(guī)則基檢測和回放基檢測,系統(tǒng)既能快速響應(yīng)潛在變化,又能通過回放驗(yàn)證確保檢測準(zhǔn)確性。這種高精度的檢測機(jī)制為后續(xù)優(yōu)化提供了可靠的基礎(chǔ),避免了不必要的重啟或遺漏關(guān)鍵變化。當(dāng)檢測到負(fù)載變化后,系統(tǒng)會觸發(fā)優(yōu)化重啟。
A-Tune-Online采用了一種創(chuàng)新的多階段負(fù)載變化檢測機(jī)制,以應(yīng)對動態(tài)工作負(fù)載帶來的調(diào)優(yōu)挑戰(zhàn)。該系統(tǒng)首先通過一個基于多指標(biāo)規(guī)則的高精度檢測器進(jìn)行初步判斷,只有當(dāng)所有預(yù)設(shè)指標(biāo)(如CPU利用率、內(nèi)存使用率等系統(tǒng)指標(biāo)和特定應(yīng)用指標(biāo))都一致表明負(fù)載變化時,才會觸發(fā)變化信號。這種"全票通過"的設(shè)計理念顯著降低了誤報率,確保只有在負(fù)載確實(shí)發(fā)生變化時才重啟優(yōu)化過程。
當(dāng)?shù)谝浑A段的保守檢測未能達(dá)成一致判斷但部分指標(biāo)顯示異常時,系統(tǒng)會啟動更精確但計算成本較高的回放式檢測作為第二道防線。這種分階段的設(shè)計既保證了檢測的實(shí)時性,又通過逐步深入的驗(yàn)證確保了結(jié)果的可靠性。檢測過程中,系統(tǒng)運(yùn)用了嚴(yán)密的數(shù)學(xué)理論來保證多指標(biāo)聯(lián)合判斷的精度下限,并通過精心選擇的指標(biāo)組合來進(jìn)一步提升檢測性能。一旦任一階段確認(rèn)負(fù)載變化,系統(tǒng)就會立即終止當(dāng)前優(yōu)化過程,并針對新負(fù)載啟動全新的調(diào)優(yōu)流程。
這種多階段檢測策略的創(chuàng)新之處在于:它通過規(guī)則基檢測的快速篩選和回放檢測的精確驗(yàn)證相結(jié)合,在保證高精度的同時兼顧了召回率,有效解決了傳統(tǒng)方法在動態(tài)負(fù)載場景下要么過于敏感(導(dǎo)致頻繁無效重啟)、要么過于遲鈍(錯過重要變化)的兩難問題。實(shí)驗(yàn)證明,該檢測機(jī)制能準(zhǔn)確識別各種類型的負(fù)載變化,為后續(xù)的優(yōu)化重啟決策提供了可靠依據(jù)。
(3)基于相似性的雙預(yù)熱啟動機(jī)制。
A-Tune-Online采用了一種基于任務(wù)相似性的熱啟動策略來優(yōu)化重啟過程,當(dāng)檢測到負(fù)載變化時,系統(tǒng)會立即啟動新調(diào)優(yōu)任務(wù),并針對不同相似度采取差異化的預(yù)熱策略,既充分利用了相似任務(wù)的知識加速收斂,又有效隔離了不相似任務(wù)帶來的負(fù)面影響。這一設(shè)計使得系統(tǒng)在重啟后平均僅需15.6次迭代即可收斂,大大提升了調(diào)優(yōu)效率。
系統(tǒng)首先構(gòu)建了一個基于環(huán)境向量的任務(wù)相似性預(yù)測模型,該模型采用LightGBM回歸器,通過分析隨機(jī)配置在歷史任務(wù)中的表現(xiàn)排序一致性(Kendall-tau相關(guān)系數(shù))來量化任務(wù)相似度。
在具體實(shí)施時,系統(tǒng)采用兩級漸進(jìn)式預(yù)熱機(jī)制:第一級配置預(yù)熱會選取相似度最高的5個歷史任務(wù),將其最優(yōu)配置作為新任務(wù)的初始候選;第二級模型預(yù)熱則僅在最高相似度超過0.65閾值時,直接復(fù)用相似任務(wù)的代理模型進(jìn)行前10次迭代的配置推薦。這種雙重機(jī)制既充分利用了高相似任務(wù)的知識,又通過嚴(yán)格的相似度閾值避免了低質(zhì)量遷移。實(shí)驗(yàn)數(shù)據(jù)顯示,相似度高于0.65的代理模型在前10次迭代中預(yù)測準(zhǔn)確性顯著優(yōu)于新建模型,而10次迭代后新建模型逐漸成熟,此時系統(tǒng)自動切換為基于當(dāng)前任務(wù)觀測的純BO優(yōu)化。
為確保魯棒性,當(dāng)訓(xùn)練數(shù)據(jù)不足時,系統(tǒng)會降級使用歐氏距離進(jìn)行任務(wù)匹配,并禁用模型級預(yù)熱,這種設(shè)計使得A-Tune-Online能夠在最差情況下退化為標(biāo)準(zhǔn)BO性能。整個預(yù)熱過程結(jié)束后,系統(tǒng)將完全依賴當(dāng)前任務(wù)的觀測數(shù)據(jù),確保不相似任務(wù)的負(fù)面影響不會持續(xù)存在。
(4)置信下界增強(qiáng)的QoS感知貝葉斯優(yōu)化。
為確保調(diào)優(yōu)過程的安全性,系統(tǒng)引入了QoS感知機(jī)制,傳統(tǒng)貝葉斯優(yōu)化在探索新配置時可能造成性能下降,而該系統(tǒng)通過構(gòu)建基于置信下界的安全區(qū)域,將采樣限制在性能有保障的范圍內(nèi),完全避免了QoS違規(guī)。
系統(tǒng)通過構(gòu)建預(yù)測置信下界來量化每個配置的安全程度。基于此,系統(tǒng)動態(tài)維護(hù)一個安全區(qū)域,僅包含那些預(yù)測下界超過預(yù)設(shè)閾值δ的配置(δ通常設(shè)為默認(rèn)配置性能水平)。在每輪迭代中,優(yōu)化器會從安全區(qū)域內(nèi)選擇預(yù)期改進(jìn)最大的配置進(jìn)行測試,而非全局最優(yōu)配置。
這種機(jī)制具有雙重優(yōu)勢:隨著觀測數(shù)據(jù)積累,安全區(qū)域會自適應(yīng)擴(kuò)展,既避免了早期盲目探索高風(fēng)險區(qū)域,又不會永久限制搜索空間。實(shí)驗(yàn)表明,該方法能在保證零QoS違規(guī)的前提下,實(shí)現(xiàn)與無約束優(yōu)化相當(dāng)?shù)淖罱K性能,解決了在線調(diào)優(yōu)中安全與探索的根本矛盾。
3. 實(shí)驗(yàn)結(jié)果
A-Tune-Online在5個典型場景(MySQL、Redis、Kafka、UnixBench和Spark)進(jìn)行評測,通過周期切換12-36種不同負(fù)載模擬真實(shí)動態(tài)環(huán)境。系統(tǒng)從應(yīng)用日志提取10維(Kafka)至67維(MySQL)環(huán)境向量,每10分鐘采集性能數(shù)據(jù)并推薦新配置,最多評估40個配置。對比基線包括GP-BO、TPE、OnlineTune等5種調(diào)優(yōu)方法,測試平臺為96核CPU/100G內(nèi)存服務(wù)器。實(shí)驗(yàn)指標(biāo)涵蓋吞吐量(rps/lps)和運(yùn)行時等關(guān)鍵性能參數(shù)。
圖2. 無歷史數(shù)據(jù)實(shí)驗(yàn)結(jié)果
圖3. 有歷史數(shù)據(jù)實(shí)驗(yàn)結(jié)果
實(shí)驗(yàn)首先在無歷史知識的情況下評估各調(diào)優(yōu)算法的表現(xiàn),如圖2所示。當(dāng)所有方法都從零開始時,基于貝葉斯優(yōu)化的方法(如GP-BO、TPE)在初始階段表現(xiàn)優(yōu)于強(qiáng)化學(xué)習(xí)方法(DDPG+和QTune),這與前人研究中關(guān)于強(qiáng)化學(xué)習(xí)需要更多初始配置的結(jié)論一致。隨著時間推移,A-Tune-Online和OnlineTune憑借對動態(tài)負(fù)載的處理能力逐漸拉開差距。關(guān)鍵數(shù)據(jù)顯示,A-Tune-Online在MySQL和Redis場景中分別實(shí)現(xiàn)了0.88和0.81的負(fù)載分類準(zhǔn)確率,顯著高于OnlineTune的0.59和0.57,這使其能有效利用97%的相關(guān)歷史觀測數(shù)據(jù),避免不相似負(fù)載的干擾。相比之下,OnlineTune由于依賴不穩(wěn)定的無監(jiān)督聚類,性能受到明顯限制。
如圖3,在有歷史知識的情況下,實(shí)驗(yàn)進(jìn)一步驗(yàn)證了各方法利用先驗(yàn)信息的能力。預(yù)先使用標(biāo)準(zhǔn)BO為每個場景構(gòu)建歷史數(shù)據(jù)庫后,A-Tune-Online展現(xiàn)出更快的收斂速度。在涵蓋MySQL、Redis等五大場景的測試中,該系統(tǒng)相比OnlineTune和DDPG+分別實(shí)現(xiàn)了2.86%-13.20%和4.68%-13.18%的性能提升。特別值得注意的是,在Spark任務(wù)中僅用5次迭代就找到近優(yōu)配置,證明其相似任務(wù)匹配機(jī)制的有效性。效率指標(biāo)顯示,達(dá)到相同性能水平時,A-Tune-Online平均比OnlineTune快2.9倍,比DDPG+快1.72倍。這些結(jié)果充分說明,系統(tǒng)設(shè)計的雙重?zé)釂硬呗阅苤悄軈^(qū)分負(fù)載相似度,在保證安全性的前提下最大化歷史知識的價值。
表1.切換檢測召回率
此外,A-Tune-Online的負(fù)載變化檢測機(jī)制在實(shí)驗(yàn)中展現(xiàn)出卓越的性能表現(xiàn)。如表1所示,該系統(tǒng)的多階段檢測策略在五大測試場景中實(shí)現(xiàn)了76%-91%的召回率,其中回放式檢測器平均提升了8%的召回性能。特別值得注意的是,得益于保守設(shè)計原則,所有場景下的檢測精度都達(dá)到了完美的100%,完全避免了誤報情況。在檢測效率方面,系統(tǒng)平均僅需觸發(fā)0.6次回放檢測(耗時約6分鐘),且大多數(shù)負(fù)載變化能在5次配置評估內(nèi)被準(zhǔn)確識別。這些數(shù)據(jù)充分驗(yàn)證了系統(tǒng)設(shè)計的規(guī)則基檢測與回放基檢測相結(jié)合的策略,既保證了檢測的及時性,又確保了判斷的準(zhǔn)確性。
4. 總結(jié)
A-Tune-Online 是一種面向動態(tài)工作負(fù)載的在線配置調(diào)優(yōu)系統(tǒng),能夠同時實(shí)現(xiàn)高性能、高效率和 QoS 保障。該系統(tǒng)通過多階段負(fù)載突變檢測(結(jié)合規(guī)則和重放檢測器)精準(zhǔn)識別工作負(fù)載變化,并觸發(fā)優(yōu)化重啟以避免歷史不相關(guān)數(shù)據(jù)的干擾。為提高重啟后的優(yōu)化效率,它采用熱啟動技術(shù),利用回歸模型匹配歷史相似負(fù)載并復(fù)用其配置或代理模型知識。此外,系統(tǒng)通過維護(hù)安全區(qū)域并優(yōu)先推薦預(yù)期改進(jìn)最優(yōu)的配置來確保 QoS。實(shí)驗(yàn)表明,A-Tune-Online 在多種場景下均能準(zhǔn)確檢測負(fù)載變化、快速適應(yīng)新負(fù)載,并提供比現(xiàn)有系統(tǒng)更優(yōu)的配置推薦和 QoS 保障。
參考文獻(xiàn)
- Y. Shen, X. Ren, Y. Lu, H. Jiang, H. Xu, D. Peng, Y. Li, W. Zhang, and B. Cui, “Rover: An online spark sql tuning service via generalized transfer learning,” in Proceedings of the 29th ACM SIGKDD Conference on Knowledge Discovery and Data Mining, 2023, pp. 4800-4812.
- Y. Li, H. Jiang, Y. Shen, Y. Fang, X. Yang, D. Huang, X. Zhang, W. Zhang, C. Zhang, P. Chen et al., “Towards general and efficient online tuning for spark,” Proceedings of the VLDB Endowment, vol. 16, no. 12, pp. 3570-3583, 2023.
- X. Zhang, H. Wu, Y. Li, J. Tan, F. Li, and B. Cui, “Towards dynamic and safe configuration tuning for cloud databases,” in Proceedings of the 2022 International Conference on Management of Data, 2022, pp. 631-645.
實(shí)驗(yàn)室簡介
北京大學(xué)數(shù)據(jù)與智能實(shí)驗(yàn)室(Data And Intelligence Research Lab at Peking Univeristy,PKU-DAIR實(shí)驗(yàn)室)由北京大學(xué)計算機(jī)學(xué)院崔斌教授領(lǐng)導(dǎo),長期從事數(shù)據(jù)庫系統(tǒng)、大數(shù)據(jù)管理與分析、人工智能等領(lǐng)域的前沿研究,在理論和技術(shù)創(chuàng)新以及系統(tǒng)研發(fā)上取得多項(xiàng)成果,已在國際頂級學(xué)術(shù)會議和期刊發(fā)表學(xué)術(shù)論文200余篇,發(fā)布多個開源項(xiàng)目。課題組同學(xué)曾數(shù)十次獲得包括CCF優(yōu)博、ACM中國優(yōu)博、北大優(yōu)博、微軟學(xué)者、蘋果獎學(xué)金、谷歌獎學(xué)金等榮譽(yù)。PKU-DAIR實(shí)驗(yàn)室持續(xù)與工業(yè)界展開卓有成效的合作,與騰訊、阿里巴巴、蘋果、微軟、百度、快手、中興通訊等多家知名企業(yè)開展項(xiàng)目合作和前沿探索,解決實(shí)際問題,進(jìn)行科研成果的轉(zhuǎn)化落地。
評論 0