91一级特黄大片|婷婷中文字幕在线|av成人无码国产|日韩无码一二三区|久久不射强奸视频|九九九久久久精品|国产免费浮力限制

[SCIS 2022] 數(shù)據(jù)庫(kù)性能優(yōu)化綜述【轉(zhuǎn)載】
3006
2022-11-21
6
0
2
用微信掃描二維碼

來(lái)源:北京大學(xué)數(shù)據(jù)與智能實(shí)驗(yàn)室

圖片圖片

關(guān)鍵詞

Database Management System

Performance Optimization

Performance Prediction

Anomaly Diagnosis

Database Tuning

Survey

 

導(dǎo) 讀

SCIENCE CHINA Information Sciences (SCIS)中文全稱為中國(guó)科學(xué)信息科學(xué),是中國(guó)科學(xué)院和國(guó)家自然科學(xué)基金委員會(huì)共同主辦、《中國(guó)科學(xué)》雜志社出版的學(xué)術(shù)刊物,其2022影響因子7.275,主要發(fā)表信息科學(xué)領(lǐng)域的高質(zhì)量學(xué)術(shù)論文。PKU-DAIR實(shí)驗(yàn)室研究成果《Survey on Performance Optimization for Database Systems》已被SCIENCE CHINA Information Sciences接收。近年來(lái),性能優(yōu)化作為數(shù)據(jù)庫(kù)運(yùn)維的重要環(huán)節(jié),在工業(yè)界與學(xué)術(shù)界均受到廣泛關(guān)注。該綜述旨在梳理總結(jié)關(guān)于數(shù)據(jù)庫(kù)性能優(yōu)化的研究工作,以供相關(guān)領(lǐng)域的研究人員與工業(yè)界人士進(jìn)行快速了解。該綜述根據(jù)運(yùn)維的不同環(huán)節(jié),按照性能預(yù)測(cè)、異常診斷、調(diào)優(yōu)這三個(gè)主題,分析了相關(guān)任務(wù)的目標(biāo)與挑戰(zhàn),總結(jié)了現(xiàn)有工作的應(yīng)對(duì)方案、優(yōu)點(diǎn)與局限性,并闡述了未來(lái)有待進(jìn)一步探索的方向。

 

論文鏈接:

https://www.sciengine.com/SCIS/doi/10.1007/s11432-021-3578-6

 

01 引言

隨著現(xiàn)代數(shù)據(jù)庫(kù)系統(tǒng)與業(yè)務(wù)日益復(fù)雜,性能優(yōu)化已成為數(shù)據(jù)庫(kù)領(lǐng)域的研究熱點(diǎn)。作為服務(wù)級(jí)別協(xié)議(Service Level Agreement, SLA)的重要組成部分,數(shù)據(jù)庫(kù)性能是用戶所關(guān)心的重要指標(biāo),也是運(yùn)維人員的重點(diǎn)優(yōu)化對(duì)象。數(shù)據(jù)庫(kù)性能的衡量指標(biāo)主要包括事務(wù)或查詢的吞吐量與延遲,部分場(chǎng)景還會(huì)考慮資源用量。本文僅關(guān)注以吞吐量與延遲作為主要優(yōu)化目標(biāo)的研究工作。在數(shù)據(jù)庫(kù)系統(tǒng)中,影響性能的主要因素包括系統(tǒng)設(shè)計(jì)、配置、工作負(fù)載。其中,系統(tǒng)設(shè)計(jì)通常由開(kāi)發(fā)人員考慮,本文則是從運(yùn)維角度,關(guān)注配置與工作負(fù)載相關(guān)優(yōu)化。相應(yīng)主題包括:性能預(yù)測(cè)(Performance Prediction)、異常診斷(Anomaly Diagnosis)、調(diào)優(yōu)(Tuning)。本文圍繞這些主題,評(píng)述了具有代表性的研究工作,闡述了研究挑戰(zhàn)與未來(lái)有待進(jìn)一步探索的方向。

圖片

圖 1  數(shù)據(jù)庫(kù)性能影響因素與研究主題的關(guān)聯(lián)

 

