国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      數(shù)據(jù)庫(kù)及其單向快速搜尋方法

      文檔序號(hào):6609666閱讀:208來(lái)源:國(guó)知局
      專利名稱:數(shù)據(jù)庫(kù)及其單向快速搜尋方法
      技術(shù)領(lǐng)域
      本發(fā)明是有關(guān)于一種數(shù)據(jù)庫(kù)及其單向快速搜尋方法,尤指一種利用一平均分割數(shù)據(jù)庫(kù)為若干個(gè)區(qū)段所獲得的區(qū)段首表列來(lái)單向快速搜尋的方法。
      背景技術(shù)
      早期,儲(chǔ)存大量記錄的數(shù)據(jù)庫(kù)通常以靜態(tài)串行(sequentialrepresentation)為其結(jié)構(gòu),例如陣列(Array)、堆疊(Stacks)或佇列(Queues)等方式。此種靜態(tài)串行的數(shù)據(jù)庫(kù)結(jié)構(gòu)具有存取個(gè)別請(qǐng)求數(shù)據(jù)速度較快的優(yōu)點(diǎn)。但其缺點(diǎn)為插入或刪除數(shù)據(jù)的動(dòng)作則須搬移該數(shù)據(jù)庫(kù)中大量的數(shù)據(jù)。就一數(shù)據(jù)庫(kù)而言,如須經(jīng)常性地對(duì)其中插入或刪除數(shù)據(jù),則該數(shù)據(jù)庫(kù)便不適合使用靜態(tài)串行的結(jié)構(gòu)。因此,動(dòng)態(tài)串行(Linked List)的數(shù)據(jù)庫(kù)結(jié)構(gòu)便是為當(dāng)今主流且廣為采取的結(jié)構(gòu)模型。當(dāng)欲于其中插入或刪除數(shù)據(jù)時(shí),此類數(shù)據(jù)庫(kù)結(jié)構(gòu)僅須改變相關(guān)的鏈接(Linking)即可,無(wú)須搬移數(shù)據(jù)的位置。因此,近來(lái)發(fā)展的許多數(shù)據(jù)庫(kù)結(jié)構(gòu)中,動(dòng)態(tài)串行確為演算式利用數(shù)據(jù)庫(kù)結(jié)構(gòu)的首選。具體而言,構(gòu)成單向搜尋(one-way search)數(shù)據(jù)庫(kù)的單向鏈接串行(singly linked lists)比雙向鏈接串行(DoublyLinked Lists)或樹(shù)狀結(jié)構(gòu)(Trees)用的多。
      雖然單向鏈接串行較雙向鏈接串行或樹(shù)狀結(jié)構(gòu)的數(shù)據(jù)庫(kù)須要較多的執(zhí)行(例如修改或搜尋多筆數(shù)據(jù))時(shí)間,但對(duì)一電子電路或一大型數(shù)據(jù)庫(kù)而言,具有僅須較少記憶空間的優(yōu)點(diǎn),例如從遠(yuǎn)程操控臺(tái)存取數(shù)據(jù)的智能平臺(tái)管理接口(IPMI)數(shù)據(jù)庫(kù)。實(shí)際上,并無(wú)法擷取數(shù)據(jù)庫(kù)內(nèi)所有的記錄及其數(shù)據(jù)部分到遠(yuǎn)程操控臺(tái)后,再對(duì)該些記錄及數(shù)據(jù)進(jìn)行搜尋,而僅能擷取少量部分的記錄,儲(chǔ)存于遠(yuǎn)程操控臺(tái)的記憶裝置內(nèi),以進(jìn)行數(shù)據(jù)的搜尋,當(dāng)使用者有其它請(qǐng)求時(shí),再擷取其它的記錄。然而于此單向鏈接串行的數(shù)據(jù)庫(kù)中的搜尋方法尚有一個(gè)缺點(diǎn),即當(dāng)沿?cái)?shù)據(jù)庫(kù)的搜尋方向,現(xiàn)在請(qǐng)求記錄的位址先于最后搜尋記錄的位址時(shí),便必須自數(shù)據(jù)庫(kù)的起始處開(kāi)始方能沿搜尋方向找到現(xiàn)在請(qǐng)求的記錄。如前述的網(wǎng)絡(luò)(IPMI)數(shù)據(jù)庫(kù)或其它相似情況下,搜尋單向鏈接串行數(shù)據(jù)庫(kù)內(nèi)的數(shù)據(jù)便較搜尋雙向鏈接串行數(shù)據(jù)庫(kù)內(nèi)的記錄要花費(fèi)較長(zhǎng)的時(shí)間。

      發(fā)明內(nèi)容
      因此,確有發(fā)展一單向快速搜尋方法及其數(shù)據(jù)庫(kù)的必要,以提供一種在單向鏈接串行數(shù)據(jù)庫(kù)內(nèi)搜尋的更有效率方法。
      為解決現(xiàn)有技術(shù)的缺點(diǎn),本發(fā)明的目的在于提供一種數(shù)據(jù)庫(kù)及其單向快速搜尋方法。
      為完成前述目的,本發(fā)明提供一種使用于一數(shù)據(jù)庫(kù)的單向快速搜尋方法,該數(shù)據(jù)庫(kù)其包括若干個(gè)記錄,每一記錄包括至少一記錄識(shí)別對(duì)應(yīng)至一位址、一次記錄識(shí)別對(duì)應(yīng)至一次記錄的一次位址、以及一數(shù)據(jù)部份,其中該數(shù)據(jù)庫(kù)被分割為若干個(gè)區(qū)段,指定該些區(qū)段的第一個(gè)記錄為一區(qū)段首,并儲(chǔ)存該些區(qū)段首的記錄識(shí)別于一第一表列,且儲(chǔ)存部分的該些記錄識(shí)別于一第二表列,其中,儲(chǔ)存于該第二表列中的該些記錄識(shí)別的位址是先前于一最后搜尋記錄的記錄識(shí)別位址。
      而本發(fā)明的單向快速搜尋方法包括下列步驟a.接收一數(shù)據(jù)部份請(qǐng)求;b.確認(rèn)現(xiàn)在請(qǐng)求記錄的記錄識(shí)別位址包括數(shù)據(jù)部份,是否先于最后搜尋記錄的記錄識(shí)別位址,如是,則于第二表列中單向搜尋現(xiàn)在請(qǐng)求記錄的記錄識(shí)別;c.確認(rèn)于第二表列中是否找到現(xiàn)在請(qǐng)求記錄的記錄識(shí)別,如是,通過(guò)找到的記錄識(shí)別,傳送現(xiàn)在請(qǐng)求記錄的數(shù)據(jù)部份;以及d.于第二表列中,儲(chǔ)存具有若干個(gè)對(duì)應(yīng)位址的部分的該些記錄識(shí)別,該些對(duì)應(yīng)位址先于找到的記錄識(shí)別位址。
      于步驟c中,如于第二表列中未找到現(xiàn)在請(qǐng)求記錄的記錄識(shí)別,則更進(jìn)一步包括下列步驟c1.自第一表列的該些記錄識(shí)別中,選擇一區(qū)段首,所選擇的區(qū)段首的位址是最接近并小于現(xiàn)在請(qǐng)求記錄的記錄識(shí)別位址;c2.自所選擇的區(qū)段首開(kāi)始,單向搜尋現(xiàn)在請(qǐng)求記錄的記錄識(shí)別,直到找到現(xiàn)在請(qǐng)求記錄的記錄識(shí)別;以及c3.透過(guò)找到的記錄識(shí)別,傳送現(xiàn)在請(qǐng)求記錄的數(shù)據(jù)部份。
      而依據(jù)本發(fā)明能快速單向搜尋的數(shù)據(jù)庫(kù)包括若干個(gè)記錄以及一第一表列。每一記錄包括至少一記錄識(shí)別對(duì)應(yīng)至一位址、一次記錄識(shí)別對(duì)應(yīng)至一次記錄的一次位址、以及一數(shù)據(jù)部份,其中該數(shù)據(jù)庫(kù)被分割為若干個(gè)區(qū)段,并指定該些區(qū)段的第一個(gè)記錄為一區(qū)段首,該第一表列是用以儲(chǔ)存該些區(qū)段首的記錄識(shí)別。
      該數(shù)據(jù)庫(kù)更包括一第二表列。該第二表列是用以儲(chǔ)存若干個(gè)記錄識(shí)別,儲(chǔ)存于第二表列的紀(jì)錄識(shí)別的數(shù)據(jù)部份具有較高的請(qǐng)求頻率。或者,該第二表列也可用以儲(chǔ)存若干個(gè)記錄識(shí)別,儲(chǔ)存于第二表列的紀(jì)錄識(shí)別位址先前于一最后搜尋記錄的記錄識(shí)別位址。即如前述,于接收數(shù)據(jù)請(qǐng)求前初始化該數(shù)據(jù)庫(kù)時(shí),便會(huì)先行取得該數(shù)據(jù)庫(kù)中所有位址的一總數(shù)。并且依據(jù)該總數(shù),將該數(shù)據(jù)庫(kù)平均分割為該些區(qū)段。
      與現(xiàn)有技術(shù)相比,本發(fā)明的單向快速搜尋方法,提供的第一表列儲(chǔ)存該些區(qū)段的該些記錄識(shí)別,即便現(xiàn)在請(qǐng)求記錄的記錄識(shí)別位址先于最后搜尋記錄的記錄識(shí)別位址,也無(wú)須自該數(shù)據(jù)庫(kù)的起始處,才能開(kāi)始搜尋、找到該現(xiàn)在請(qǐng)求記錄。本發(fā)明的搜尋方法,是選擇一區(qū)段首,該區(qū)段首的記錄識(shí)別位址最接近并小于該現(xiàn)在請(qǐng)求記錄的記錄識(shí)別位址,并自其開(kāi)始搜尋現(xiàn)在請(qǐng)求記錄的記錄識(shí)別,所以本發(fā)明的方法能于單向鏈接串行結(jié)構(gòu)的數(shù)據(jù)庫(kù)內(nèi)更有效率地搜尋。


      圖1是依據(jù)本發(fā)明能快速單向搜尋的數(shù)據(jù)庫(kù)的結(jié)構(gòu)圖。
      圖2是依據(jù)本發(fā)明的第一表列及第二表列的詳細(xì)內(nèi)容。
      圖3是依據(jù)本發(fā)明數(shù)據(jù)庫(kù)的結(jié)構(gòu)圖示,用以詳細(xì)說(shuō)明當(dāng)現(xiàn)在請(qǐng)求記錄的記錄識(shí)別位址先于該最后搜尋記錄的記錄識(shí)別位址,且未在第二表列中的情形。
      圖4是依據(jù)本發(fā)明第一實(shí)施例,單向快速搜尋方法的流程圖。
      圖5是依據(jù)本發(fā)明第二實(shí)施例,單向快速搜尋方法的流程圖。
      具體實(shí)施例方式
      請(qǐng)參考圖1,一并參考圖2及圖3。圖1是依據(jù)本發(fā)明能快速單向搜尋的數(shù)據(jù)庫(kù)的結(jié)構(gòu)圖。圖2是依據(jù)本發(fā)明的第一表列及第二表列的詳細(xì)內(nèi)容。圖3是依據(jù)本發(fā)明數(shù)據(jù)庫(kù)的結(jié)構(gòu)圖示,用以詳細(xì)說(shuō)明當(dāng)現(xiàn)在請(qǐng)求記錄的記錄識(shí)別位址先于最后搜尋記錄的記錄識(shí)別位址,且未在第二表列中的情形。
      依據(jù)本發(fā)明此實(shí)施例的數(shù)據(jù)庫(kù)結(jié)構(gòu),包括100個(gè)記錄、第一表列以及第二表列。記錄102包括一記錄識(shí)別(首記錄識(shí)別)對(duì)應(yīng)至位址0、一記錄104的次記錄識(shí)別對(duì)應(yīng)至位址1、以及其數(shù)據(jù)部份。記錄104包括一記錄識(shí)別對(duì)應(yīng)至位址1、一記錄106的次記錄識(shí)別對(duì)應(yīng)至位址2、以及其數(shù)據(jù)部份。記錄106包括一記錄識(shí)別對(duì)應(yīng)至位址2、一記錄108的次記錄識(shí)別對(duì)應(yīng)至位址3、以及其數(shù)據(jù)部份,依此該數(shù)據(jù)庫(kù)的單向鏈接串行持續(xù)延展。最后,記錄110包括一記錄識(shí)別對(duì)應(yīng)至位址99、一末記錄識(shí)別表示該數(shù)據(jù)庫(kù)的結(jié)尾、以及其數(shù)據(jù)部份。
      于初始化數(shù)據(jù)庫(kù)時(shí),依據(jù)該數(shù)據(jù)庫(kù)中所有位址的一總數(shù),將數(shù)據(jù)庫(kù)平均分割為若干個(gè)區(qū)段以取得第一表列。每一區(qū)段的第一個(gè)記錄被指定為一區(qū)段首,第一表列便用以儲(chǔ)存該些區(qū)段首的記錄識(shí)別。并且,第二表列則用以儲(chǔ)存若干個(gè)選自該數(shù)據(jù)庫(kù)的記錄識(shí)別。請(qǐng)參考圖2中所顯示的第一表列,該數(shù)據(jù)庫(kù)中位址的總數(shù)即如前述為100,而第一表列中位址的總數(shù)為5。因此,平均分割該數(shù)據(jù)庫(kù)后,該些區(qū)段首的記錄識(shí)別,記錄識(shí)別(0)、記錄識(shí)別(20)、記錄識(shí)別(40)、記錄識(shí)別(60)、記錄識(shí)別(80)以及該些記錄識(shí)別對(duì)應(yīng)的位址0、20、40、60、80被儲(chǔ)存于第一表列中。并且,可預(yù)設(shè)儲(chǔ)存該數(shù)據(jù)庫(kù)的記錄識(shí)別位址為0、1、2、3的記錄識(shí)別于第二表列。之后,每次接收數(shù)據(jù)請(qǐng)求、搜尋、找到該記錄識(shí)別、傳送該數(shù)據(jù)部份后,如圖3所示,均以具有位址先于該找到的記錄識(shí)別位址的該些記錄識(shí)別,更新第二表列。其情形為現(xiàn)在請(qǐng)求記錄的記錄識(shí)別位址40是先于該最后搜尋記錄的記錄識(shí)別位址60,因最后搜尋記錄的記錄識(shí)別位址為60,因此第二表列中是儲(chǔ)存先于位址60,位址為56、57、58、59該等連續(xù)且最靠近位址60的記錄識(shí)別。當(dāng)該數(shù)據(jù)庫(kù)接收記錄識(shí)別位址為40的現(xiàn)在請(qǐng)求記錄后,因其位址先于最后搜尋記錄的記錄識(shí)別位址60,便于位址為20的記錄識(shí)別(20)的區(qū)段首開(kāi)始搜尋、找到位址為40的該記錄識(shí)別、傳送該數(shù)據(jù)部份后,會(huì)再以位址為36、37、38、39連續(xù)且最靠近位址40的記錄識(shí)別更新該第二表列。
      值得注意的是,于本實(shí)施例第一表列以及第二表列中儲(chǔ)存的記錄識(shí)別數(shù)雖然分別為5以及4,但其儲(chǔ)存數(shù)是依據(jù)該數(shù)據(jù)庫(kù)的內(nèi)存容量而預(yù)先決定,并非以本發(fā)明的實(shí)施例為限。并且,于第二表列中儲(chǔ)存的記錄識(shí)別也可以是數(shù)據(jù)部份具有較高請(qǐng)求頻率的記錄識(shí)別,本發(fā)明會(huì)于每次找到欲搜尋的記錄識(shí)別后,統(tǒng)計(jì)請(qǐng)求頻率較高的數(shù)據(jù)部份的記錄識(shí)別,并據(jù)此更新該第二表列。
      請(qǐng)參考圖4,是依據(jù)本發(fā)明第一實(shí)施例,單向快速搜尋方法的流程圖。利用第一表列及第二表列,能于如圖1所示單向鍵結(jié)串行的數(shù)據(jù)庫(kù)中,具體實(shí)施該單向快速搜尋方法。在此第一實(shí)施例中,該方法包括下列步驟a.接收一數(shù)據(jù)部份請(qǐng)求;b.確認(rèn)現(xiàn)在請(qǐng)求記錄的記錄識(shí)別位址包括請(qǐng)求數(shù)據(jù)部份,是否先于最后搜尋記錄的記錄識(shí)別位址;如否,則進(jìn)行步驟b1.自該數(shù)據(jù)庫(kù)的最后搜尋記錄的記錄識(shí)別位址開(kāi)始,單向搜尋現(xiàn)在請(qǐng)求記錄的記錄識(shí)別,直到找到該現(xiàn)在請(qǐng)求記錄的記錄識(shí)別;
      b2.透過(guò)找到的記錄識(shí)別,傳送現(xiàn)在請(qǐng)求記錄的數(shù)據(jù)部份。
      如是,則進(jìn)行步驟b+.于該第二表列中單向搜尋現(xiàn)在請(qǐng)求記錄的記錄識(shí)別;c.確認(rèn)于第二表列中是否找到現(xiàn)在請(qǐng)求記錄的記錄識(shí)別,如是,則進(jìn)行步驟c+.透過(guò)找到的記錄識(shí)別,傳送現(xiàn)在請(qǐng)求記錄的數(shù)據(jù)部份;如否,則進(jìn)行步驟c1.自該第一表列的該些記錄識(shí)別中,選擇一區(qū)段首,所選擇的區(qū)段首的位址是最接近并小于該現(xiàn)在請(qǐng)求記錄的記錄識(shí)別位址;c2.自該所選擇的區(qū)段首開(kāi)始,單向搜尋現(xiàn)在請(qǐng)求記錄的記錄識(shí)別,直到找到現(xiàn)在請(qǐng)求記錄的記錄識(shí)別;以及c3.通過(guò)找到的記錄識(shí)別,傳送現(xiàn)在請(qǐng)求記錄的數(shù)據(jù)部份。
      于步驟c+、c3或b2傳送該數(shù)據(jù)部份后,本實(shí)施例的方法便進(jìn)行步驟d.于該第二表列中,儲(chǔ)存若干個(gè)記錄識(shí)別,其位址先于找到的記錄識(shí)別位址,并等待再次的數(shù)據(jù)部份請(qǐng)求。
      第一實(shí)施例的單向快速搜尋方法于初始化該數(shù)據(jù)庫(kù)時(shí),更包括一步驟,其中取得該數(shù)據(jù)庫(kù)中所有位址的一總數(shù)后,將該數(shù)據(jù)庫(kù)平均分割為若干個(gè)區(qū)段,以取得前述第一表列。再者,本實(shí)施例的方法于初始化該數(shù)據(jù)庫(kù)后,更包括一步驟,其中于第二表列中,儲(chǔ)存該數(shù)據(jù)庫(kù)若干個(gè)具有起始位址的記錄識(shí)別。
      請(qǐng)參考圖5,是依據(jù)本發(fā)明第二實(shí)施例,單向快速搜尋方法的流程圖。于此實(shí)施例中,第二表列是用以儲(chǔ)存若干個(gè)記錄識(shí)別,該些記錄識(shí)別的數(shù)據(jù)部份具有較高的請(qǐng)求頻率。于本實(shí)施例中,該方法包括下列步驟a.接收一數(shù)據(jù)部份請(qǐng)求;b.于第二表列中單向搜尋現(xiàn)在請(qǐng)求記錄的記錄識(shí)別;c.確認(rèn)于第二表列中是否找到現(xiàn)在請(qǐng)求記錄的記錄識(shí)別;如是,則進(jìn)行步驟c+.透過(guò)找到的記錄識(shí)別,傳送現(xiàn)在請(qǐng)求記錄的數(shù)據(jù)部份;
      如否,則進(jìn)行步驟c1.自該第一表列的該些記錄識(shí)別中,選擇一區(qū)段首,所選擇區(qū)段首的位址是最接近并小于現(xiàn)在請(qǐng)求記錄的記錄識(shí)別的該位址;c2.自所選擇的該區(qū)段首開(kāi)始,單向搜尋現(xiàn)在請(qǐng)求記錄的記錄識(shí)別,直到找到現(xiàn)在請(qǐng)求記錄的記錄識(shí)別;以及c3.透過(guò)找到的記錄識(shí)別,傳送現(xiàn)在請(qǐng)求記錄的數(shù)據(jù)部份。
      于步驟c+或c3傳送該數(shù)據(jù)部份后,本實(shí)施例的方法便進(jìn)行步驟d.依據(jù)找到的記錄識(shí)別,統(tǒng)計(jì)請(qǐng)求頻率較高的數(shù)據(jù)部份,并據(jù)此更新該第二表列。
      由于本發(fā)明的單向快速搜尋方法,提供的第一表列儲(chǔ)存該些區(qū)段的該些記錄識(shí)別,即便現(xiàn)在請(qǐng)求記錄的記錄識(shí)別位址先于最后搜尋記錄的記錄識(shí)別位址,也無(wú)須自該數(shù)據(jù)庫(kù)的起始處,才能開(kāi)始搜尋、找到該現(xiàn)在請(qǐng)求記錄。本發(fā)明的搜尋方法,是選擇選擇一區(qū)段首,該區(qū)段首的記錄識(shí)別位址最接近并小于該現(xiàn)在請(qǐng)求記錄的記錄識(shí)別位址,并自其開(kāi)始搜尋現(xiàn)在請(qǐng)求記錄的記錄識(shí)別。
      本發(fā)明的單向快速搜尋方法,更進(jìn)一步提供一第二表列,儲(chǔ)存該些記錄識(shí)別,其對(duì)應(yīng)位址是先前于最后搜尋記錄的記錄識(shí)別位址。如現(xiàn)在請(qǐng)求記錄的記錄識(shí)別位址儲(chǔ)存于該第二表列中,本發(fā)明的搜尋方法便能快速找到現(xiàn)在請(qǐng)求記錄的記錄識(shí)別,傳送該現(xiàn)在請(qǐng)求記錄的數(shù)據(jù)部份。
      總而言之,本發(fā)明的單向快速搜尋方法能于單向鏈接串行結(jié)構(gòu)的數(shù)據(jù)庫(kù)內(nèi)更有效率地搜尋。
      權(quán)利要求
      1.一種單向搜尋的數(shù)據(jù)庫(kù),其特征在于其包括若干個(gè)記錄以及一第一表列,每一記錄包括至少一記錄識(shí)別對(duì)應(yīng)至一位址、一次記錄識(shí)別對(duì)應(yīng)至一次記錄的一次位址、以及一數(shù)據(jù)部份,其中該數(shù)據(jù)庫(kù)被分割為若干個(gè)區(qū)段,指定該些區(qū)段的第一個(gè)記錄為一區(qū)段首;第一表列儲(chǔ)存該些區(qū)段首的該些記錄識(shí)別。
      2.如權(quán)利要求1所述的數(shù)據(jù)庫(kù),其特征在于更包括一第二表列,儲(chǔ)存部分的該些記錄識(shí)別,儲(chǔ)存于該第二表列的該些紀(jì)錄識(shí)別的該些數(shù)據(jù)部份具有較高的請(qǐng)求頻率。
      3.如權(quán)利要求1所述的數(shù)據(jù)庫(kù),其特征在于更包括一第二表列,儲(chǔ)存部分的該些記錄識(shí)別,儲(chǔ)存于該第二表列的該些紀(jì)錄識(shí)別的位址先前于一最后搜尋記錄的記錄識(shí)別位址。
      4.如權(quán)利要求1所述的數(shù)據(jù)庫(kù),其特征在于于接收該數(shù)據(jù)部份請(qǐng)求前,先取得該數(shù)據(jù)庫(kù)中所有位址的一總數(shù)。
      5.如權(quán)利要求4所述的數(shù)據(jù)庫(kù),其特征在于依據(jù)該數(shù)據(jù)庫(kù)中所有位址的該總數(shù),將該數(shù)據(jù)庫(kù)平均分割為該些區(qū)段。
      6.一種單向快速搜尋方法,用于一具有若干個(gè)記錄的數(shù)據(jù)庫(kù),每一記錄包括至少一記錄識(shí)別對(duì)應(yīng)至一位址、一次記錄識(shí)別對(duì)應(yīng)至一次記錄的一次位址、以及一數(shù)據(jù)部份,其中該數(shù)據(jù)庫(kù)被分割為若干個(gè)區(qū)段,指定該些區(qū)段的第一個(gè)記錄為一區(qū)段首,并儲(chǔ)存該些區(qū)段首的該些記錄識(shí)別于一第一表列中,且儲(chǔ)存部分的該些記錄識(shí)別于一第二表列中,其中,儲(chǔ)存于該第二表列中的該些記錄識(shí)別的位址先前于一最后搜尋記錄的一記錄識(shí)別位址,該方法包括下列步驟a.接收一數(shù)據(jù)部份請(qǐng)求;b.確認(rèn)一現(xiàn)在請(qǐng)求記錄的記錄識(shí)別位址包括該數(shù)據(jù)部份,是否先于該最后搜尋記錄的記錄識(shí)別位址,如是,則于該第二表列中單向搜尋該現(xiàn)在請(qǐng)求記錄的一記錄識(shí)別;c.確認(rèn)于該第二表列中是否找到該現(xiàn)在請(qǐng)求記錄的記錄識(shí)別,如是,通過(guò)找到的該記錄識(shí)別,傳送該現(xiàn)在請(qǐng)求記錄的該數(shù)據(jù)部份;以及d.于該第二表列中,儲(chǔ)存若干個(gè)具有對(duì)應(yīng)位址的部分的該些記錄識(shí)別,該些對(duì)應(yīng)位址先于找到的該記錄識(shí)別位址。
      7.如權(quán)利要求6所述的搜尋方法,其特征在于在步驟d中,該些對(duì)應(yīng)位址為連續(xù)且最接近找到的該記錄識(shí)別位址。
      8.如權(quán)利要求6所述的搜尋方法,其特征在于在步驟c中,如否,則更進(jìn)一步包括下列步驟c1.自該第一表列的該些記錄識(shí)別中,選擇一區(qū)段首,所選擇的該區(qū)段首的一位址是最接近并小于該現(xiàn)在請(qǐng)求記錄的記錄識(shí)別位址;c2.自該數(shù)據(jù)庫(kù)所選擇的該區(qū)段首開(kāi)始,單向搜尋該現(xiàn)在請(qǐng)求記錄的記錄識(shí)別,直到找到該現(xiàn)在請(qǐng)求記錄的記錄識(shí)別;以及c3.通過(guò)找到的該記錄識(shí)別,傳送該現(xiàn)在請(qǐng)求記錄的數(shù)據(jù)部份。
      9.如權(quán)利要求6所述的搜尋方法,其特征在于在步驟b中,如否,則更進(jìn)一步包括下列步驟b1.自該數(shù)據(jù)庫(kù)的該最后搜尋記錄的記錄識(shí)別位址開(kāi)始,單向搜尋該現(xiàn)在請(qǐng)求記錄的記錄識(shí)別,直到找到該現(xiàn)在請(qǐng)求記錄的記錄識(shí)別;以及b2.通過(guò)找到的該記錄識(shí)別,傳送該現(xiàn)在請(qǐng)求記錄的數(shù)據(jù)部份。
      10.如權(quán)利要求6所述的搜尋方法,其特征在于于步驟a前,更包括一步驟,其中取得該數(shù)據(jù)庫(kù)中所有位址的一總數(shù),以將該數(shù)據(jù)庫(kù)平均分割為該些區(qū)段。
      11.如權(quán)利要求6所述的搜尋方法,其特征在于于步驟a前,更包括一步驟,其中于該第二表列中,儲(chǔ)存該數(shù)據(jù)庫(kù)的若干個(gè)具有起始位址的該些記錄識(shí)別。
      12.一種單向快速搜尋方法,用于一具有若干個(gè)記錄的數(shù)據(jù)庫(kù),每一記錄包括至少一記錄識(shí)別對(duì)應(yīng)至一位址、一次記錄識(shí)別對(duì)應(yīng)至一次記錄的一次位址、以及一數(shù)據(jù)部份,其中該數(shù)據(jù)庫(kù)被分割為若干個(gè)區(qū)段,指定該些區(qū)段的第一個(gè)記錄為一區(qū)段首,并儲(chǔ)存該些區(qū)段首的該些記錄識(shí)別于一第一表列中,且儲(chǔ)存部分的該些記錄識(shí)別于一第二表列中,儲(chǔ)存于該第二表列中的該些記錄識(shí)別的該些數(shù)據(jù)部份具有較高的請(qǐng)求頻率,該方法包括下列步驟a.接收一數(shù)據(jù)部份請(qǐng)求;b.于該第二表列中單向搜尋該現(xiàn)在請(qǐng)求記錄的記錄識(shí)別;c.確認(rèn)于該第二表列中是否找到該現(xiàn)在請(qǐng)求記錄的記錄識(shí)別,如是,通過(guò)找到的該記錄識(shí)別,傳送該現(xiàn)在請(qǐng)求記錄的數(shù)據(jù)部份;以及d.依據(jù)該找到的該記錄識(shí)別,統(tǒng)計(jì)請(qǐng)求頻率較高的該些資料部份,并據(jù)此更新該第二表列。
      13.如權(quán)利要求12所述的搜尋方法,其特征在于于步驟c,如否,則更進(jìn)一步包括下列步驟c1.自該第一表列的該些記錄識(shí)別中,選擇一區(qū)段首,所選擇區(qū)段首的位址最接近并小于該現(xiàn)在請(qǐng)求記錄的記錄識(shí)別位址;c2.自該數(shù)據(jù)庫(kù)所選擇的該區(qū)段首開(kāi)始,單向搜尋該現(xiàn)在請(qǐng)求記錄的記錄識(shí)別,直到找到該現(xiàn)在請(qǐng)求記錄的記錄識(shí)別;以及c3.通過(guò)找到的該記錄識(shí)別,傳送該現(xiàn)在請(qǐng)求記錄的數(shù)據(jù)部份。
      14.如權(quán)利要求12所述的搜尋方法,其特征在于于步驟a前,更包括一步驟,其中取得該數(shù)據(jù)庫(kù)中所有位址的一總數(shù),以將該數(shù)據(jù)庫(kù)平均分割為該些區(qū)段。
      15.如權(quán)利要求12所述的搜尋方法,其特征在于于步驟a前,更包括一步驟,其中于該第二表列中,儲(chǔ)存該數(shù)據(jù)庫(kù)的具有若干個(gè)起始位址的該些記錄識(shí)別。
      全文摘要
      本發(fā)明揭露一種數(shù)據(jù)庫(kù)及其單向快速搜尋方法。第一表列中儲(chǔ)存分割數(shù)據(jù)庫(kù)所獲得各區(qū)段首的記錄的記錄識(shí)別,第二表列中儲(chǔ)存若干個(gè)具有連續(xù)位址的記錄識(shí)別,其位址先前于最后搜尋記錄的位址。本發(fā)明方法的步驟為接收數(shù)據(jù)部分請(qǐng)求;確認(rèn)現(xiàn)在請(qǐng)求記錄的記錄識(shí)別位址,是否先于最后搜尋記錄的記錄識(shí)別位址,如是,在第二表列中搜尋現(xiàn)在請(qǐng)求記錄的記錄識(shí)別;確認(rèn)于第二表列中是否找到現(xiàn)在請(qǐng)求記錄的記錄識(shí)別,如否,則自位址最接近并小于現(xiàn)在請(qǐng)求記錄的記錄識(shí)別的區(qū)段首開(kāi)始,單向搜尋現(xiàn)在請(qǐng)求記錄的記錄識(shí)別。
      文檔編號(hào)G06F17/30GK101086740SQ20071010986
      公開(kāi)日2007年12月12日 申請(qǐng)日期2007年6月1日 優(yōu)先權(quán)日2006年6月8日
      發(fā)明者徐偉峰 申請(qǐng)人:宏正自動(dòng)科技股份有限公司
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1