亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種索引記錄的管理方法及裝置制造方法

文檔序號(hào):6522180閱讀:164來源:國知局
一種索引記錄的管理方法及裝置制造方法
【專利摘要】本發(fā)明實(shí)施例公開了一種索引記錄的管理方法及裝置,該方法包括在數(shù)據(jù)庫表中插入新元組;創(chuàng)建與所述數(shù)據(jù)庫表中插入的新元組對(duì)應(yīng)的索引記錄,其中,所述索引記錄包括所述新元組的版本信息、用于表示所述新元組的版本信息對(duì)當(dāng)前事務(wù)是否可見的狀態(tài)信息、所述新元組中用于創(chuàng)建所述索引記錄的鍵值以及指向所述新元組的指針,所述新元組的版本信息包括用于表示創(chuàng)建所述新元組的版本信息。實(shí)施本發(fā)明實(shí)施例可以在索引記錄中添加元組的版本信息,能夠根據(jù)索引記錄中元組的版本信息解決讀寫沖突,提高了數(shù)據(jù)庫的整體性能。
【專利說明】—種索引記錄的管理方法及裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)庫【技術(shù)領(lǐng)域】,具體涉及一種索引記錄的管理方法及裝置。
【背景技術(shù)】
[0002]在數(shù)據(jù)庫中,數(shù)據(jù)庫表中的每行(即數(shù)據(jù)庫表中的每條記錄)就是一個(gè)元組。索引是對(duì)數(shù)據(jù)庫表中一列或多列的值進(jìn)行排序的一種結(jié)構(gòu),通過索引中的索引記錄和DMUDataManipulation Language,數(shù)據(jù)操作語言)可以快速的訪問數(shù)據(jù)庫表中的特定元組從而大大提高了數(shù)據(jù)庫的性能。
[0003]現(xiàn)有的大部分?jǐn)?shù)據(jù)庫只在數(shù)據(jù)庫表中存儲(chǔ)元組的新舊版本信息,當(dāng)發(fā)生讀寫沖突時(shí),寫操作會(huì)產(chǎn)生一個(gè)新的版本信息,并將新的版本信息存儲(chǔ)在更新后的元組中,而讀操作就必須獲取索引記錄對(duì)應(yīng)數(shù)據(jù)庫表中的元組的版本信息才能夠判斷出元組是否符合該讀操作的數(shù)據(jù)庫快照的要求,這樣大大降低了數(shù)據(jù)庫的整體性能。

【發(fā)明內(nèi)容】

[0004]本發(fā)明實(shí)施例公開了一種索引記錄的管理方法及裝置,用于解決當(dāng)發(fā)生讀寫沖突時(shí)由于現(xiàn)有的索引記錄中沒有存儲(chǔ)元組的版本信息而導(dǎo)致數(shù)據(jù)庫整體性能降低的問題。
[0005]本發(fā)明實(shí)施例第一方面公開了一種索引記錄的管理方法,所述方法包括:
[0006]在數(shù)據(jù)庫表中插入新元組;
[0007]創(chuàng)建與所述數(shù)據(jù)庫表中插入的新元組對(duì)應(yīng)的索引記錄,其中,所述索引記錄包括所述新元組的版本信息、用于表示所述新元組的版本信息對(duì)當(dāng)前事務(wù)是否可見的狀態(tài)信息、所述新元組中用于創(chuàng)建所述索引記錄的鍵值以及指向所述新元組的指針,所述新元組的版本信息包括用于表示創(chuàng)建所述新元組的版本信息。
[0008]在本發(fā)明實(shí)施例第一方面的第一種可能的實(shí)現(xiàn)方式中,所述方法還包括:
[0009]檢測(cè)是否存在用于刪除所述新元組的操作;
[0010]若檢測(cè)到存在用于刪除所述新元組的操作,則向所述新元組的版本信息中添加用于表示刪除所述新元組的版本信息;
[0011]更新所述狀態(tài)信息。
[0012]結(jié)合本發(fā)明實(shí)施例第一方面或本發(fā)明實(shí)施例第一方面的第一種可能的實(shí)現(xiàn)方式,在本發(fā)明實(shí)施例第一方面的第二種可能的實(shí)現(xiàn)方式中,所述方法還包括:
[0013]判斷用于存儲(chǔ)所述索引記錄的索引頁面的存儲(chǔ)空間是否不足;
[0014]若確定出所述索引頁面的存儲(chǔ)空間不足,則執(zhí)行用于清理所述索引頁面的操作。
[0015]結(jié)合本發(fā)明實(shí)施例第一方面的第二種可能的實(shí)現(xiàn)方式,在本發(fā)明實(shí)施例第一方面的第三種可能的實(shí)現(xiàn)方式中,所述執(zhí)行用于清理所述索引頁面的操作包括:
[0016]根據(jù)所述索引頁面中的索引記錄的狀態(tài)信息刪除所述索引頁面中的索引記錄中對(duì)當(dāng)前事務(wù)可見的用于表示創(chuàng)建元組的版本信息。
[0017]結(jié)合本發(fā)明實(shí)施例第一方面的第三種可能的實(shí)現(xiàn)方式,在本發(fā)明實(shí)施例第一方面的第四種可能的實(shí)現(xiàn)方式中,所述方法還包括:
[0018]刪除所述索引頁面中與所述數(shù)據(jù)庫表中的垃圾元組對(duì)應(yīng)的索引記錄,其中,所述垃圾元組包括所述數(shù)據(jù)庫表中被成功刪除的元組。
[0019]本發(fā)明實(shí)施例第二方面公開了一種索引記錄的管理裝置,所述裝置包括:
[0020]插入單元,用于在數(shù)據(jù)庫表中插入新元組;
[0021]創(chuàng)建單元,用于創(chuàng)建與所述數(shù)據(jù)庫表中插入的新元組對(duì)應(yīng)的索引記錄,其中,所述索引記錄包括所述新元組的版本信息、用于表示所述新元組的版本信息對(duì)當(dāng)前事務(wù)是否可見的狀態(tài)信息、所述新元組中用于創(chuàng)建所述索引記錄的鍵值以及指向所述新元組的指針,所述新元組的版本信息包括用于表示創(chuàng)建所述新元組的版本信息。
[0022]在本發(fā)明實(shí)施例第二方面的第一種可能的實(shí)現(xiàn)方式中,所述裝置還包括:
[0023]檢測(cè)單元,用于檢測(cè)是否存在用于刪除所述新元組的操作;
[0024]添加單元,用于若所述檢測(cè)單元檢測(cè)到存在用于刪除所述新元組的操作,則向所述新元組的版本信息中添加用于表示刪除所述新元組的版本信息;
[0025]更新單元,用于更新所述狀態(tài)信息。
[0026]結(jié)合本發(fā)明實(shí)施例第二方面或本發(fā)明實(shí)施例第二方面的第一種可能的實(shí)現(xiàn)方式,在本發(fā)明實(shí)施例第二方面的第二種可能的實(shí)現(xiàn)方式中,所述裝置還包括:
[0027]判斷單元,用于判斷用于存儲(chǔ)所述索引記錄的索引頁面的存儲(chǔ)空間是否不足;
[0028]清理單元,用于若所述判斷單元確定出所述索引頁面的存儲(chǔ)空間不足,則執(zhí)行用于清理所述索引頁面的操作。
[0029]結(jié)合本發(fā)明實(shí)施例第二方面的第二種可能的實(shí)現(xiàn)方式,在本發(fā)明實(shí)施例第二方面的第三種可能的實(shí)現(xiàn)方式中,所述清理單元具體用于根據(jù)所述索引頁面中的索引記錄的狀態(tài)信息刪除所述索引頁面中的索引記錄中對(duì)當(dāng)前事務(wù)可見的用于表示創(chuàng)建元組的版本信
肩、O
[0030]結(jié)合本發(fā)明實(shí)施例第二方面的第三種可能的實(shí)現(xiàn)方式,在本發(fā)明實(shí)施例第二方面的第四種可能的實(shí)現(xiàn)方式中,所述裝置還包括:
[0031]刪除單元,用于刪除所述索引頁面中與所述數(shù)據(jù)庫表中的垃圾元組對(duì)應(yīng)的索引記錄,其中,所述垃圾元組包括所述數(shù)據(jù)庫表中被成功刪除的元組。
[0032]實(shí)施本發(fā)明實(shí)施例具有如下有益效果:當(dāng)向數(shù)據(jù)庫表中插入新元組時(shí),創(chuàng)建與插入的新元組對(duì)應(yīng)的索引記錄,其中,索引記錄包括新元組的版本信息、用于表示新元組的版本信息對(duì)當(dāng)前事務(wù)是否可見的狀態(tài)信息、新元組中用于創(chuàng)建索引記錄的鍵值以及指向新元組的指針,新元組的版本信息包括用于表示創(chuàng)建新元組的版本信息。本發(fā)明實(shí)施例中,當(dāng)發(fā)生讀寫沖突時(shí),讀操作就可以根據(jù)索引記錄中元組的版本信息判斷出與索引記錄對(duì)應(yīng)的元組是否符合該讀操作的數(shù)據(jù)庫快照的要求,提高了數(shù)據(jù)庫的整體性能。
【專利附圖】

