一種oracle數(shù)據(jù)庫優(yōu)化配置的方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)庫領(lǐng)域,特別涉及一種ORACLE數(shù)據(jù)庫優(yōu)化配置的方法及系統(tǒng)。
【背景技術(shù)】
[0002]ORACLE數(shù)據(jù)庫是ORACLE公司開發(fā)的基于客戶/服務(wù)器體系結(jié)構(gòu)的大型關(guān)系型數(shù)據(jù)庫,在聯(lián)機(jī)事務(wù)處理領(lǐng)域廣泛使用,應(yīng)用于金融、電信、能源、交通、社保、公安等關(guān)鍵行業(yè)。
[0003]ORACLE數(shù)據(jù)庫配置是否反映業(yè)務(wù)系統(tǒng)的特點(diǎn),是否與業(yè)務(wù)負(fù)載保持最佳配合,直接影響數(shù)據(jù)庫性能。配置優(yōu)化前后數(shù)據(jù)庫性能差距可能相差很大。但是,ORACLE數(shù)據(jù)庫配置參數(shù)眾多,數(shù)量達(dá)到幾百個(gè)以上,配置參數(shù)之間依賴關(guān)系不明確,配置參數(shù)組合非常多。如果采用手工配置,數(shù)據(jù)庫配置難度高,工作量大。因此,如何降配置難度,減少工作量,是ORACLE數(shù)據(jù)庫配置優(yōu)化工作中解決的關(guān)鍵問題。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的目的是提供一種ORACLE數(shù)據(jù)庫優(yōu)化配置的方法,該方法能夠大大降低ORACLE數(shù)據(jù)庫配置工作量,降低配置難度,為得到配置優(yōu)化組合提供科學(xué)的方法。
[0005]為解決上述技術(shù)問題,本發(fā)明提供一種ORACLE數(shù)據(jù)庫優(yōu)化配置的方法,包括:
[0006]建立配置庫類別,根據(jù)所述配置庫類別分別對(duì)應(yīng)建立配置參數(shù),并為所述配置參數(shù)設(shè)置取值列表,其中,所述配置參數(shù)的數(shù)據(jù)類型為數(shù)值型,布爾型或字符串型;所述數(shù)值型的取值列表根據(jù)ORACLE數(shù)據(jù)庫服務(wù)器進(jìn)行設(shè)置,所述布爾型的取值列表為TRUE或FALSE,所述字符串型的取值列表為字符串選項(xiàng)列表;
[0007]利用所述配置庫獲取配置參數(shù),并根據(jù)基準(zhǔn)測(cè)試案例庫中選擇運(yùn)行的基準(zhǔn)測(cè)試案例,其中,所述基準(zhǔn)測(cè)試案例庫為每類工作負(fù)載類型建立基準(zhǔn)測(cè)試案例表;
[0008]根據(jù)所述規(guī)則庫設(shè)置參數(shù)值,并按照排列組合方法,形成預(yù)定配置參數(shù)組合,其中,所述規(guī)則庫設(shè)置配置參數(shù)與依賴配置參數(shù)的關(guān)聯(lián)關(guān)系;
[0009]根據(jù)每種預(yù)定配置參數(shù)組合修改ORACLE數(shù)據(jù)庫啟動(dòng)配置文件,并運(yùn)行所述基準(zhǔn)測(cè)試案例,得到每種預(yù)定配置參數(shù)組合下的測(cè)試結(jié)果;
[0010]按照用戶的預(yù)定規(guī)則,對(duì)每種預(yù)定配置參數(shù)組合下的測(cè)試結(jié)果進(jìn)行性能分析,得到分析結(jié)果;
[0011]根據(jù)所述分析結(jié)果,選出滿足預(yù)定要求的配置參數(shù)組合。
[0012]其中,所述基準(zhǔn)測(cè)試案例庫的生成過程包括:
[0013]建立工作負(fù)載類型;
[0014]為每類工作負(fù)載類型建立基準(zhǔn)測(cè)試案例表,設(shè)置所述基準(zhǔn)測(cè)試案數(shù)據(jù)生成算法,設(shè)置所述基準(zhǔn)測(cè)試案例的邏輯表達(dá),設(shè)置測(cè)試結(jié)果計(jì)算公式。
[0015]其中,還包括:
[0016]為所有基準(zhǔn)測(cè)試案例表均建立索引。
[0017]其中,所述規(guī)則庫的生成過程包括:
[0018]建立規(guī)則庫格式;
[0019]設(shè)置配置參數(shù)與依賴配置參數(shù)的關(guān)聯(lián)關(guān)系,其中,所述關(guān)聯(lián)關(guān)系包括:正向關(guān)聯(lián)關(guān)系,反向關(guān)聯(lián)關(guān)系,順序關(guān)聯(lián)關(guān)系和等式關(guān)聯(lián)關(guān)系;
[0020]設(shè)置配置參數(shù)與依賴配置參數(shù)的關(guān)聯(lián)關(guān)系的作用強(qiáng)度。
[0021]其中,所述根據(jù)所述規(guī)則庫設(shè)置參數(shù)值,并按照排列組合方法,形成預(yù)定配置參數(shù)組合包括:
[0022]查詢配置庫,獲取配置庫的配置參數(shù)列表;
[0023]利用規(guī)則庫的規(guī)則設(shè)置所述配置參數(shù)列表的值,并按照排列組合方法進(jìn)行排列組合,形成一組配置參數(shù)組合。
[0024]其中,所述運(yùn)行所述基準(zhǔn)測(cè)試案例包括:
[0025]根據(jù)從基準(zhǔn)測(cè)試案例庫中選取基準(zhǔn)測(cè)試案例,并為所述基準(zhǔn)測(cè)試案例的每張表建立數(shù)據(jù)庫表,并為每張表建立索引;
[0026]生成所述基準(zhǔn)測(cè)試案例運(yùn)行數(shù)據(jù);
[0027]根據(jù)所述基準(zhǔn)測(cè)試案例的邏輯表達(dá)運(yùn)行所述基準(zhǔn)測(cè)試案例;
[0028]記錄運(yùn)行所述基準(zhǔn)測(cè)試案例測(cè)試結(jié)果數(shù)據(jù)。
[0029]其中,所述按照用戶的預(yù)定規(guī)則,對(duì)每種預(yù)定配置參數(shù)組合下的測(cè)試結(jié)果進(jìn)行性能分析,得到分析結(jié)果包括:
[0030]選取測(cè)試結(jié)果的基線,并對(duì)測(cè)試結(jié)果中的測(cè)試指標(biāo)進(jìn)行規(guī)范化處理;
[0031]計(jì)算每種配置參數(shù)組合下的測(cè)試結(jié)果的性能值;
[0032]將每種配置參數(shù)組合下的測(cè)試結(jié)果的性能值與預(yù)定各等級(jí)的數(shù)值范圍進(jìn)行比較,確定每種配置參數(shù)組合下的測(cè)試結(jié)果所屬的等級(jí);
[0033]得到每種配置參數(shù)組合下的測(cè)試結(jié)果所屬的等級(jí)表。
[0034]本發(fā)明提供一種ORACLE數(shù)據(jù)庫優(yōu)化配置的系統(tǒng),包括:
[0035]配置庫模塊,用于建立配置庫類別,根據(jù)所述配置庫類別分別對(duì)應(yīng)建立配置參數(shù),并為所述配置參數(shù)設(shè)置取值列表,其中,所述配置參數(shù)的數(shù)據(jù)類型為數(shù)值型,布爾型或字符串型;所述數(shù)值型的取值列表根據(jù)ORACLE數(shù)據(jù)庫服務(wù)器進(jìn)行設(shè)置,所述布爾型的取值列表為TRUE或FALSE,所述字符串型的取值列表為字符串選項(xiàng)列表;
[0036]規(guī)則庫模塊,用于根據(jù)預(yù)定規(guī)則建立規(guī)則庫,其中,所述規(guī)則庫設(shè)置配置參數(shù)與依賴配置參數(shù)的關(guān)聯(lián)關(guān)系;
[0037]基準(zhǔn)測(cè)試案例庫模塊,用于按照ORACLE數(shù)據(jù)庫規(guī)則建立基準(zhǔn)測(cè)試案例庫,其中,所述基準(zhǔn)測(cè)試案例庫為每類工作負(fù)載類型建立基準(zhǔn)測(cè)試案例表;
[0038]配置加載執(zhí)行模塊,用于利用所述配置庫獲取配置參數(shù);根據(jù)所述規(guī)則庫設(shè)置參數(shù)值,并按照排列組合方法,形成預(yù)定配置參數(shù)組合;根據(jù)每種預(yù)定配置參數(shù)組合修改ORACLE數(shù)據(jù)庫啟動(dòng)配置文件;
[0039]測(cè)試案例執(zhí)行模塊,用于并根據(jù)基準(zhǔn)測(cè)試案例庫中選擇運(yùn)行的基準(zhǔn)測(cè)試案例,并運(yùn)行所述基準(zhǔn)測(cè)試案例;
[0040]分析模塊,用于根據(jù)得到每種預(yù)定配置參數(shù)組合下的測(cè)試結(jié)果,并按照用戶的預(yù)定規(guī)則,對(duì)每種預(yù)定配置參數(shù)組合下的測(cè)試結(jié)果進(jìn)行性能分析,得到分析結(jié)果;根據(jù)所述分析結(jié)果,選出滿足預(yù)定要求的配置參數(shù)組合。
[0041]其中,還包括:
[0042]控制臺(tái)模塊,用于人機(jī)交互。
[0043]其中,還包括:
[0044]權(quán)限模塊,用于設(shè)置用戶的訪問權(quán)限。
[0045]本發(fā)明所提供的ORACLE數(shù)據(jù)庫優(yōu)化配置的方法及系統(tǒng),包括:建立配置庫類別,根據(jù)配置庫類別分別對(duì)應(yīng)建立配置參數(shù),并為配置參數(shù)設(shè)置取值列表;利用配置庫獲取配置參數(shù),并根據(jù)基準(zhǔn)測(cè)試案例庫中選擇運(yùn)行的基準(zhǔn)測(cè)試案例;根據(jù)規(guī)則庫設(shè)置參數(shù)值,并按照排列組合方法,形成預(yù)定配置參數(shù)組合;根據(jù)每種預(yù)定配置參數(shù)組合修改ORACLE數(shù)據(jù)庫啟動(dòng)配置文件,并運(yùn)行基準(zhǔn)測(cè)試案例,得到每種預(yù)定配置參數(shù)組合下的測(cè)試結(jié)果;按照用戶的預(yù)定規(guī)則,對(duì)每種預(yù)定配置參數(shù)組合下的測(cè)試結(jié)果進(jìn)行性能分析,得到分析結(jié)果;根據(jù)分析結(jié)果,選出滿足預(yù)定要求的配置參數(shù)組合;
[0046]該方法通過設(shè)置配置庫、規(guī)則庫、基準(zhǔn)測(cè)試案例庫,然后通過配置加載執(zhí)行模塊直接驅(qū)動(dòng)ORACLE數(shù)據(jù)庫,進(jìn)行數(shù)據(jù)庫各種操作。再利用基準(zhǔn)測(cè)試案例庫測(cè)試數(shù)據(jù)庫在特定工作負(fù)載下的性能,選定基準(zhǔn)測(cè)試案例。通過不斷調(diào)整配置庫、規(guī)則庫的輸入,對(duì)選定的基準(zhǔn)測(cè)試案例進(jìn)行性能分析,得出一組符合用戶要求的配置參數(shù)組合。又通過規(guī)則制導(dǎo)生成配置參數(shù)的組合,消除了單純排列組合導(dǎo)致的參數(shù)組合數(shù)量的爆炸。該方法能夠降ORACLE數(shù)據(jù)庫優(yōu)化配置難度,減少工作量,為得到配置優(yōu)化組合提供科學(xué)的方法。
【附圖說明】
[0047]為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)