02 數(shù)據(jù)集

數(shù)據(jù)集是性能優(yōu)化實(shí)驗(yàn)的基礎(chǔ)。大多數(shù)研究工作使用開(kāi)源benchmark構(gòu)建數(shù)據(jù),其工作負(fù)載分為OLTP(事務(wù)型)與OLAP(分析型)兩種。典型的OLTP benchmark包括TPC-C, TPC-E, YCSB, TATP, Smallbank等。典型的OLAP benchmark包括TPC-H, TPC-DS, JOB等。部分研究工作則使用來(lái)自真實(shí)業(yè)務(wù)的數(shù)據(jù)。這些數(shù)據(jù)往往更具可信度,但通常難以獲取,因?yàn)樗鼈內(nèi)菀咨婕皵?shù)據(jù)庫(kù)用戶隱私,而且數(shù)據(jù)采集與打標(biāo)簽的開(kāi)銷較大。

 

03 性能預(yù)測(cè) Performance Prediction

數(shù)據(jù)庫(kù)性能預(yù)測(cè)的目標(biāo)是在給定的環(huán)境下,預(yù)測(cè)查詢的執(zhí)行時(shí)間(延遲)或吞吐量。與數(shù)據(jù)庫(kù)優(yōu)化器(Optimizer)內(nèi)部的代價(jià)估計(jì)(Cost Estimation)有所不同,它往往是監(jiān)控系統(tǒng)或自適應(yīng)數(shù)據(jù)庫(kù)系統(tǒng)(Self-driving Database System)的組成部分,以指導(dǎo)正常環(huán)境下的性能調(diào)優(yōu)。隨著機(jī)器學(xué)習(xí)技術(shù)的發(fā)展,許多研究工作用機(jī)器學(xué)習(xí)模型代替基于公式與規(guī)則的算法,在數(shù)據(jù)庫(kù)環(huán)境相對(duì)固定的情形下,能夠取得較好的效果。相關(guān)工作按預(yù)測(cè)對(duì)象可分為單查詢、多查詢兩類。

圖片

圖 2  數(shù)據(jù)庫(kù)性能預(yù)測(cè)研究工作匯總

(3-1)單查詢

此類工作僅針對(duì)單一查詢,不考慮并發(fā)執(zhí)行的影響。我們選取了近年來(lái)采用機(jī)器學(xué)習(xí)算法的代表性工作進(jìn)行評(píng)述。它們將執(zhí)行計(jì)劃以算子粒度編碼為向量,訓(xùn)練機(jī)器學(xué)習(xí)模型用于預(yù)測(cè)。其中,編碼的信息可包括來(lái)自數(shù)據(jù)庫(kù)優(yōu)化器的信息,如基數(shù)(Cardinality)、代價(jià)(Cost)等。

(3-2)多查詢

此類工作以整個(gè)工作負(fù)載為輸入,通常先進(jìn)行聚類和采樣,再輸入模型進(jìn)行預(yù)測(cè)。部分工作不僅考慮工作負(fù)載信息,還將環(huán)境信息加入模型輸入,例如配置參數(shù)、硬件信息等,這有助于模型適應(yīng)動(dòng)態(tài)變化的環(huán)境。

 

04 異常診斷 Anomaly Diagnosis

數(shù)據(jù)庫(kù)性能異常主要表現(xiàn)為吞吐量下降或較長(zhǎng)的查詢延遲。異常診斷的目標(biāo)是定位異常根因,可作為異常環(huán)境下性能調(diào)優(yōu)的指導(dǎo)。在不同研究工作中,診斷系統(tǒng)的輸入、輸出、支持的異常類型均有所不同。我們根據(jù)輸入數(shù)據(jù)的不同,將其分為三類:

圖片

圖 3  數(shù)據(jù)庫(kù)性能異常診斷研究工作匯總

 

(4-1)基于監(jiān)控指標(biāo)