【附圖說明】
[0033]為了更清楚地說明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對(duì)實(shí)施例中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。[0034]圖1是本發(fā)明實(shí)施例公開的一種索引記錄的管理方法的流程示意圖;
[0035]圖2是本發(fā)明實(shí)施例公開的另一種索引記錄的管理方法的流程示意圖;
[0036]圖3是本發(fā)明實(shí)施例公開的一種索引記錄的結(jié)構(gòu)示意圖;
[0037]圖4是本發(fā)明實(shí)施例公開的另一種索引記錄的結(jié)構(gòu)示意圖;
[0038]圖5是本發(fā)明實(shí)施例公開的又一種索引記錄的結(jié)構(gòu)示意圖;
[0039]圖6是本發(fā)明實(shí)施例公開的又一種索引記錄的結(jié)構(gòu)示意圖;
[0040]圖7是本發(fā)明實(shí)施例公開的一種索引記錄狀態(tài)轉(zhuǎn)換的結(jié)構(gòu)示意圖;
[0041]圖8是本發(fā)明實(shí)施例公開的一種索引記錄的管理裝置的結(jié)構(gòu)示意圖;
[0042]圖9是本發(fā)明實(shí)施例公開的另一種索引記錄的管理裝置的結(jié)構(gòu)示意圖;
[0043]圖10是本發(fā)明實(shí)施例公開的又一種索引記錄的管理裝置的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0044]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0045]本發(fā)明提供了一種索引記錄的管理方法及裝置,可以在索引記錄中添加元組的版本信息,能夠根據(jù)索引記錄中元組的版本信息解決讀寫沖突,提高了數(shù)據(jù)庫的整體性能。以下分別進(jìn)行詳細(xì)說明。
[0046]請(qǐng)參閱圖1,圖1是本發(fā)明實(shí)施例公開的一種索引記錄的管理方法的流程示意圖。其中,圖1所示的方法可以應(yīng)用于多媒體數(shù)據(jù)庫、移動(dòng)數(shù)據(jù)庫、空間數(shù)據(jù)庫、信息檢索系統(tǒng)、分布式信息檢索系統(tǒng)以及專家決策系統(tǒng)等,本發(fā)明實(shí)施例不做限定。如圖1所示,該方法可以包括以下步驟:
[0047]S101、在數(shù)據(jù)庫表中插入新元組。
[0048]在數(shù)據(jù)庫中,數(shù)據(jù)庫是由表構(gòu)成的,表是由頁構(gòu)成的,頁是由元組構(gòu)成的。數(shù)據(jù)庫表中的每行記錄就是一個(gè)元組,且對(duì)數(shù)據(jù)庫中元組的操作可以有插入操作、查詢操作、更新操作以及刪除操作等。
[0049]S102、創(chuàng)建與數(shù)據(jù)庫表中插入的新元組對(duì)應(yīng)的索引記錄。
[0050]索引與表一樣,也屬于段(segment)的一種,里面存放了用戶的數(shù)據(jù),且也需要占用磁盤空間。但是,索引里面的數(shù)據(jù)存放形式與數(shù)據(jù)庫表里的數(shù)據(jù)存放形式不一樣。索引是對(duì)數(shù)據(jù)庫表中一列或多列的值進(jìn)行排序的一種結(jié)構(gòu),且從物理上說,索引通??梢苑譃?分區(qū)和非分區(qū)索引、B樹索引、位圖索引以及翻轉(zhuǎn)索引等,其中,最常用的為B樹索引。
[0051]為數(shù)據(jù)庫表建立索引的優(yōu)點(diǎn)有:大大加快數(shù)據(jù)的檢索速度;創(chuàng)建唯一性索引能保證數(shù)據(jù)庫表中每一行數(shù)據(jù)的唯一性;能夠加快表和表之間的連接;在使用分組和排序子句進(jìn)行數(shù)據(jù)檢索時(shí),可以顯著減少查詢中分組和排序的時(shí)間。
[0052]以B樹索引為例,B樹索引包括根節(jié)點(diǎn)、分支節(jié)點(diǎn)以及葉子節(jié)點(diǎn),其中,每一個(gè)葉子節(jié)點(diǎn)塊存儲(chǔ)在一個(gè)索引頁面中,每一個(gè)葉子節(jié)點(diǎn)塊中索引條目構(gòu)成了索引頁面中的索引記錄,在數(shù)據(jù)庫表中存在著與索引頁面中的索引記錄對(duì)應(yīng)的元組,當(dāng)數(shù)據(jù)庫表中的元組發(fā)生變化時(shí),索引頁面中的索引記錄也發(fā)生變化。當(dāng)向數(shù)據(jù)庫表中插入新元組時(shí),在索引頁面中就創(chuàng)建一個(gè)與新元組對(duì)應(yīng)的索引記錄,其中,索引記錄中可以包括新元組的版本信息、用于表示新元組的版本信息對(duì)當(dāng)前事務(wù)是否可見的狀態(tài)信息、新元組中用于創(chuàng)建索引記錄的鍵值以及指向新元組的指針(即新元組在數(shù)據(jù)庫表中的物理地址),其中,新元組的版本信息可以包括用于表示創(chuàng)建新元組的版本信息,新元組的版本信息可以是一個(gè)時(shí)間點(diǎn),也可以是與新元組相關(guān)的事務(wù)ID,本發(fā)明實(shí)施例不做限定。
[0053]舉例來說,本發(fā)明實(shí)施例中創(chuàng)建的與新元組對(duì)應(yīng)的索引記錄可以是如圖3中所示的狀態(tài)1,圖3是本發(fā)明實(shí)施例公開的一種索引記錄的結(jié)構(gòu)示意圖。其中,CV表示創(chuàng)建新元組的版本信息,Information表示新元組的版本信息對(duì)當(dāng)前事務(wù)是否可見的狀態(tài)信息,Data表示新元組中用于創(chuàng)建索引記錄的鍵值和指向新元組的指針,如圖3所示,Information可以包括兩個(gè)字段,第一個(gè)字段表示用于創(chuàng)建新元組的版本信息對(duì)當(dāng)前事務(wù)是否可見的狀態(tài)信息,第二個(gè)字段表示用于刪除新元組的版本信息對(duì)當(dāng)前事務(wù)是否可見的狀態(tài)信息,插入的新元組只有用于創(chuàng)建新元組的版本信息,所以Information的第二個(gè)字段為null,如圖3所示的狀態(tài)I可以包括兩種狀態(tài):狀態(tài)11 (不可見狀態(tài))和狀態(tài)12 (可見狀態(tài)),狀態(tài)11中Information的第一個(gè)字段為“O”表示用于創(chuàng)建新元組的版本信息對(duì)當(dāng)前事務(wù)是不可見的,即用于創(chuàng)建新元組的事務(wù)還未被提交,狀態(tài)12中Information的第二個(gè)字段為“I”表示用于創(chuàng)建新元組的版本信息對(duì)當(dāng)前事務(wù)是可見的,即用于創(chuàng)建新元組的事務(wù)已被提交。
[0054]實(shí)施本發(fā)明實(shí)施例具有如下有益效果:為數(shù)據(jù)庫表中插入的新元組創(chuàng)建索引記錄,其中,索引記錄中包括創(chuàng)建新元組的版本信息、用于表示新元組的版本信息對(duì)當(dāng)前事務(wù)是否可見的狀態(tài)信息,新元組中用于創(chuàng)建索引記錄的鍵值以及指向新元組的指針,本發(fā)明實(shí)施例中,可以在索引記錄中添加元組的版本信息,能夠根據(jù)索引記錄中元組的版本信息解決讀寫沖突,提高了數(shù)據(jù)庫的整體性能。
[0055]請(qǐng)參閱圖2,圖2是本發(fā)明實(shí)施例公開的另一種索引記錄的管理方法的流程示意圖。其中,圖2所示的方法可以應(yīng)用于多媒體數(shù)據(jù)庫、移動(dòng)數(shù)據(jù)庫、空間數(shù)據(jù)庫、信息檢索系統(tǒng)、分布式信息檢索系統(tǒng)以及專家決策系統(tǒng)等,本發(fā)明實(shí)施例不做限定。如圖2所示,該方法可以包括以下步驟:
[0056]S201、在數(shù)據(jù)庫表中插入新元組。
[0057]在數(shù)據(jù)庫中,數(shù)據(jù)庫是由表構(gòu)成的,表是由頁構(gòu)成的,頁是由元組構(gòu)成的。數(shù)據(jù)庫表中的每行記錄就是一個(gè)元組,且對(duì)數(shù)據(jù)庫中元組的操作可以有插入操作、查詢操作、更新操作以及刪除操作等。
[0058]當(dāng)向數(shù)據(jù)庫表中插入新元組時(shí),在索引頁面中就創(chuàng)建一個(gè)與新元組對(duì)應(yīng)的索引記錄,其中,索引記錄中可以包括新元組的版本信息、用于表示新元組的版本信息對(duì)當(dāng)前事務(wù)是否可見的狀態(tài)信息、新元組中用于創(chuàng)建索引記錄的鍵值以及指向新元組的指針(即新元組在數(shù)據(jù)庫表中的物理地址),其中,新元組的版本信息可以包括用于表示創(chuàng)建新元組的版本信息,新元組的版本信息可以是一個(gè)時(shí)間點(diǎn),也可以是與新元組相關(guān)的事務(wù)ID,本發(fā)明實(shí)施例不做限定。
[0059]S202、創(chuàng)建與數(shù)據(jù)庫表中插入的新元組對(duì)應(yīng)的索引記錄。
[0060]本發(fā)明實(shí)施例中,舉例來說,創(chuàng)建的與新元組對(duì)應(yīng)的索引記錄可以是如圖3所示的狀態(tài)1,圖3是本發(fā)明實(shí)施例公開的一種索引記錄的結(jié)構(gòu)示意圖,如圖3所示的狀態(tài)I可以包括狀態(tài)11 (不可見狀態(tài))和狀態(tài)12 (可見狀態(tài)),其中,CV表示創(chuàng)建新元組的版本信息,Information表示新元組的版本信息對(duì)當(dāng)前事務(wù)是否可見的狀態(tài)信息,Data表示新元組中用于創(chuàng)建索弓I記錄的鍵值和指向新元組的指針。
[0061]作為一種可選的實(shí)施方式,如圖2所示,該方法還可以包括:
[0062]S203、檢測(cè)是否存在用于刪除新元組的操作。
[0063]本發(fā)明實(shí)施例中,若檢測(cè)到存在用于刪除新元組的操作,則執(zhí)行步驟S204。
[0064]S204、若檢測(cè)到存在用于刪除新元組的操作,則向新元組的版本信息中添加用于表示刪除新元組的版本信息。
[0065]本發(fā)明實(shí)施例中,舉例來說,當(dāng)新元組的索引記錄為狀態(tài)I時(shí)且檢測(cè)到存在用于刪除新元組的操作,則向新元組的版本信息中添加用于表示刪除新元組的版本信息,即索引記錄的狀態(tài)可以由如圖3中的狀態(tài)I變?yōu)槿鐖D4中的狀態(tài)2,圖4是本發(fā)明實(shí)施例公開的另一種索引記錄的結(jié)構(gòu)示意圖,其中,CV表示創(chuàng)建新元組的版本信息,DV表示刪除新元組的版本信息,Information表示新元組的版本信息對(duì)當(dāng)前事務(wù)是否可見的狀態(tài)信息,Information可以包括兩個(gè)字段,第一個(gè)字段表示用于創(chuàng)建新元組的版本信息對(duì)當(dāng)前事務(wù)是否可見的狀態(tài)信息,第二個(gè)字段表示用于刪除新元組的版本信息對(duì)當(dāng)前事務(wù)是否可見的狀態(tài)信息,Data表示新元組中用于創(chuàng)建索引記錄的鍵值和指向新元組的指針,如圖4所示,圖4中的狀態(tài)2可以包括以下三種狀態(tài):狀態(tài)21,即狀態(tài)21是由狀態(tài)11變化而來,即用于創(chuàng)建新元組的事務(wù)和用于刪除新元組的事務(wù)均為被提交;狀態(tài)22,即狀態(tài)22是由狀態(tài)12變化而來,即用于創(chuàng)建新元組的事務(wù)已經(jīng)提交且用于刪除新元組的事務(wù)未被提交;狀態(tài)23,即狀態(tài)23是由狀態(tài)12變化而來,即用于創(chuàng)建新元組的事務(wù)和用于刪除新元組的事務(wù)均被提交,且索引頁面中,處于狀態(tài)23下的索引記錄屬于垃圾索引記錄。
[0066]S205、更新狀態(tài)信息。
[0067]本發(fā)明實(shí)施例中,根據(jù)用于創(chuàng)建新元組的事務(wù)或用于刪除新元組的事務(wù)是否被提交更新索引記錄中的版本信息,若Information的第一個(gè)字段為“1”,則可以表示用于創(chuàng)建新元組的版本信息對(duì)當(dāng)前事務(wù)是可見的,即用于創(chuàng)建新元組的事務(wù)已被提交;若Information的第一個(gè)字段為“0”,則可以表示創(chuàng)建新元組的版本信息對(duì)當(dāng)前事務(wù)是不可見的,即用于創(chuàng)建新元組的事務(wù)還未被提交;若Information的第二個(gè)字段為“0”,則可以表示刪除新元組的版本信息對(duì)當(dāng)前事務(wù)是不可見的,即刪除新元組的事務(wù)還未被提交;若Information的第二個(gè)字段為“1”,即可以表示刪除新元組的事務(wù)已被提交,該索引記錄就可以視為一個(gè)垃圾索引記錄。
[0068]本發(fā)明實(shí)施例中,當(dāng)對(duì)數(shù)據(jù)庫表中的元組執(zhí)行更新操作時(shí),會(huì)產(chǎn)生一個(gè)新的索引記錄,且當(dāng)與更新操作有關(guān)的事務(wù)被提交后,舊的索引記錄也可以視為垃圾索引記錄。
[0069]本發(fā)明實(shí)施例中,插入新元組時(shí),索引記錄中有用于表示創(chuàng)建新元組的版本信息,當(dāng)刪除新元組時(shí),向索引記錄中添加用于表示刪除新元組的版本信息,即一個(gè)索引記錄里面存儲(chǔ)有新元組的新舊版本信息,這樣在發(fā)生讀寫沖突時(shí),可以直接根據(jù)索引記錄中的版本信息判斷與索引記錄對(duì)應(yīng)的元組是否符合讀操作的數(shù)據(jù)庫快照的要求,且當(dāng)發(fā)生回滾操作時(shí),可以直接根據(jù)索引記錄中的版本信息將元組恢復(fù)到原來的版本。
[0070]作為一種可選的實(shí)施方式,如圖2所示,該方法還可以包括:
[0071]S206、判斷用于存儲(chǔ)索引記錄的索引頁面的存儲(chǔ)空間是否不足。
[0072]本發(fā)明實(shí)施例中,若向數(shù)據(jù)庫表中不斷的插入新元組,則在索引頁面中也會(huì)不斷的產(chǎn)生新的索引記錄,若判斷出用于存儲(chǔ)索引記錄的索引頁面的存儲(chǔ)空間不足,則執(zhí)行步驟 S207。
[0073]S207、若確定出索引頁面的存儲(chǔ)空間不足,則執(zhí)行用于清理索引頁面的操作。
[0074]作為一種可選的實(shí)施方式,執(zhí)行用于清理索引頁面的操作可以具體為:
[0075]根據(jù)索引頁面中的索引記錄的狀態(tài)信息刪除索引頁面中的索引記錄中對(duì)當(dāng)前事務(wù)可見的用于表示創(chuàng)建元組的版本信息。
[0076]舉例來說,如圖7所示,圖7是本發(fā)明實(shí)施例公開的一種索引記錄狀態(tài)轉(zhuǎn)換的結(jié)構(gòu)示意圖。如圖7所示的索引記錄狀態(tài)轉(zhuǎn)換可以包括以下幾種轉(zhuǎn)換方式:
[0077]若索引頁面的某些索引記錄處于狀態(tài)12,則在執(zhí)行步驟S207時(shí),處于狀態(tài)12下的索引記錄可以刪除狀態(tài)12中用于表示創(chuàng)建元組的版本信息(其它保持不變)并轉(zhuǎn)換為如圖6所示的狀態(tài)4,其中,圖6是本發(fā)明實(shí)施例公開的又一種索引記錄的結(jié)構(gòu)示意圖;
[0078]若索引頁面的某些索引記錄處于狀態(tài)22,則在執(zhí)行步驟S207時(shí),處于狀態(tài)22下的索引記錄可以刪除狀態(tài)22中用于表示創(chuàng)建元組的版本信息(其它保持不變)并轉(zhuǎn)換為如圖5所示的狀態(tài)3,其中,圖5是本發(fā)明實(shí)施例公開的又一種索引記錄的結(jié)構(gòu)示意圖。
[0079]本發(fā)明實(shí)施例中,若索引頁面的某些索引記錄處于狀態(tài)21,則在執(zhí)行步驟S207時(shí),處于狀態(tài)21下的索引記錄保持不變;若索引頁面的某些索引記錄處于狀態(tài)11,則在執(zhí)行步驟S207時(shí),處于狀態(tài)11下的索引記錄保持不變。
[0080]本發(fā)明實(shí)施例中,若在執(zhí)行步驟S207時(shí)之后發(fā)生回滾操作,則如圖5中的狀態(tài)3可以轉(zhuǎn)化為如圖6中的狀態(tài)4且將Information中的第二個(gè)字段置為null。
[0081]作為一種可選的實(shí)施方式,如圖2所示,該方法還可以包括:
[0082]S208、刪除索引頁面中與數(shù)據(jù)庫中的垃圾元組對(duì)應(yīng)的索引記錄。
[0083]本發(fā)明實(shí)施例中,刪除索引頁面中與數(shù)據(jù)庫中的垃圾元組對(duì)應(yīng)的索引記錄可以是刪除處于如圖4中的狀態(tài)23下的索引記錄。
[0084]實(shí)施本發(fā)明實(shí)施例具有如下有益效果:可以在與數(shù)據(jù)庫表中元組對(duì)應(yīng)的索引記錄中存儲(chǔ)元組的新舊版本信息,能夠根據(jù)索引記錄中的版本信息解決讀寫沖突,且當(dāng)發(fā)生回滾時(shí),能夠根據(jù)索引記錄中的版本信息恢復(fù)到之前的狀態(tài),這樣可以提高數(shù)據(jù)庫的整體性能,此外,當(dāng)索引頁面的存儲(chǔ)空間不足時(shí),能夠執(zhí)行清理索引頁面的操作,刪除索引頁面中不必要的信息,這樣可以減少額外的處理線程且可以節(jié)省存儲(chǔ)空間。
[0085]請(qǐng)參閱圖8,圖8是本發(fā)明實(shí)施例公開的一種索引記錄的管理裝置的結(jié)構(gòu)示意圖。如圖8所示,該裝置800可以包括插入單元801以及創(chuàng)建單元802,其中:
[0086]插入單元801用于在數(shù)據(jù)庫表中插入新元組。
[0087]在數(shù)據(jù)庫中,數(shù)據(jù)庫是由表構(gòu)成的,表是由頁構(gòu)成的,頁是由元組構(gòu)成的。數(shù)據(jù)庫表中的每行記錄就是一個(gè)元組,且對(duì)數(shù)據(jù)庫中元組的操作可以有插入操作、查詢操作、更新操作以及刪除操作等。
[0088]創(chuàng)建單元802用于創(chuàng)建與數(shù)據(jù)庫表中插入的新元組對(duì)應(yīng)的索引記錄。
[0089]舉例來說,本發(fā)明實(shí)施例中創(chuàng)建的與新元組對(duì)應(yīng)的索引記錄可以是如圖3中所示的狀態(tài)1,圖3是本發(fā)明實(shí)施例公開的一種索引記錄的結(jié)構(gòu)示意圖。其中,CV表示創(chuàng)建新元組的版本信息,Information表示新元組的版本信息對(duì)當(dāng)前事務(wù)是否可見的狀態(tài)信息,Data表示新元組中用于創(chuàng)建索引記錄的鍵值和指向新元組的指針,如圖3所示,Information可以包括兩個(gè)字段,第一個(gè)字段表示用于創(chuàng)建新元組的版本信息對(duì)當(dāng)前事務(wù)是否可見的狀態(tài)信息,第二個(gè)字段表示用于刪除新元組的版本信息對(duì)當(dāng)前事務(wù)是否可見的狀態(tài)信息,插入的新元組只有用于創(chuàng)建新元組的版本信息,所以Information的第二個(gè)字段為null,如圖3所示的狀態(tài)I可以包括兩種狀態(tài):狀態(tài)11 (不可見狀態(tài))和狀態(tài)12 (可見狀態(tài)),狀態(tài)11中Information的第一個(gè)字段為“O”表示用于創(chuàng)建新元組的版本信息對(duì)當(dāng)前事務(wù)是不可見的,即用于創(chuàng)建新元組的事務(wù)還未被提交,狀態(tài)12中Information的第二個(gè)字段為“I”表示用于創(chuàng)建新元組的版本信息對(duì)當(dāng)前事務(wù)是可見的,即用于創(chuàng)建新元組的事務(wù)已被提交。
[0090]實(shí)施本發(fā)明實(shí)施例具有如下有益效果:為數(shù)據(jù)庫表中插入的新元組創(chuàng)建索引記錄,其中,索引記錄中包括創(chuàng)建新元組的版本信息、用于表示新元組的版本信息對(duì)當(dāng)前事務(wù)是否可見的狀態(tài)信息,新元組中用于創(chuàng)建索引記錄的鍵值以及指向新元組的指針,本發(fā)明實(shí)施例中,可以在索引記錄中添加元組的版本信息,能夠根據(jù)索引記錄中元組的版本信息解決讀寫沖突,提高了數(shù)據(jù)庫的整體性能。
[0091]請(qǐng)參閱圖9,圖9是本發(fā)明實(shí)施例公開的另一種索引記錄的管理裝置的結(jié)構(gòu)示意圖。如圖9所示,該裝置900可以包括插入單元901以及創(chuàng)建單元902,其中:
[0092]插入單元901用于在數(shù)據(jù)庫表中插入新元組。
[0093]創(chuàng)建單元902用于創(chuàng)建與數(shù)據(jù)庫表中插入的新元組對(duì)應(yīng)的索引記錄。
[0094]本發(fā)明實(shí)施例中,舉例來說,創(chuàng)建的與新元組對(duì)應(yīng)的索引記錄可以是如圖3所示的狀態(tài)1,圖3是本發(fā)明實(shí)施例公開的一種索引記錄的結(jié)構(gòu)示意圖,如圖3所示的狀態(tài)I可以包括狀態(tài)11 (不可見狀態(tài))和狀態(tài)12 (可見狀態(tài)),其中,CV表示創(chuàng)建新元組的版本信息,Information表示新元組的版本信息對(duì)當(dāng)前事務(wù)是否可見的狀態(tài)信息,Data表示新元組中用于創(chuàng)建索弓I記錄的鍵值和指向新元組的指針。
[0095]作為一種可選的實(shí)施方式,如圖9所示,該裝置900還可以包括檢測(cè)單元903、添加單元904以及更新單元905,其中:
[0096]檢測(cè)單元903用于檢測(cè)是否存在用于刪除新元組的操作。
[0097]添加單元904用于若檢測(cè)單元903檢測(cè)到存在用于刪除新元組的操作,向新元組的版本信息中添加用于表示刪除新元組的版本信息。
[0098]本發(fā)明實(shí)施例中,舉例來說,當(dāng)新元組的索引記錄為狀態(tài)I時(shí)且檢測(cè)到存在用于刪除新元組的操作,則向新元組的版本信息中添加用于表示刪除新元組的版本信息,即索引記錄的狀態(tài)可以由如圖3中的狀態(tài)I變?yōu)槿鐖D4中的狀態(tài)2,圖4是本發(fā)明實(shí)施例公開的另一種索引記錄的結(jié)構(gòu)示意圖,其中,CV表示創(chuàng)建新元組的版本信息,DV表示刪除新元組的版本信息,Information表示新元組的版本信息對(duì)當(dāng)前事務(wù)是否可見的狀態(tài)信息,Information可以包括兩個(gè)字段,第一個(gè)字段表示用于創(chuàng)建新元組的版本信息對(duì)當(dāng)前事務(wù)是否可見的狀態(tài)信息,第二個(gè)字段表示用于刪除新元組的版本信息對(duì)當(dāng)前事務(wù)是否可見的狀態(tài)信息,Data表示新元組中用于創(chuàng)建索引記錄的鍵值和指向新元組的指針,如圖4所示,圖4中的狀態(tài)2可以包括以下三種狀態(tài):狀態(tài)21,即狀態(tài)21是由狀態(tài)11變化而來,即用于創(chuàng)建新元組的事務(wù)和用于刪除新元組的事務(wù)均為被提交;狀態(tài)22,即狀態(tài)22是由狀態(tài)12變化而來,即用于創(chuàng)建新元組的事務(wù)已經(jīng)提交且用于刪除新元組的事務(wù)未被提交;狀態(tài)23,即狀態(tài)23是由狀態(tài)12變化而來,即用于創(chuàng)建新元組的事務(wù)和用于刪除新元組的事務(wù)均被提交,且索引頁面中,處于狀態(tài)23下的索引記錄屬于垃圾索引記錄。[0099]更新單元905用于更新狀態(tài)信息。
[0100]本發(fā)明實(shí)施例中,根據(jù)用于創(chuàng)建新元組的事務(wù)或用于刪除新元組的事務(wù)是否被提交更新索引記錄中的版本信息,若Information的第一個(gè)字段為“1”,則可以表示用于創(chuàng)建新元組的版本信息對(duì)當(dāng)前事務(wù)是可見的,即用于創(chuàng)建新元組的事務(wù)已被提交;若Information的第一個(gè)字段為“0”,則可以表示創(chuàng)建新元組的版本信息對(duì)當(dāng)前事務(wù)是不可見的,即用于創(chuàng)建新元組的事務(wù)還未被提交;若Information的第二個(gè)字段為“0”,則可以表示刪除新元組的版本信息對(duì)當(dāng)前事務(wù)是不可見的,即刪除新元組的事務(wù)還未被提交;若Information的第二個(gè)字段為“1”,即可以表示刪除新元組的事務(wù)已被提交,該索引記錄就可以視為一個(gè)垃圾索引記錄。
[0101]本發(fā)明實(shí)施例中,當(dāng)對(duì)數(shù)據(jù)庫表中的元組執(zhí)行更新操作時(shí),會(huì)產(chǎn)生一個(gè)新的索引記錄,且當(dāng)與更新操作有關(guān)的事務(wù)被提交后,舊的索引記錄也可以視為垃圾索引記錄。
[0102]作為一種可選的實(shí)施方式,如圖9所示,該裝置900還可以包括判斷單元906以及清理單元907,其中:
[0103]判斷單元906用于判斷用于存儲(chǔ)索引記錄的索引頁面的存儲(chǔ)空間是否不足。
[0104]清理單元907用于若判斷單元906確定出索引頁面的存儲(chǔ)空間不足,執(zhí)行用于清理索引頁面的操作。
[0105]作為一種可選的實(shí)施方式,清理單元907執(zhí)行用于清理索引頁面的操作可以具體為:
[0106]根據(jù)索引頁面中的索引記錄的狀態(tài)信息刪除索引頁面中的索引記錄中對(duì)當(dāng)前事務(wù)可見的用于表示創(chuàng)建元組的版本信息。
[0107]舉例來說,如圖7所示,圖7是本發(fā)明實(shí)施例公開的一種索引記錄狀態(tài)轉(zhuǎn)換的結(jié)構(gòu)示意圖。如圖7所示的索引記錄狀態(tài)轉(zhuǎn)換可以包括以下幾種轉(zhuǎn)換方式:
[0108]若索引頁面的某些索引記錄處于狀態(tài)12,則在執(zhí)行步驟S207時(shí),處于狀態(tài)12下的索引記錄可以刪除狀態(tài)12中用于表示創(chuàng)建元組的版本信息(其它保持不變)并轉(zhuǎn)換為如圖6所示的狀態(tài)4,其中,圖6是本發(fā)明實(shí)施例公開的又一種索引記錄的結(jié)構(gòu)示意圖;
[0109]若索引頁面的某些索引記錄處于狀態(tài)22,則在執(zhí)行步驟S207時(shí),處于狀態(tài)22下的索引記錄可以刪除狀態(tài)22中用于表示創(chuàng)建元組的版本信息(其它保持不變)并轉(zhuǎn)換為如圖5所示的狀態(tài)3,其中,圖5是本發(fā)明實(shí)施例公開的又一種索引記錄的結(jié)構(gòu)示意圖。
[0110]本發(fā)明實(shí)施例中,若索引頁面的某些索引記錄處于狀態(tài)21,則在執(zhí)行步驟S207時(shí),處于狀態(tài)21下的索引記錄保持不變;若索引頁面的某些索引記錄處于狀態(tài)11,則在執(zhí)行步驟S207時(shí),處于狀態(tài)11下的索引記錄保持不變。
[0111]本發(fā)明實(shí)施例中,若在執(zhí)行步驟S207時(shí)之后發(fā)生回滾操作,則如圖5中的狀態(tài)3可以轉(zhuǎn)化為如圖6中的狀態(tài)4且將Information中的第二個(gè)字段置為null。
[0112]作為一種可選的實(shí)施方式,如圖9所示,該裝置900還可以包括刪除單元908,其中:
[0113]刪除單元908用于刪除索引頁面中的與數(shù)據(jù)庫中的垃圾元組對(duì)應(yīng)的索引記錄。
[0114]本發(fā)明實(shí)施例中,刪除單元908刪除索引頁面中與數(shù)據(jù)庫中的垃圾元組對(duì)應(yīng)的索引記錄可以是刪除處于如圖4中的狀態(tài)23下的索引記錄。
[0115]實(shí)施本發(fā)明實(shí)施例具有如下有益效果:可以在與數(shù)據(jù)庫表中元組對(duì)應(yīng)的索引記錄中存儲(chǔ)元組的新舊版本信息,能夠根據(jù)索引記錄中的版本信息解決讀寫沖突,且當(dāng)發(fā)生回滾時(shí),能夠根據(jù)索引記錄中的版本信息恢復(fù)到之前的狀態(tài),這樣可以提高數(shù)據(jù)庫的整體性能,此外,當(dāng)索引頁面的存儲(chǔ)空間不足時(shí),能夠執(zhí)行清理索引頁面的操作,刪除索引頁面中不必要的信息,這樣可以減少額外的處理線程且可以節(jié)省存儲(chǔ)空間。
[0116]請(qǐng)參閱圖10,圖10是本發(fā)明實(shí)施例公開的又一種索引記錄的管理裝置的結(jié)構(gòu)示意圖。如圖10所示,該裝置1000包括:輸入裝置1001、輸出裝置1002、存儲(chǔ)器1003和處理器1004,其中,存儲(chǔ)器1003存儲(chǔ)一組程序代碼,且處理器1004用于調(diào)用存儲(chǔ)器1003中存儲(chǔ)的程序代碼,用于執(zhí)行以下操作:
[0117]在數(shù)據(jù)庫表中插入新元組;
[0118]創(chuàng)建與數(shù)據(jù)庫表中插入的新元組對(duì)應(yīng)的索引記錄,其中,索引記錄包括新元組的版本信息、用于表示新元組的版本信息對(duì)當(dāng)前事務(wù)是否可見的狀態(tài)信息、新元組中用于創(chuàng)建索引記錄的鍵值以及指向新元組的指針,新元組的版本信息包括用于表示創(chuàng)建新元組的版本信息。
[0119]在一個(gè)實(shí)施例中,處理器1004用于調(diào)用存儲(chǔ)器1003中存儲(chǔ)的程序代碼,還用于執(zhí)行以下操作:
[0120]檢測(cè)是否存在用于刪除新元組的操作;
[0121]若檢測(cè)到存在用于刪除新元組的操作,則向新元組的版本信息中添加用于表示刪除新元組的版本信息;
[0122]更新狀態(tài)信息。
[0123]在一個(gè)實(shí)施例中,處理器1004用于調(diào)用存儲(chǔ)器1003中存儲(chǔ)的程序代碼,還用于執(zhí)行以下操作:
[0124]判斷用于存儲(chǔ)索引記錄的索引頁面的存儲(chǔ)空間是否不足;
[0125]若確定出索引頁面的存儲(chǔ)空間不足,則執(zhí)行用于清理索引頁面的操作。
[0126]在一個(gè)實(shí)施例中,處理器1004執(zhí)行用于清理索引頁面的操作可以包括:
[0127]根據(jù)索引頁面中的索引記錄的狀態(tài)信息刪除索引頁面中的索引記錄中對(duì)當(dāng)前事務(wù)可見的用于表示創(chuàng)建元組的版本信息。
[0128]在一個(gè)實(shí)施例中,處理器1004用于調(diào)用存儲(chǔ)器1003中存儲(chǔ)的程序代碼,還用于執(zhí)行以下操作:
[0129]刪除索引頁面中與數(shù)據(jù)庫表中的垃圾元組對(duì)應(yīng)的索引記錄,其中,垃圾元組包括數(shù)據(jù)庫表中被成功刪除的元組。
[0130]實(shí)施本發(fā)明實(shí)施例具有如下有益效果:可以在與數(shù)據(jù)庫表中元組對(duì)應(yīng)的索引記錄中存儲(chǔ)元組的新舊版本信息,能夠根據(jù)索引記錄中的版本信息解決讀寫沖突,且當(dāng)發(fā)生回滾時(shí),能夠根據(jù)索引記錄中的版本信息恢復(fù)到之前的狀態(tài),這樣可以提高數(shù)據(jù)庫的整體性能,此外,當(dāng)索引頁面的存儲(chǔ)空間不足時(shí),能夠執(zhí)行清理索引頁面的操作,刪除索引頁面中不必要的信息,這樣可以減少額外的處理線程且可以節(jié)省存儲(chǔ)空間。
[0131]需要說明的是,在上述實(shí)施例中,對(duì)各個(gè)實(shí)施例的描述都各有側(cè)重,某個(gè)實(shí)施例中沒有詳細(xì)描述的部分,可以參見其它實(shí)施例的相關(guān)描述。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說明書中所描述的實(shí)施例均屬于優(yōu)選實(shí)施例,所涉及的動(dòng)作、單元并不一定是本發(fā)明所必須的。[0132]本發(fā)明實(shí)施例方法中的步驟可以根據(jù)實(shí)際需要進(jìn)行順序調(diào)整、合并和刪減。
[0133]本發(fā)明實(shí)施例裝置中的單元可以根據(jù)實(shí)際需要進(jìn)行合并、劃分和刪減。
[0134]本發(fā)明實(shí)施例中的單元,可以通過通用集成電路,例如CPU (Central ProcessingUnit,中央處理器),或通過 ASIC (Application Specific Integrated Circuit,專用集成電路)來實(shí)現(xiàn)。
[0135]本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法中的全部或部分流程,是可以通過計(jì)算機(jī)程序來指令相關(guān)的硬件來完成,所述的程序可存儲(chǔ)于計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),可包括如上述各方法的實(shí)施例的流程。其中,所述的存儲(chǔ)介質(zhì)可為磁碟、光盤、只讀存儲(chǔ)記憶體(Read-OnlyMemory, ROM)或隨機(jī)存儲(chǔ)記憶體(Random AccessMemory, RAM)等。
[0136]以上對(duì)本發(fā)明實(shí)施例所提供的一種索引記錄的管理的方法及裝置進(jìn)行了詳細(xì)介紹,本文中應(yīng)用了具體實(shí)例對(duì)本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時(shí),對(duì)于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在【具體實(shí)施方式】及應(yīng)用范圍上均會(huì)有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對(duì)本發(fā)明的限制。
【權(quán)利要求】
1.一種索引記錄的管理方法,其特征在于,包括: 在數(shù)據(jù)庫表中插入新元組; 創(chuàng)建與所述數(shù)據(jù)庫表中插入的新元組對(duì)應(yīng)的索引記錄,其中,所述索引記錄包括所述新元組的版本信息、用于表示所述新元組的版本信息對(duì)當(dāng)前事務(wù)是否可見的狀態(tài)信息、所述新元組中用于創(chuàng)建所述索引記錄的鍵值以及指向所述新元組的指針,所述新元組的版本信息包括用于表示創(chuàng)建所述新元組的版本信息。
2.如權(quán)利要求1所述的方法,其特征在于,所述方法還包括: 檢測(cè)是否存在用于刪除所述新元組的操作; 若檢測(cè)到存在用于刪除所述新元組的操作,則向所述新元組的版本信息中添加用于表示刪除所述新元組的版本信息; 更新所述狀態(tài)信息。
3.如權(quán)利要求1或2所述的方法,其特征在于,所述方法還包括: 判斷用于存儲(chǔ)所述索引記錄的索引頁面的存儲(chǔ)空間是否不足; 若確定出所述索引頁面的存儲(chǔ)空間不足,則執(zhí)行用于清理所述索引頁面的操作。
4.如權(quán)利要求3所述的 方法,其特征在于,所述執(zhí)行用于清理所述索引頁面的操作包括: 根據(jù)所述索引頁面中的索引記錄的狀態(tài)信息刪除所述索引頁面中的索引記錄中對(duì)當(dāng)前事務(wù)可見的用于表示創(chuàng)建元組的版本信息。
5.如權(quán)利要求4所述的方法,其特征在于,所述方法還包括: 刪除所述索引頁面中與所述數(shù)據(jù)庫表中的垃圾元組對(duì)應(yīng)的索引記錄,其中,所述垃圾元組包括所述數(shù)據(jù)庫表中被成功刪除的元組。
6.一種索引記錄的管理裝置,其特征在于,包括: 插入單元,用于在數(shù)據(jù)庫表中插入新元組; 創(chuàng)建單元,用于創(chuàng)建與所述數(shù)據(jù)庫表中插入的新元組對(duì)應(yīng)的索引記錄,其中,所述索引記錄包括所述新元組的版本信息、用于表示所述新元組的版本信息對(duì)當(dāng)前事務(wù)是否可見的狀態(tài)信息、所述新元組中用于創(chuàng)建所述索引記錄的鍵值以及指向所述新元組的指針,所述新元組的版本信息包括用于表示創(chuàng)建所述新元組的版本信息。
7.如權(quán)利要求6所述的裝置,其特征在于,所述裝置還包括: 檢測(cè)單元,用于檢測(cè)是否存在用于刪除所述新元組的操作; 添加單元,用于若所述檢測(cè)單元檢測(cè)到存在用于刪除所述新元組的操作,則向所述新元組的版本信息中添加用于表示刪除所述新元組的版本信息; 更新單元,用于更新所述狀態(tài)信息。
8.如權(quán)利要求6或7所述的裝置,其特征在于,所述裝置還包括: 判斷單元,用于判斷用于存儲(chǔ)所述索引記錄的索引頁面的存儲(chǔ)空間是否不足; 清理單元,用于若所述判斷單元確定出所述索引頁面的存儲(chǔ)空間不足,則執(zhí)行用于清理所述索引頁面的操作。
9.如權(quán)利要求8所述的裝置,其特征在于,所述清理單元具體用于根據(jù)所述索引頁面中的索引記錄的狀態(tài)信息刪除所述索引頁面中的索引記錄中對(duì)當(dāng)前事務(wù)可見的用于表示創(chuàng)建元組的版本信息。
10.如權(quán)利要求9所述的裝置,其特征在于,所述裝置還包括: 刪除單元,用于刪除所述索引頁面中與所述數(shù)據(jù)庫表中的垃圾元組對(duì)應(yīng)的索引記錄,其中,所述垃圾元組包括所述數(shù)據(jù)庫表中被成功刪除的元組。
【文檔編號(hào)】G06F17/30GK103714121SQ201310645551
【公開日】2014年4月9日 申請(qǐng)日期:2013年12月3日 優(yōu)先權(quán)日:2013年12月3日
【發(fā)明者】李海豐 申請(qǐng)人:華為技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1