1.一種通過動態(tài)分析創(chuàng)建數(shù)據(jù)庫索引的方法,其特征在于,其實現(xiàn)過程為:
捕獲數(shù)據(jù)庫執(zhí)行語句,解析查詢結(jié)構(gòu);
設(shè)置查詢結(jié)構(gòu)計數(shù)器模型,將解析后數(shù)值放入計數(shù)器中;
設(shè)置計數(shù)閾值,計數(shù)器達到閾值范圍,檢查數(shù)據(jù)表的索引情況;
根據(jù)索引檢查情況及處理策略,創(chuàng)建及調(diào)整數(shù)據(jù)表索引。
2.根據(jù)權(quán)利要求1所述的一種通過動態(tài)分析創(chuàng)建數(shù)據(jù)庫索引的方法,其特征在于,捕獲數(shù)據(jù)庫執(zhí)行語句是指捕獲所有執(zhí)行的查詢SQL,捕獲方式為應(yīng)用程序數(shù)據(jù)庫執(zhí)行過程過濾或數(shù)據(jù)庫工具執(zhí)行分析,通過查詢SQL特點,通過字符串處理策略對語句進行解析。
3.根據(jù)權(quán)利要求2所述的一種通過動態(tài)分析創(chuàng)建數(shù)據(jù)庫索引的方法,其特征在于,所述SQL組件在數(shù)據(jù)庫表中預(yù)制并且由該數(shù)據(jù)庫表提供,用于捕捉特定表執(zhí)行的查詢語句,在進行查詢執(zhí)行的時候,將這些SQL捕獲并記錄;此外,數(shù)據(jù)庫表還提供對數(shù)據(jù)庫查詢緩存進行檢索,收集對特定表的查詢語句。
4.根據(jù)權(quán)利要求3所述的一種通過動態(tài)分析創(chuàng)建數(shù)據(jù)庫索引的方法,其特征在于,解析查詢結(jié)構(gòu)是指將查詢動作進行解析,一個查詢動作可提取若干關(guān)鍵字,該關(guān)鍵字包括查詢、排序、分組、過濾的字段組合,然后記錄SQL語句結(jié)構(gòu)分析結(jié)果及頻次,最后將每個關(guān)鍵組合的出現(xiàn)頻率進行計數(shù)。
5.根據(jù)權(quán)利要求1所述的一種通過動態(tài)分析創(chuàng)建數(shù)據(jù)庫索引的方法,其特征在于,閾值設(shè)置是指設(shè)置對表的某個關(guān)鍵組合的訪問頻次的上限,以及各關(guān)鍵組合的最大訪問時間。
6.根據(jù)權(quán)利要求1所述的一種通過動態(tài)分析創(chuàng)建數(shù)據(jù)庫索引的方法,其特征在于,根據(jù)索引檢查情況及處理策略創(chuàng)建數(shù)據(jù)表索引是指根據(jù)索引比對情況及處理策略,動態(tài)調(diào)整數(shù)據(jù)表索引,即將索引處理方式抽象成一個接口,其中包含查詢、閾值比對、關(guān)鍵組合對比、撤銷、新建的處理方式,以滿足索引優(yōu)化服務(wù);同時檢測閾值范圍、索引處理方式及查詢語句執(zhí)行性能分析,進行索引動態(tài)日志查看服務(wù),以便進行包括調(diào)整閾值、系統(tǒng)維護日志的工作。