此類方法的輸入是操作系統(tǒng)和數(shù)據(jù)庫(kù)的關(guān)鍵績(jī)效指標(biāo)(Key Performance Indicator, KPI),包括CPU、內(nèi)存、I/O、網(wǎng)絡(luò)等資源指標(biāo),以及讀寫(xiě)行數(shù)等工作負(fù)載指標(biāo)。其輸出通常包含異常監(jiān)控指標(biāo)與推測(cè)的異常類型,通常能支持大多數(shù)常見(jiàn)的性能異常。

 

(4-2)基于日志

此類方法的輸入是數(shù)據(jù)庫(kù)的debug日志,通常以兩份日志為輸入,比較其系統(tǒng)行為的差異。若兩份日志分別來(lái)自正常、異常環(huán)境,則其系統(tǒng)行為的差異可反映異常根因。此類方法的主要局限性在于記錄debug日志的開(kāi)銷較大。

 

(4-3)基于時(shí)間

此類方法的輸入是時(shí)間指標(biāo),通常僅限于診斷資源瓶頸與競(jìng)爭(zhēng),相關(guān)算法通?;趫D結(jié)構(gòu)的分析,以探索不同組件的資源開(kāi)銷。

 

05 調(diào)優(yōu)

數(shù)據(jù)庫(kù)調(diào)優(yōu)旨在對(duì)性能影響因素進(jìn)行調(diào)整,以提高吞吐量或降低延遲。相關(guān)的影響因素包括配置旋鈕(Configuration Knobs)、索引(Indexes)、視圖(View)、資源(Resource)、存儲(chǔ)(Storage)、查詢語(yǔ)句設(shè)計(jì)等。近年來(lái),機(jī)器學(xué)習(xí)算法在該領(lǐng)域得到廣泛應(yīng)用,代表性方法包括強(qiáng)化學(xué)習(xí)(Reinforcement Learning)、貝葉斯優(yōu)化(Bayesian Optimization)等。我們根據(jù)調(diào)優(yōu)對(duì)象的不同,將相關(guān)工作分為以下六類:

圖片

圖 4  數(shù)據(jù)庫(kù)性能調(diào)優(yōu)研究工作匯總

 

(5-1)調(diào)參(Knob Tuning)

數(shù)據(jù)庫(kù)系統(tǒng)內(nèi)通常有上百個(gè)可供調(diào)節(jié)的旋鈕(Knob),對(duì)性能和資源使用有著重要影響。局部最優(yōu)的參數(shù)往往并非全局最優(yōu),不同參數(shù)之間存在相互影響,搜索空間大而復(fù)雜。常見(jiàn)調(diào)參技術(shù)包括基于規(guī)則搜索、貝葉斯優(yōu)化、強(qiáng)化學(xué)習(xí)等。

 

(5-2)索引選擇(Index Selection)

索引選擇是指對(duì)給定的工作負(fù)載與存儲(chǔ)限制,選擇合適的列建立索引。該任務(wù)的主要挑戰(zhàn)包括:(1)備選的索引很多,因?yàn)榭梢越⒍嗔兴饕?;?)索引之間存在相互影響;(3)索引并非越多越好,例如增刪改操作會(huì)有索引開(kāi)銷。傳統(tǒng)研究工作通常以純收益或單位空間收益為優(yōu)化目標(biāo),基于貪心、迭代、線性規(guī)劃等方法尋找最優(yōu)解。近年來(lái),強(qiáng)化學(xué)習(xí)也被應(yīng)用于這一問(wèn)題。也有研究工作從代價(jià)比較的角度,利用機(jī)器學(xué)習(xí)模型進(jìn)行優(yōu)化。

圖片

圖 5  索引選擇研究工作細(xì)節(jié)匯總(屬于調(diào)優(yōu)方法之一)

 

(5-3)視圖物化(View Materialization)

視圖物化是指保存一些查詢或子查詢的結(jié)果,供其他查詢使用。它可以通過(guò)減少重復(fù)操作來(lái)提升性能,但具有一定的存儲(chǔ)和維護(hù)代價(jià)。傳統(tǒng)方法主要有遺傳爬山算法、整數(shù)線性規(guī)劃等,近年來(lái)也有基于強(qiáng)化學(xué)習(xí)的方法被提出。

 

