[發(fā)明專利]一種在大數(shù)據(jù)量存儲中快速檢索的方法有效
| 申請?zhí)枺?/td> | 201110116710.7 | 申請日: | 2011-05-05 |
| 公開(公告)號: | CN102184222A | 公開(公告)日: | 2011-09-14 |
| 發(fā)明(設(shè)計)人: | 范淵;楊永清;李凱 | 申請(專利權(quán))人: | 杭州安恒信息技術(shù)有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 杭州中成專利事務(wù)所有限公司 33212 | 代理人: | 金祺 |
| 地址: | 310051 浙江省杭州*** | 國省代碼: | 浙江;33 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 數(shù)據(jù)量 存儲 快速 檢索 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)庫審計技術(shù)領(lǐng)域,尤其涉及一種在大數(shù)據(jù)量存儲中快速檢索的方法。
背景技術(shù)
對數(shù)據(jù)庫審計系統(tǒng)而言,審計并存儲上億條甚至幾十億條審計記錄的情況非常普遍,在這種海量記錄中能夠方便地按各種特性組合進(jìn)行快速檢索,對數(shù)據(jù)庫審計系統(tǒng)的事后審計功能而言至關(guān)重要。
數(shù)據(jù)庫審計系統(tǒng)的事后審計,指的是通過某些已知特性進(jìn)行反向回溯和定位,找出其他未知特性,從而完整地還原整個操作或事件。這類特性可以包括被訪問的數(shù)據(jù)庫名、被訪問的表、被訪問的字段、SQL操作類型、數(shù)據(jù)庫登錄用戶名、客戶端IP、服務(wù)端IP、時間范圍以及SQL語句包含的內(nèi)容。
在海量的審計記錄中進(jìn)行精確檢索,通常的方法是對SQL語句進(jìn)行語義分析并形成細(xì)粒度記錄,然后借助關(guān)系型數(shù)據(jù)庫,對各種檢索特性及特性組合建立索引,再根據(jù)索引實現(xiàn)快速檢索。由于審計記錄特性眾多,存儲各種特性對應(yīng)關(guān)系并為各種特性組合都建立索引,將耗費比審計記錄本身大得多的存儲空間,另外還將極大消耗存儲性能,這對存儲容量和存儲性能要求極高的數(shù)據(jù)庫審計系統(tǒng)而言是無法忍受的。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問題是,為數(shù)據(jù)庫審計系統(tǒng)提供一種大數(shù)據(jù)量存儲中快速檢索的方法,該方法較SQL細(xì)粒度存儲并為各種檢索特性及特性組合建立索引的方法將極大節(jié)省存儲空間,并將極大提升檢索效率。
鑒于數(shù)據(jù)庫審計系統(tǒng)的審計記錄數(shù)量十分龐大的事實,就必然要求單條審計記錄盡可能地節(jié)約存儲空間,并且當(dāng)存儲中已經(jīng)包含海量審計記錄時,仍然能夠以任意特性或特性組合為條件進(jìn)行快速檢索。而全文索引就是解決在海量存儲中實現(xiàn)快速檢索的關(guān)鍵技術(shù)。把全文索引引入數(shù)據(jù)庫審計系統(tǒng)中,將極大節(jié)省存儲空間和性能,極大提升檢索能力。
為解決問題,本發(fā)明的解決方案是:
提供一種在大數(shù)據(jù)量存儲中快速檢索的方法,包括如下步驟:
A、采用關(guān)系型數(shù)據(jù)庫存儲審計記錄,每條記錄擁有唯一ID,并以慣常使用的檢索特性為字段;
B、協(xié)議解析模塊獲取審計記錄后,對該審計記錄進(jìn)行入庫,而不對該審計記錄對應(yīng)的SQL語句進(jìn)行語義分析所產(chǎn)生的細(xì)粒度信息進(jìn)行入庫;
C、使用獨立的全文索引引擎監(jiān)控審計記錄入庫情況,對新入庫的審計記錄建立全文索引,并逐級建立和維護(hù)當(dāng)前索引、單位小時索引、單位天索引;
D、檢索時,以檢索特性為關(guān)鍵字使用全文索引進(jìn)行檢索,獲取符合特性的審計記錄的主ID集,再通過主ID集獲取符合檢索特性的所有審計記錄的完整信息。
本發(fā)明中,所述的步驟B進(jìn)一步包括如下:
B1、通過網(wǎng)絡(luò)采集模塊和協(xié)議解析模塊獲取審計記錄;
B2、獲取的審計記錄被存入入庫文件,當(dāng)該入庫文件包含的審計記錄數(shù)達(dá)到某一設(shè)定門限、或該入庫文件存在周期超過某一設(shè)定時間門限時,將把該入庫文件移動到可入庫目錄,并打開新的入庫文件用以記錄新的審計記錄;
B3、移動入庫文件到可入庫目錄后,登記該入庫文件所包含的審計記錄ID范圍及入庫文件名的對應(yīng)關(guān)系;
B4、使用關(guān)系型數(shù)據(jù)庫數(shù)據(jù)導(dǎo)入工具M(jìn)ysqlimport對入庫文件進(jìn)行入庫,入庫后刪除入庫文件。
本發(fā)明中,執(zhí)行所述步驟C時,進(jìn)一步包括:
C4、監(jiān)控步驟B3中的登記信息;
C5、如果步驟C4中發(fā)現(xiàn)有新入庫文件產(chǎn)生,則檢查該入庫文件是否存在;
C6、如果步驟C5中新入庫文件已被刪除,根據(jù)步驟B4,說明該入庫文件已經(jīng)入庫完成,該入庫文件所對應(yīng)登記信息中ID范圍內(nèi)的審計記錄需要建立全文索引;
C7、在當(dāng)前索引文件中,為步驟C6中需要建立全文索引的審計記錄建立全文索引,并刪除步驟B3中對應(yīng)的登記信息;
C8、把當(dāng)前索引文件合并到當(dāng)前小時索引文件中,并初始化當(dāng)前索引文件。
本發(fā)明中,所述的步驟C7進(jìn)一步包括如下:
C71、步驟C6中需要建立全文索引的ID范圍所對應(yīng)的審計記錄,是本次全文索引的數(shù)據(jù)源;
C72、審計記錄中可以被用來做檢索條件的字段,都將被建立全文索引,可根據(jù)這些字段來檢索獲取審計記錄ID;
C73、對于除SQL語句外的其他檢索特性,在獲取數(shù)據(jù)源數(shù)據(jù)時為每一個字段內(nèi)容加上特殊的前后綴,以極大減少該內(nèi)容作為一個單詞出現(xiàn)在其他字段內(nèi)容中的概率,確保全文檢索準(zhǔn)確性;
C74、根據(jù)步驟C73的規(guī)則,以步驟C6中ID范圍的審計記錄為數(shù)據(jù)源,在當(dāng)前索引中建立全文索引;
C75、刪除步驟B3中對應(yīng)的登記信息。
本發(fā)明中,所述的步驟D進(jìn)一步包括如下:
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于杭州安恒信息技術(shù)有限公司,未經(jīng)杭州安恒信息技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110116710.7/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





