一種Sybase ASE數(shù)據(jù)庫配置優(yōu)化系統(tǒng)及方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明公開一種數(shù)據(jù)庫配置優(yōu)化系統(tǒng)及方法,屬于數(shù)據(jù)庫配置領(lǐng)域;具體地說是一種Sybase ASE數(shù)據(jù)庫配置優(yōu)化系統(tǒng)及方法。
【背景技術(shù)】
[0002]Sybase ASE,全稱為 Adaptive Server Enterprise,是全球著名的基礎(chǔ)架構(gòu)供貨商Sybase公司提供,是Sybase公司的旗艦數(shù)據(jù)庫產(chǎn)品。ASE是Adaptive ServerEnterprise的簡稱。Sybase ASE數(shù)據(jù)庫是SAP公司開發(fā)的基于客戶/服務(wù)器體系結(jié)構(gòu)的大型關(guān)系型數(shù)據(jù)庫,在聯(lián)機事務(wù)處理領(lǐng)域廣泛使用,應(yīng)用于金融、鐵路、法院等行業(yè)。SybaseASE提供數(shù)據(jù)庫能力,還提供了自我管理、自動故障切換支持功能,以及大量的性能優(yōu)化調(diào)整特性,可以大量節(jié)約運行成本。當(dāng)然是否反映業(yè)務(wù)系統(tǒng)的特點,是否與業(yè)務(wù)負載保持最佳配合,取決于Sybase ASE數(shù)據(jù)庫配置性能,配置優(yōu)化前后的數(shù)據(jù)庫性能差距可能達到幾十倍,甚至上百倍。但是,因Sybase ASE數(shù)據(jù)庫配置參數(shù)眾多,數(shù)量多達到幾百個,配置參數(shù)之間依賴關(guān)系又不明確,配置參數(shù)組合復(fù)雜,尋找適合業(yè)務(wù)負載的最佳參數(shù)組合就成了難題,現(xiàn)有的方式是采用手工配置,數(shù)據(jù)庫配置難度高,工作量大,效率也不高。而本發(fā)明提供一種Sybase ASE數(shù)據(jù)庫配置優(yōu)化系統(tǒng)及方法,自動配置優(yōu)化工具軟件架構(gòu)及算法,大大降低Sybase ASE數(shù)據(jù)庫配置工作量,降低配置難度,對ASE數(shù)據(jù)庫性能優(yōu)化提供指導(dǎo)作用。
【發(fā)明內(nèi)容】
[0003]本發(fā)明針對Sybase ASE數(shù)據(jù)庫配置參數(shù)眾多,配置參數(shù)組合復(fù)雜,手工配置,數(shù)據(jù)庫配置難度高,工作量大,效率也不高的問題,提供一種Sybase ASE數(shù)據(jù)庫配置優(yōu)化系統(tǒng)及方法,大大降低Sybase ASE數(shù)據(jù)庫配置工作量,降低配置難度,對ASE數(shù)據(jù)庫性能優(yōu)化提供指導(dǎo)作用。
[0004]本發(fā)明提出的具體方案是:
一種Sybase ASE數(shù)據(jù)庫配置優(yōu)化系統(tǒng),包括控制臺模塊、配置庫模塊、規(guī)則庫模塊、配置加載執(zhí)行模塊、基準(zhǔn)測試案例庫模塊、測試案例執(zhí)行模塊、性能分析模塊;
控制臺模塊負責(zé)實現(xiàn)系統(tǒng)中的人機交互;
配置庫模塊負責(zé)管理配置庫,按類別組織的配置參數(shù);
規(guī)則庫模塊負責(zé)管理規(guī)則庫,配置參數(shù)之間的關(guān)系;
配置加載執(zhí)行模塊負責(zé)直接驅(qū)動Sybase ASE數(shù)據(jù)庫,進行數(shù)據(jù)庫啟動、停止和參數(shù)動態(tài)調(diào)整;
基準(zhǔn)測試案例庫模塊負責(zé)管理基準(zhǔn)測試案例庫,并測試數(shù)據(jù)庫在特定工作負載下的性能,檢驗Sybase ASE數(shù)據(jù)庫的工作負載的測試案例,具有通用性;
測試案例執(zhí)行模塊負責(zé)運行測試案例,得到測試指標(biāo)結(jié)果;
性能分析模塊負責(zé)不斷調(diào)整配置庫、規(guī)則庫的輸入,進行性能分析,得出一組符合用戶要求的配置參數(shù)組合; 用戶通過控制臺模塊向配置庫模塊下達配置庫管理命令,建立、修改和刪除配置參數(shù);用戶通過控制臺模塊向規(guī)則庫模塊下達規(guī)則庫管理命令,建立、修改和刪除規(guī)則;用戶通過控制臺模塊向基準(zhǔn)測試案例庫模塊下達基準(zhǔn)測試案例庫管理命令,建立、修改和刪除基準(zhǔn)測試案例;通過配置加載執(zhí)行模塊,加載執(zhí)行配置,啟動ASE,配置加載執(zhí)行模塊調(diào)用測試案例執(zhí)行模塊,運行測試案例,得到測試指標(biāo)結(jié)果,配置加載執(zhí)行模塊調(diào)用性能分析模塊,進行配置參數(shù)組合下的運行性能分析,得到最佳配置參數(shù)組合。
[0005]所述配置庫包括全部的Sybase ASE數(shù)據(jù)庫配置參數(shù),數(shù)值型參數(shù)按照數(shù)據(jù)庫服務(wù)器的配置劃分,布爾型參數(shù)分為O和1,字符串類型參數(shù)按枚舉劃分。
[0006]所述基準(zhǔn)測試案例庫使用SQL語句,工作負載分為交易型、查詢型和統(tǒng)計分析型三類。
[0007]所述測試案例執(zhí)行模塊內(nèi)設(shè)有測試案例執(zhí)行引擎,由配置加載執(zhí)行模塊調(diào)度,對各種配置參數(shù)組合運行基準(zhǔn)測試案例,收集測試結(jié)果,計算測試指標(biāo)值,而基準(zhǔn)測試案例庫為測試案例執(zhí)行引擎提供輸入。
[0008]所述控制臺模塊分別通過不同的通信端口與配置庫模塊、規(guī)則庫模塊、基準(zhǔn)測試案例庫模塊、性能分析模塊、配置加載執(zhí)行模塊相連;配置加載執(zhí)行模塊分別通過不同的通信端口與配置庫模塊、規(guī)則庫模塊、Sybase ASE、測試案例執(zhí)行模塊相連;測試案例執(zhí)行模塊分別通過不同的通信端口與基準(zhǔn)測試案例庫模塊、Sybase ASE、性能分析模塊相連;性能分析模塊通過通信端口與Sybase ASE相連。
[0009]—種Sybase ASE數(shù)據(jù)庫配置優(yōu)化方法,利用所述的一種Sybase ASE數(shù)據(jù)庫配置優(yōu)化系統(tǒng),用戶通過控制臺模塊向配置庫模塊下達配置庫管理命令,建立、修改和刪除配置參數(shù);用戶通過控制臺模塊向規(guī)則庫模塊下達規(guī)則庫管理命令,建立、修改和刪除規(guī)則;用戶通過控制臺模塊向基準(zhǔn)測試案例庫模塊下達基準(zhǔn)測試案例庫管理命令,建立、修改和刪除基準(zhǔn)測試案例;通過配置加載執(zhí)行模塊,加載執(zhí)行配置,啟動ASE,配置加載執(zhí)行模塊調(diào)用測試案例執(zhí)行模塊,運行測試案例,得到測試指標(biāo)結(jié)果,配置加載執(zhí)行模塊調(diào)用性能分析模塊,進行配置參數(shù)組合下的運行性能分析,得到最佳配置參數(shù)組合。
[0010]所述控制臺模塊向配置庫模塊下達配置庫管理命令,進行管理的過程為:建立配置庫類別,為每一個配置庫類別建立配置參數(shù),配置參數(shù)是數(shù)值型、布爾型、字符串型?’為每個配置項建立取值列表,數(shù)值型參數(shù)按照數(shù)據(jù)庫服務(wù)器的配置劃分?jǐn)?shù)值,布爾型參數(shù)分為O和1,字符串類型參數(shù)按照枚舉劃分;管理配置庫類別,提供配置庫類別增加、修改、刪除、查詢功能;管理配置參數(shù),提供配置參數(shù)增加、修改、刪除、查詢功能。
[0011]所述控制臺模塊向規(guī)則庫模塊下達規(guī)則庫管理命令,進行管理的過程為:
建立規(guī)則庫格式,包括配置參數(shù),依賴配置參數(shù),并建立配置參數(shù)與依賴配置參數(shù)之間的關(guān)系的依賴關(guān)系,建立配置參數(shù)與依賴配置參數(shù)之間的關(guān)系等式;管理規(guī)則庫,提供規(guī)則庫增加、修改、刪除和查詢功能。
[0012]所述依賴關(guān)系分為正向關(guān)聯(lián)關(guān)系、反向關(guān)聯(lián)關(guān)系、順序依賴關(guān)系;
正向關(guān)聯(lián)關(guān)系:配置參數(shù)與依賴配置參數(shù)對數(shù)據(jù)庫性能的影響是同時增長或同時降低;
反向關(guān)聯(lián)關(guān)系:配置參數(shù)增長則依賴配置參數(shù)降低,或者配置參數(shù)降低則依賴配置參數(shù)增長。
[0013]順序依賴關(guān)系:設(shè)置配置參數(shù),則必須設(shè)置依賴配置參數(shù)。
[0014]所述配置加載執(zhí)行模塊調(diào)用測試案例執(zhí)行模塊過程為:從基準(zhǔn)測試案例庫中提取測試案例;為基準(zhǔn)測試案例的每張表建立數(shù)據(jù)庫表;為基準(zhǔn)測試案例生成數(shù)據(jù);為基準(zhǔn)測試案例的每張表建立索引;運行測試SQL ;記錄測試數(shù)據(jù);計算測試指標(biāo);刪除測試表和數(shù)據(jù);重復(fù)以上過程,完成所有選定的基準(zhǔn)測試案例。
[0015]本發(fā)明的有益之處是:本發(fā)明系統(tǒng)包括控制臺模塊、配置庫模塊、規(guī)則庫模塊、配置加載執(zhí)行模塊、基準(zhǔn)測試案例庫模塊、測試案例執(zhí)行模塊、性能分析模塊;利用此系統(tǒng)自動配置優(yōu)化工具軟件架構(gòu)及算法,將Sybase ASE數(shù)據(jù)庫配置的專家知識通過配置庫、規(guī)則庫、基準(zhǔn)測試案例庫表達,然后通過配置加載執(zhí)行模塊直接驅(qū)動Sybase ASE數(shù)據(jù)庫,進行數(shù)據(jù)庫啟動、停止和參數(shù)動態(tài)調(diào)整。再利用基準(zhǔn)測試案例庫測試數(shù)據(jù)庫在特定工作負載下的性能,通過不斷調(diào)整配置庫、規(guī)則庫的輸入,進行性能分析,得出一組符合用戶要求的配置