(5-4)彈性資源(Elastic Resource)

彈性資源主要通過(guò)增減設(shè)備節(jié)點(diǎn)數(shù)量、調(diào)整備份等方式進(jìn)行性能優(yōu)化。以增加設(shè)備節(jié)點(diǎn)為例,首先數(shù)據(jù)被重新分片并決定備份數(shù),其次決定如何在各節(jié)點(diǎn)上分配這些數(shù)據(jù)分片,最后進(jìn)行數(shù)據(jù)遷移。刪除節(jié)點(diǎn)的過(guò)程也是類似的。據(jù)此,相關(guān)研究工作主要分為兩類:一類關(guān)注資源與數(shù)據(jù)的分配,包括如何調(diào)整節(jié)點(diǎn)數(shù)、數(shù)據(jù)分片、備份等;另一類則關(guān)注如何動(dòng)態(tài)遷移數(shù)據(jù),以降低遷移過(guò)程中的性能損失。

 

(5-5)存儲(chǔ)管理(Storage Management)

分布式存儲(chǔ)管理也是性能優(yōu)化的一種方式。一方面,這樣的技術(shù)有利于彌補(bǔ)通用分布式框架(如Spark)的不足,例如垃圾回收、索引構(gòu)建等。另一方面,它們可以為特定的數(shù)據(jù)和方法提供支持,例如軌跡數(shù)據(jù)上的K近鄰算法等。

 

(5-6)SQL不良模式檢測(cè)(SQL Antipattern Detection)

SQL不良模式(SQL Antipattern)包括不良的查詢(Queries)和模式(Schema)。此類工作可協(xié)助數(shù)據(jù)庫(kù)管理人員進(jìn)行定位和改寫(xiě)。目前,相關(guān)工作主要依賴于人工制定的規(guī)則進(jìn)行匹配檢測(cè)。

 

06 挑戰(zhàn)與未來(lái)工作

數(shù)據(jù)庫(kù)性能優(yōu)化仍然面臨眾多挑戰(zhàn)。我們針對(duì)不同主題,提出了一些有待解決的問(wèn)題。

 

(6-1)性能預(yù)測(cè)

優(yōu)化器的估計(jì)不準(zhǔn)確:現(xiàn)有方法大多依賴于優(yōu)化器的基數(shù)估計(jì)或代價(jià)估計(jì),而這一估計(jì)是不準(zhǔn)確的。近年來(lái),機(jī)器學(xué)習(xí)算法被廣泛應(yīng)用于此類問(wèn)題,但仍具有一定挑戰(zhàn)性。

與性能調(diào)優(yōu)的隔閡:此類方法雖然能預(yù)測(cè)調(diào)優(yōu)前后的性能,但并不能指導(dǎo)何時(shí)調(diào)優(yōu)與如何調(diào)優(yōu),以降低調(diào)優(yōu)過(guò)程中的系統(tǒng)性能損失。

 

(6-2)性能異常診斷

有限的異常數(shù)據(jù):數(shù)據(jù)對(duì)此類工作的評(píng)測(cè)至關(guān)重要,但由于發(fā)生頻率低、缺乏標(biāo)準(zhǔn)、打標(biāo)簽難度大,往往難以獲得。

數(shù)據(jù)采集的開(kāi)銷:從數(shù)據(jù)庫(kù)系統(tǒng)視圖中采集一些表級(jí)指標(biāo),或者記錄debug日志,都會(huì)造成顯著的性能開(kāi)銷。

OLTP與OLAP:二者的性能異常表現(xiàn)有較大差異,這一問(wèn)題在混合負(fù)載中尤其顯著。

 

(6-3)性能調(diào)優(yōu)

何時(shí)優(yōu)化:現(xiàn)有的調(diào)優(yōu)過(guò)程通常是在發(fā)生性能下降之后進(jìn)行的,并不能避免低性能的出現(xiàn)

動(dòng)態(tài)工作負(fù)載:當(dāng)工作負(fù)載發(fā)生變化時(shí),原先的優(yōu)化方案可能并不適用。

這些問(wèn)題的一種解決方案是在線優(yōu)化,但其安全性仍具有挑戰(zhàn)。

 

(6-4)其他

近年來(lái),自適應(yīng)數(shù)據(jù)庫(kù)系統(tǒng)(Self-driving Database System)是一個(gè)熱門(mén)話題,此類數(shù)據(jù)庫(kù)系統(tǒng)能根據(jù)工作負(fù)載和數(shù)據(jù)庫(kù)環(huán)境進(jìn)行自動(dòng)優(yōu)化,而無(wú)需人工干預(yù)。然而,數(shù)據(jù)庫(kù)系統(tǒng)內(nèi)部包含大量組件,如何作為統(tǒng)一的系統(tǒng)進(jìn)行設(shè)計(jì),仍有待進(jìn)一步探索。此外,一些新的數(shù)據(jù)庫(kù)組件設(shè)計(jì),例如基于學(xué)習(xí)的優(yōu)化器、非易失性存儲(chǔ)、大規(guī)模分布式引擎等,如何將數(shù)據(jù)庫(kù)優(yōu)化工作遷移到此類系統(tǒng)上,進(jìn)行不同于傳統(tǒng)數(shù)據(jù)庫(kù)的設(shè)計(jì),也是值得研究的方向。

 

詳細(xì)了解本工作,請(qǐng)?jiān)L問(wèn)下方鏈接地址:

論文鏈接:

https://www.sciengine.com/SCIS/doi/10.1007/s11432-021-3578-6

 

 

References

[1] Zhou X, Chai C, Li G, et al. Database meets artificial intelligence: A survey. TKDE, 2022.

[2] Pavlo A, Angulo G, Arulraj J, et al. Self-driving database management systems. CIDR, 2017.

[3] Mozafari B, Curino C, Jindal A, et al. Performance and resource modeling in highly-concurrent OLTP workloads. SIGMOD, 2013.

[4] Ma M, Yin Z, Zhang S, et al. Diagnosing root causes of intermittent slow queries in large-scale cloud databases. VLDB, 2020.

[5] Zhang X, Chang Z, Li Y, et al. Facilitating database tuning with hyper-parameter optimization: A comprehensive experimental evaluation. VLDB, 2022.

 

END

 

實(shí)驗(yàn)室簡(jiǎn)介

北京大學(xué)數(shù)據(jù)與智能實(shí)驗(yàn)室(Data And Intelligence Research Lab at Peking Univeristy,PKU-DAIR實(shí)驗(yàn)室)由北京大學(xué)計(jì)算機(jī)學(xué)院崔斌教授領(lǐng)導(dǎo),長(zhǎng)期從事數(shù)據(jù)庫(kù)系統(tǒng)、大數(shù)據(jù)管理與分析、人工智能等領(lǐng)域的前沿研究,在理論和技術(shù)創(chuàng)新以及系統(tǒng)研發(fā)上取得多項(xiàng)成果,已在國(guó)際頂級(jí)學(xué)術(shù)會(huì)議和期刊發(fā)表學(xué)術(shù)論文100余篇,發(fā)布多個(gè)開(kāi)源項(xiàng)目。課題組同學(xué)曾數(shù)十次獲得包括CCF優(yōu)博、北大優(yōu)博、微軟學(xué)者、蘋(píng)果獎(jiǎng)學(xué)金、谷歌獎(jiǎng)學(xué)金等榮譽(yù)。PKU-DAIR實(shí)驗(yàn)室持續(xù)與工業(yè)界展開(kāi)卓有成效的合作,與騰訊、阿里巴巴、蘋(píng)果、微軟、百度、快手、中興通訊等多家知名企業(yè)開(kāi)展項(xiàng)目合作和前沿探索,解決實(shí)際問(wèn)題,進(jìn)行科研成果的轉(zhuǎn)化落地。

 

鏈接:[SCIS 2022] 數(shù)據(jù)庫(kù)性能優(yōu)化綜述 (qq.com) 

 


SCHOLAT.com 學(xué)者網(wǎng)
免責(zé)聲明 | 關(guān)于我們 | 聯(lián)系我們
聯(lián)系我們: