欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

數(shù)據(jù)搜索裝置的制作方法

文檔序號:6411781閱讀:148來源:國知局
專利名稱:數(shù)據(jù)搜索裝置的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種響應(yīng)于請求提供數(shù)據(jù)搜索用數(shù)據(jù)的數(shù)據(jù)搜索裝置。
公知一種數(shù)據(jù)搜索裝置,用于把將登記入數(shù)據(jù)庫的文件分成記錄,對這些記錄進行編號,并存儲記錄號數(shù)據(jù),以處理被登記的文件,其中每個記錄是存儲在數(shù)據(jù)庫中用于登記和搜索的一個數(shù)據(jù)單元。
這種常規(guī)的數(shù)據(jù)搜索裝置在預(yù)定存儲區(qū)中存儲記錄號和字符出現(xiàn)數(shù)據(jù)。

圖17是已有技術(shù)數(shù)據(jù)搜索裝置所使用的索引文件的數(shù)據(jù)格式的示意圖。
在圖17中,用作索引文件的三十二位的預(yù)定存儲區(qū)存儲二十位的記錄號數(shù)據(jù)和十二位的字符出現(xiàn)數(shù)據(jù)。因此,存在的問題是索引文件此種格式只對1048576(220)個記錄提供處理。此外,在已有技術(shù)中,存在的問題是如果記錄的數(shù)目增加,則應(yīng)增加索引文件的大小(位)。
此外,在已有技術(shù)的數(shù)據(jù)搜索裝置中,必須提供表示文件號、頁號和記錄號之間對應(yīng)性的對應(yīng)性表格。因此,存在的問題是必須增加對應(yīng)性表格,且如果更新文件引起頁數(shù)增加,則必須對對應(yīng)表進行排序(sort)。
本發(fā)明的目的是提供一種改進的數(shù)據(jù)搜索裝置。
依據(jù)本發(fā)明,提供了第一數(shù)據(jù)搜索裝置,它包括輸入部分,用于接收包括搜索請求數(shù)據(jù)和登記請求的搜索請求;響應(yīng)于來自輸入部分的登記請求的分段部分,用于依據(jù)包含在數(shù)據(jù)中的分段數(shù)據(jù)把要登記入記錄單元的數(shù)據(jù)進行分段;編號部分,用于對記錄進行分組和編號從而把每個預(yù)定數(shù)目的記錄分成一組,并從被編號和分組的記錄中產(chǎn)生組號數(shù)據(jù)和相對記錄號數(shù)據(jù);存儲部分,用于相應(yīng)地存儲組號數(shù)據(jù)和相對記錄號數(shù)據(jù);以及搜索數(shù)據(jù)產(chǎn)生部分,用于依據(jù)來自輸入部分的搜索請求數(shù)據(jù)以及存儲部分中的組號數(shù)據(jù)和相對記錄號數(shù)據(jù),產(chǎn)生和輸出將用于搜索一個記錄的搜索數(shù)據(jù)。
依據(jù)本發(fā)明,提供了第二數(shù)據(jù)搜索裝置,它包括請求接收部分,用于接收包括搜索數(shù)據(jù)和登記請求的搜索請求;響應(yīng)于登記請求的記錄號提供部分,用于把記錄號數(shù)據(jù)提供給每個記錄,每個記錄是將登記的一個數(shù)據(jù)單元;相對編號部分,用于把記錄號數(shù)據(jù)組分組,并把記錄號數(shù)據(jù)轉(zhuǎn)換成組號數(shù)據(jù)和每個組中相對記錄號數(shù)據(jù);索引文件產(chǎn)生部分,用于從數(shù)據(jù)和相對記錄號數(shù)據(jù)中產(chǎn)生索引文件;索引文件存儲部分,用于存儲索引文件;索引文件搜索部分,用于響應(yīng)于來自請求接收部分的搜索請求,依據(jù)索引文件存儲部分中的索引文件,搜索由搜索數(shù)據(jù)所指出的一個記錄;絕對編號部分,用于把被搜索一個記錄的相對號數(shù)據(jù)和組號數(shù)據(jù)轉(zhuǎn)換成記錄號數(shù)據(jù);以及搜索結(jié)果輸出部分,用于依據(jù)來自絕對編號部分的記錄號數(shù)據(jù)輸出搜索結(jié)果。
第二數(shù)據(jù)搜索裝置還可包括插入?yún)^(qū)產(chǎn)生部分,用于在索引文件存儲部分中提供存儲空間,以在今后索引文件存儲部分存儲索引文件時把索引數(shù)據(jù)存入索引文件存儲部分。
在第二數(shù)據(jù)搜索裝置中,記錄號提供部分產(chǎn)生表示包含在數(shù)據(jù)中的記錄號數(shù)據(jù)和分段數(shù)據(jù)之間對應(yīng)性的記錄號對應(yīng)性表格,搜索結(jié)果輸出部分依據(jù)記錄號對應(yīng)性表格從來自絕對編號部分的記錄號數(shù)據(jù)中輸出搜索結(jié)果。
在第二數(shù)據(jù)搜索裝置中,索引文件產(chǎn)生部分產(chǎn)生索引文件,它包括至少一個用于存儲每個組號數(shù)據(jù)的標(biāo)題,以及接在標(biāo)題后用于存儲相對記錄號和相應(yīng)記錄數(shù)據(jù)的索引數(shù)據(jù)區(qū),此標(biāo)題和每個索引數(shù)據(jù)區(qū)具有相同的大小。
依據(jù)本發(fā)明,提供了第三數(shù)據(jù)搜索裝置,它包括請求接收部分,用于接收搜索請求和登記請求;響應(yīng)于登記請求的記錄號提供部分,用于依據(jù)包含在數(shù)據(jù)中的分段數(shù)據(jù),通過唯一確定記錄號數(shù)據(jù)的法則,把記錄號提供給每個記錄,此每個記錄是將要登記的一個數(shù)據(jù)單元;相對編號部分,用于對記錄分組從而記錄號和至少一個備用記錄構(gòu)成一組,并從被分組的記錄號產(chǎn)生組號數(shù)據(jù)和相應(yīng)的相對號數(shù)據(jù);索引文件產(chǎn)生部分,用于使用相對記錄號數(shù)據(jù)和組號數(shù)據(jù)從數(shù)據(jù)中產(chǎn)生索引文件;索引文件存儲部分,用于存儲索引文件;索引文件搜索部分,響應(yīng)于來自請求接收部分的搜索請求,依據(jù)索引文件存儲部分中的索引文件,搜索由搜索請求所指出的一個記錄;絕對編號部分,用于把被搜索的一個記錄的相對號數(shù)據(jù)和組號數(shù)據(jù)轉(zhuǎn)換成記錄號數(shù)據(jù);以及搜索結(jié)果輸出部分,用于依據(jù)來自絕對編號部分的記錄號數(shù)據(jù)輸出搜索結(jié)果。
第三數(shù)據(jù)搜索裝置還可包括插入?yún)^(qū)產(chǎn)生部分,用于在索引存儲部分中提供一存儲空間,以在今后索引文件存儲部分存儲索引文件時把索引文件存入索引文件存儲部分。
從以下結(jié)合附圖的詳細(xì)描述可使本發(fā)明的目的和特征變得明顯起來,其中圖1是本發(fā)明第一實施例數(shù)據(jù)搜索裝置的方框圖,該圖也用于本發(fā)明的第三實施例;圖2示出第一實施例的流程圖,在第二和第三實施例中也參考該圖;圖3是示出第一實施例的被記錄文件一個示例情況的示意圖;圖4是示出第一實施例的對應(yīng)性表格一個示例情況的示意圖;圖5是示出第一實施例的絕對記錄號和相對記錄號之間關(guān)系的示意圖;圖6是示出第一實施例的索引文件的示意圖;圖7A是示出第一實施例的字符串和出現(xiàn)次數(shù)之間關(guān)系的示意圖;圖7B是示出包括兩個預(yù)定字符的字符串和出現(xiàn)次數(shù)數(shù)據(jù)之間關(guān)系的示意圖;圖8是此實施例示出索引文件的示意圖;圖9和10示出第一實施例的搜索處理的流程圖;圖11是第二實施例的數(shù)據(jù)搜索裝置的方框圖;圖12示出第二實施例的文件登記操作的流程圖;圖13是示出第二實施例的文件記錄號的示意圖;圖14示出第三實施例的索引文件產(chǎn)生處理的流程圖;圖15是示出第三實施例的索引文件的示意圖;圖16是示出第三實施例的用于產(chǎn)生索引文件的數(shù)據(jù)的示意圖;以及圖17是已有技術(shù)數(shù)據(jù)搜索裝置所使用的索引文件的數(shù)據(jù)格式的示意圖。
在所有的附圖中用相同的標(biāo)號表示相同或相應(yīng)的元件或部分。
以下將描述本發(fā)明的第一實施例。
圖1是本發(fā)明第一實施例數(shù)據(jù)搜索裝置的方框圖,在第三實施例中也參考該圖。
此數(shù)據(jù)搜索裝置包括請求接收部分1,用于接收各種處理用的請求;記錄號提供部分2,用于把記錄號(數(shù)據(jù))分配給將被登記的文件,并產(chǎn)生代表文件號、頁號和記錄號之間對應(yīng)性的記錄號對應(yīng)性表格;記錄號對應(yīng)性表格存儲部分3,用于存儲記錄號提供部分2產(chǎn)生的記錄號對應(yīng)性表格;相對編號部分4,用于把記錄號提供部分2提供的記錄號(數(shù)據(jù))分組,并在一個組中把該記錄號轉(zhuǎn)換成相對號碼;索引文件產(chǎn)生部分5,用于從相對編號部分4提供的相對數(shù)目和被登記的數(shù)據(jù)產(chǎn)生索引文件;索引文件存儲部分6,用于存儲索引文件產(chǎn)生部分5產(chǎn)生的索引文件;索引文件搜索部分7,用于使用索引文件存儲部分6中的索引文件進行搜索;絕對編號部分8,用于把索引文件搜索部分7搜索的相對記錄號轉(zhuǎn)換成絕對記錄號;文件號轉(zhuǎn)換部分9,用于使用記錄號對應(yīng)性表格存儲部分3中的記錄號對應(yīng)性表格,把絕對編號部分8提供的記錄號轉(zhuǎn)換成文件號和頁號;搜索結(jié)果輸出部分10,用于顯示被搜索的文件號;以及插入?yún)^(qū)產(chǎn)生部分11,用于在索引文件產(chǎn)生部分5把索引文件存入索引文件存儲部分6之前提供用于存儲附加數(shù)據(jù)的數(shù)據(jù)區(qū)。在第一實施例中,不使用插入?yún)^(qū)產(chǎn)生部分11。
將描述第一實施例的操作。圖2示出第一實施例的流程圖,在第二和第三實施例中也參考該圖。圖3是示出此實施例的被記錄文件的一個示例情況的示意圖。圖4是示出此實施例的對應(yīng)性表格的一個示例情況的示意圖。
包含在此數(shù)據(jù)搜索裝置中的cpu(它是包含在數(shù)據(jù)搜索裝置中的一個中央處理單元,但未示出)執(zhí)行圖2中流程圖所示的程序。
當(dāng)用戶登記一個文件時,請求接收部分1接收到文件登記請求,而記錄號提供部分2響應(yīng)于此請求把記錄號提供給每個記錄,此每個記錄是將在步驟s1中登記的一個數(shù)據(jù)單元。即,將被登記的數(shù)據(jù)即文件包括一些頁,而把每頁作為提供了一記錄號的一個記錄。
例如,如果如圖3所示登記文件,則向文件D1的第一頁提供記錄號1;向文件D1的第二頁提供記錄號2;以及向文件D2的第一頁提供記錄號3。
cpu產(chǎn)生用于記錄號對應(yīng)性表格的表格數(shù)據(jù),此表格代表記錄號、文件號和頁號之間的關(guān)系。cpu在步驟s2中使用表格數(shù)據(jù)更新記錄號對應(yīng)性表格,并把已更新的記錄號對應(yīng)性表格存入對應(yīng)性表格存儲部分3。當(dāng)?shù)怯浟巳鐖D3所示的文件時,記錄號對應(yīng)性表格的數(shù)據(jù)情況如圖4所示。
cpu在步驟s3把記錄分組。假定把65536個記錄分成一組,則給出組號如下組號=<記錄號/65536>
這里<>代表商,即組數(shù)是一個通過略去記錄號/65536的小數(shù)部分而提供的整數(shù)。
在接著的步驟s4中,給出組中的相對記錄號如下相對記錄號=記錄號%65536這里算符%代表余數(shù)。
如示出本實施例絕對記錄號和相對號之間關(guān)系的圖5所示,絕對記錄號被轉(zhuǎn)換成相對號。例如,絕對記錄號65537被轉(zhuǎn)換成第一組中的相對記錄號1,絕對記錄號13072被轉(zhuǎn)換成第二組中的相對記錄號0。
然后,cpu在步驟s5中產(chǎn)生索引文件。圖6是示出本實施例索引文件的示意圖。索引文件包括在一包含兩個字符的字符串中兩個字符出現(xiàn)次數(shù)數(shù)據(jù)。
圖7A是示出第一實施例字符串和出現(xiàn)次數(shù)之間關(guān)系的示意圖。
圖7B是示出包括兩個預(yù)定字符的字符串和出現(xiàn)次數(shù)數(shù)據(jù)之間關(guān)系的示意圖。
假定被登記的數(shù)據(jù)是“abaabcac”,則各個字符的出現(xiàn)次數(shù)如圖7A所示。然后,劃分被登記的數(shù)據(jù),從而以重疊方式從被登記數(shù)據(jù)頂部連續(xù)提供字符鏈。即,在每隔兩個字符把字符串分段,其中每隔一個字符轉(zhuǎn)移分段點。于是,第一字符鏈?zhǔn)?a,b),其出現(xiàn)次數(shù)數(shù)據(jù)是(1,1)。接著的字符鏈?zhǔn)?b,a),出現(xiàn)次數(shù)數(shù)據(jù)是(1,2)。類似地,cpu獲得所有字符鏈的出現(xiàn)次數(shù)數(shù)據(jù)。
圖8是示出此實施例索引文件的示意圖。假定在組1中以記錄號1中登記的數(shù)據(jù)是“ababcbcababc”,在組1中以記錄號2中登記的數(shù)據(jù)是“bbaabbcabc”,在組2中以記錄號1中登記的數(shù)據(jù)是“bcababcbc”,在組2的記錄號2中登記的數(shù)據(jù)是“acbcabbaabc”。cpu依據(jù)圖8所示的字符鏈(a,b)和(b,c)計算出現(xiàn)次數(shù)。
cpu反復(fù)執(zhí)行步驟s1到s7,以產(chǎn)生所述索引文件直到處理了最后一個記錄,以提供索引文件。即,cpu確定是否在步驟s6處理了最后一個記錄。如果此記錄是最后一個,則處理結(jié)束。如果記錄不是最后一個,則處理返回步驟s1。
將描述搜索處理。
圖9和10示出本實施例搜索處理的流程圖。
當(dāng)用戶輸入包括將被搜索的字符串(搜索字符串)數(shù)據(jù)的搜索請求時,接收部分1接收搜索請求,并把搜索字符串?dāng)?shù)據(jù)提供給索引文件搜索部分7。索引文件搜索部分7把字符串劃分成多個字符鏈。
如果搜索字符串是“abc”,則索引文件搜索部分7在步驟s11把它劃分成字符鏈(a,b)和(b,c)。在步驟s12中,索引文件搜索部分7從索引文件存儲部分6中各個信息頂部位置處字符鏈(a,b)和字符鏈(b,c)的出現(xiàn)次數(shù)數(shù)據(jù)文件中獲得字符鏈(a,b)和(b,c)的頂部出現(xiàn)次數(shù)數(shù)據(jù)。由索引文件的指針提供位置。
在圖8的情況中,在組1的記錄號1處,字符鏈(a,b)的出現(xiàn)次數(shù)數(shù)據(jù)是(1,1),字符鏈(b,c)的出現(xiàn)次數(shù)數(shù)據(jù)是(2,1)。因此,索引文件搜索部分7從索引文件存儲部分6獲得字符鏈(a,b)的出現(xiàn)次數(shù)數(shù)據(jù)(1,1),以及字符鏈(b,c)的出現(xiàn)次數(shù)數(shù)據(jù)(2,1)。
然后,在步驟s13,索引文件搜索部分7比較索引文件存儲部分6中獲得的字符鏈(a,b)和(b,c)的出現(xiàn)次數(shù)數(shù)據(jù)的組號。如果獲得的出現(xiàn)次數(shù)數(shù)據(jù)不相同,則索引文件搜索部分7把位于具有較小組號的組中任一個字符鏈(a,b)和(b,c)的索引文件的指針加到下一組中出現(xiàn)次數(shù)數(shù)據(jù)的頂部,并重復(fù)步驟s13和s14。如果獲得的字符鏈(a,b)和(b,c)的出現(xiàn)次數(shù)數(shù)據(jù)的組號相同,則索引文件搜索部分7在步驟s15中比較獲得的出現(xiàn)次數(shù)數(shù)據(jù)的記錄號。
在圖8的情況中,因為兩者的組號是1,所以索引文件搜索部分7比較記錄號。
如果同一組中的相對記錄號不同,則索引文件搜索部分7在步驟s16確定獲得的出現(xiàn)次數(shù)數(shù)據(jù)是否是組中最后一個數(shù)據(jù)。如果獲得的出現(xiàn)次數(shù)數(shù)據(jù)不是組中的最后一個數(shù)據(jù),則索引文件搜索部分7在步驟s17獲得組中具有較小記錄號的下一個出現(xiàn)次數(shù)數(shù)據(jù)。索引文件搜索部分7重復(fù)從步驟s15到s17的處理。如果獲得的出現(xiàn)次數(shù)數(shù)據(jù)是組中的最后一個數(shù)據(jù),則索引文件搜索部分7在步驟s18獲得位于下一組頂部的出現(xiàn)次數(shù)數(shù)據(jù),并重復(fù)從步驟s13到步驟s18的處理。如果該組中的記錄號相同,則索引文件搜索部分7在步驟s19比較出現(xiàn)次數(shù)數(shù)據(jù)。
在圖8的情況下,因為組中的兩個記錄號都是1,則索引文件搜索部分7比較出現(xiàn)次數(shù)數(shù)據(jù)。
索引文件搜索部分7比較出現(xiàn)次數(shù)數(shù)據(jù)如下把字符鏈(a,b)中字符“b”的出現(xiàn)次數(shù)與字符鏈(b,c)中字符“b”的出現(xiàn)次數(shù)相比。如果兩個出現(xiàn)次數(shù)數(shù)據(jù)彼此相同,則字符鏈(a,b)中的字符“b”與字符鏈(b,c)中的字符“b”是相同字符。這意味著這兩個字符鏈?zhǔn)且贿B續(xù)的字符串,即,有字符串“abc”。
如果出現(xiàn)次數(shù)互不相同,則索引文件搜索部分7在步驟s10中獲得接在具有較小出現(xiàn)次數(shù)數(shù)據(jù)的字符鏈后面的字符鏈的次數(shù)數(shù)據(jù),并從步驟s5重復(fù)處理。
在圖8的情況中,因為(a,b)的出現(xiàn)次數(shù)數(shù)據(jù)是(1,1),而(b,c)的出現(xiàn)次數(shù)數(shù)據(jù)是(2,1),因此字符鏈(a,b)的第二個字符(b)的出現(xiàn)次數(shù)數(shù)據(jù)與字符鏈(b,c)第一個字符(b)的出現(xiàn)次數(shù)數(shù)據(jù)不相同(COM1),索引文件搜索部分7在字符鏈(a,b)具有較小的出現(xiàn)次數(shù)值后,獲得同一組中的記錄號1的出現(xiàn)次數(shù)數(shù)據(jù)(2,2)。
然后,因為出現(xiàn)次數(shù)數(shù)據(jù)處于同一記錄號和同一組中,所以索引文件搜索部分7比較這兩個出現(xiàn)次數(shù)數(shù)據(jù)(COM2)。因為這兩個出現(xiàn)次數(shù)數(shù)據(jù)都是2,所以搜索到字符串“abc”。
當(dāng)出現(xiàn)次數(shù)數(shù)據(jù)相同時,即,如果有要被搜索的字符串時,則在步驟s11中用以下公式從組號和記錄號中計算記錄號。
記錄號=65536*組號+組中的記錄號然后,在步驟s12中,索引文件搜索部分7使用圖4所示存儲在記錄號對應(yīng)性表格存儲部分3中的對應(yīng)性表格,從記錄號中獲得文件號和頁號。
在接著的步驟s13中,索引文件搜索部分7輸出在步驟s12中獲得的文件號和頁號作為將要搜索的文件號。重復(fù)此處理,直到處理了最后一個數(shù)據(jù)。
索引文件產(chǎn)生部分5產(chǎn)生索引文件,它包括至少一個用于存儲每個組號數(shù)據(jù)的標(biāo)題60,以及接在標(biāo)題60后用于存儲相對記錄號數(shù)據(jù)以及相應(yīng)的索引數(shù)據(jù)的索引數(shù)據(jù)區(qū)62。標(biāo)題60和每個索引數(shù)據(jù)區(qū)具有相同的大小。
如上所述,在此實施例的數(shù)據(jù)搜索裝置中,當(dāng)?shù)怯浳募r,把記錄號分配給每一頁,把記錄號分組并轉(zhuǎn)換成將被控制的相對記錄號,從而每一組可重復(fù)使用同一范圍內(nèi)的記錄號。
在此實施例中,由包括兩個字符的字符鏈的出現(xiàn)次數(shù)數(shù)據(jù)提供索引文件。然而,對于索引文件也可使用代表字符串出現(xiàn)的其它數(shù)據(jù),諸如字符串的絕對位置數(shù)據(jù)。此外,在此實施例中,每一頁提供登記的一個記錄。然而,也可在每個預(yù)定部分提供一個記錄,諸如被句號(period)等分段數(shù)據(jù)分段的每個文件、每個句子或每個段落。
將描述第二實施例。
圖11是第二實施例數(shù)據(jù)搜索裝置的方框圖。
第二實施例的數(shù)據(jù)搜索裝置包括請求接收部分12,可接收用于各種處理的請求;記錄號提供部分13,用于依據(jù)從文件號和頁號中唯一確定記錄號的法則提供記錄號;相對編號部分14,用于對由記錄號提供部分13提供的記錄號進行分組;索引文件產(chǎn)生部分15,用于產(chǎn)生索引文件,它包括被相對編號部分14轉(zhuǎn)換的相對記錄號和將被登記的數(shù)據(jù);索引文件存儲部分16,用于存儲索引文件產(chǎn)生部分15產(chǎn)生的索引文件;索引文件搜索部分17,用于使用存儲在索引文件存儲部分16中的索引文件進行數(shù)據(jù)搜索;絕對編號部分18,用于把索引文件搜索部分17搜索的記錄的相對記錄號轉(zhuǎn)換成絕對記錄號;文件號轉(zhuǎn)換部分19,用于通過記錄號提供部分13進行的逆變換從記錄號中提供文件號和頁號;以及搜索結(jié)果輸出部分20,用于輸出文件號作為搜索結(jié)果。
首先,將描述登記文件的操作。圖12是示出第二實施例的文件登記操作的流程圖。圖13是示出第二實施例的文件記錄號的示意圖。
當(dāng)用戶對請求接收部分12輸入登記請求時,請求接收部分12接收此登記請求。然后,記錄編號部分13用從文件號和頁號唯一確定記錄號的法則提供記錄號。從以下公式計算此記錄號。
記錄號=(文件號-1)*文件中的最大頁數(shù)+頁號這里通過把一文件中的頁數(shù)設(shè)定為如圖13所示的預(yù)定數(shù)目可唯一地確定記錄號。
在此處理后的登記文件的處理類似于圖2所示的從步驟s3到s8的處理。
基本上通過圖9和10所示的處理進行搜索操作。然而,通過以下公式在步驟12中從記錄號計算文件號和頁號。
文件號P=記錄號/文件的最大頁數(shù)+1頁號=記錄號%文件的最大頁數(shù)如上所述,在第二實施例的數(shù)據(jù)搜索裝置中,可通過將記錄號分組和用相對記錄號進行控制來控制大量記錄號,從而可通過從一文件的最大頁數(shù)和頁號唯一確定記錄號的法則分配頁號。因此,不必產(chǎn)生第一實施例中所需的對應(yīng)性表格。此外,如果由于更新文件使頁數(shù)增加,也可在預(yù)定的最多頁內(nèi)對記錄號進行規(guī)則地編號。
此外,如果某一至記錄號的其它轉(zhuǎn)換能從文件號和頁號唯一確定記錄號,則它也可應(yīng)用于此實施例,諸如記錄號=文件的最大數(shù)目*(頁數(shù)-1)+文件號將描述第三實施例。
第三實施例的結(jié)構(gòu)和操作類似于第一實施例。第一和第三實施例的不同之處在于還提供了插入?yún)^(qū)產(chǎn)生部分11。插入?yún)^(qū)產(chǎn)生部分11在索引文件產(chǎn)生部分5把索引文件存入索引文件存儲部分6時產(chǎn)生插入?yún)^(qū),并把出現(xiàn)次數(shù)數(shù)據(jù)存入插入?yún)^(qū)中。
類似于圖2所示從步驟s1到s4的處理進行文件的登記操作。
圖14示出第三實施例索引文件產(chǎn)生處理的流程圖。
在步驟s41中,類似于第一實施例索引文件產(chǎn)生部分那樣產(chǎn)生包括兩個字符的字符鏈出現(xiàn)次數(shù)數(shù)據(jù)。索引文件產(chǎn)生部分5在步驟s42中確定是否有用于存儲出現(xiàn)次數(shù)數(shù)據(jù)的插入?yún)^(qū)。如果沒有用于存儲出現(xiàn)次數(shù)數(shù)據(jù)的插入?yún)^(qū),則插入?yún)^(qū)產(chǎn)生部分11在步驟s43產(chǎn)生預(yù)定大小的存儲區(qū)。如果在步驟s42中有用于存儲出現(xiàn)次數(shù)數(shù)據(jù)的插入?yún)^(qū),則索引文件產(chǎn)生部分5在步驟s44把出現(xiàn)次數(shù)數(shù)據(jù)存入插入?yún)^(qū)。
圖15是示出第三實施例的索引文件的示意圖。圖16是示出第三實施例的用于產(chǎn)生索引文件的數(shù)據(jù)的示意圖。
假定組1中具有記錄號1的句子為“ababcbcababc”,在組1中具有記錄號2的句子為“bbaabbcabc”,在組2中具有記錄號1的句子為“bcababcbc”,以及在組2中具有記錄號2的句子為“acbcabbaabc”。然后,類似于第一實施例,索引文件產(chǎn)生部分5產(chǎn)生代表字符鏈(a,b)出現(xiàn)次數(shù)數(shù)據(jù)的索引文件,如圖16所示還在每一組中插入具有預(yù)定大小的插入?yún)^(qū)。
把出現(xiàn)次數(shù)數(shù)據(jù)加到索引文件的情況是再登記文件,并更新已登記的文件,于是應(yīng)更新出現(xiàn)次數(shù)數(shù)據(jù)。
在此處理后,類似于圖2所示第一實施例步驟s6到s7的處理進行數(shù)據(jù)登記處理,以完成數(shù)據(jù)登記處理。
類似于圖9和10所示的處理進行搜索操作。
如上所述,在第三實施例的數(shù)據(jù)搜索裝置中,因為產(chǎn)生具有預(yù)定大小的插入?yún)^(qū)。因此,如果更新被登記的文件或再登記新文件,則可把出現(xiàn)次數(shù)數(shù)據(jù)加入插入?yún)^(qū),從而可防止由于插入數(shù)據(jù)而引起的登記速度的降低。
在此實施例中,由相對編號提供記錄號。然而,也可用未被相對編號的一般記錄號控制記錄號。
權(quán)利要求
1.一種數(shù)據(jù)搜索裝置,其特征在于包括輸入裝置,用于接收包括搜索請求數(shù)據(jù)的搜索請求和登記請求;分段裝置,用于響應(yīng)于來自所述輸入裝置的所述登記請求依據(jù)包含在所述數(shù)據(jù)中的分段數(shù)據(jù)把將被登記的數(shù)據(jù)劃分成記錄單元;編號裝置,用于對所述記錄進行分組和編號從而把每個預(yù)定數(shù)目的所述記錄分成一組,并用于從被編號和分組的記錄中產(chǎn)生組號數(shù)據(jù)和相對記錄號數(shù)據(jù);存儲裝置,用于相應(yīng)地存儲所述組號數(shù)據(jù)和所述相對記錄號數(shù)據(jù);以及搜索數(shù)據(jù)產(chǎn)生裝置,用于依據(jù)來自所述輸入裝置的所述搜索請求數(shù)據(jù)以及所述存儲裝置中的所述組數(shù)據(jù)和相對記錄號數(shù)據(jù)產(chǎn)生和輸出將被用于搜索一個所述記錄的搜索數(shù)據(jù)。
2.一種數(shù)據(jù)搜索裝置,其特征在于包括請求接收裝置,用于接收包括搜索數(shù)據(jù)的搜索請求和登記請求;記錄號提供裝置,用于響應(yīng)于所述登記請求把記錄號數(shù)據(jù)提供給每個記錄,所述每個記錄是將被登記的一個數(shù)據(jù)單元;相對編號裝置,用于把所述記錄號數(shù)據(jù)分組,并把所述記錄號數(shù)據(jù)轉(zhuǎn)換成組號數(shù)據(jù)和每個所述組內(nèi)的相對記錄號數(shù)據(jù);索引文件產(chǎn)生裝置,用于從所述數(shù)據(jù)和所述相對記錄號數(shù)據(jù)產(chǎn)生索引文件;索引文件存儲裝置,用于存儲所述索引文件;索引文件搜索裝置,用于響應(yīng)于來自所述請求接收裝置的所述搜索請求,依據(jù)所述索引文件存儲裝置中的所述索引文件,搜索由所述搜索數(shù)據(jù)所指出的一個記錄;絕對編號裝置,用于把所述被搜索的一個記錄的相對號數(shù)據(jù)和組號數(shù)據(jù)轉(zhuǎn)換成所述記錄號數(shù)據(jù);以及搜索結(jié)果輸出裝置,用于依據(jù)來自所述絕對編號裝置的記錄號數(shù)據(jù)輸出搜索結(jié)果。
3.如權(quán)利要求2所述的數(shù)據(jù)搜索裝置,其特征在于所述記錄號提供裝置產(chǎn)生表示所述記錄號數(shù)據(jù)與包含在所述數(shù)據(jù)中的分段數(shù)據(jù)之間對應(yīng)性的記錄號對應(yīng)性表格,所述搜索結(jié)果輸出裝置依據(jù)所述記錄號對應(yīng)性表格輸出來自絕對編號裝置的所述記錄號數(shù)據(jù)的所述搜索結(jié)果。
4.如權(quán)利要求2所述的數(shù)據(jù)搜索裝置,其特征在于所述索引文件產(chǎn)生裝置產(chǎn)生所述索引文件,所述索引文件包括至少一個用于存儲每個所述組號數(shù)據(jù)的標(biāo)題,以及接在所述標(biāo)題后用于存儲相對記錄號數(shù)據(jù)和相應(yīng)的所述索引數(shù)據(jù)的所述索引數(shù)據(jù)區(qū),所述標(biāo)題和每個所述索引數(shù)據(jù)區(qū)具有相同的大小。
5.一種數(shù)據(jù)搜索裝置,其特征在于包括請求接收裝置,用于接收搜索請求和登記請求;記錄號提供裝置,用于響應(yīng)于所述登記請求依據(jù)包含在數(shù)據(jù)中的分段數(shù)據(jù),通過唯一確定所述記錄號數(shù)據(jù)的法則,把所述記錄號數(shù)據(jù)提供給每個記錄,所述每個記錄是將被登記的所述數(shù)據(jù)的一個單元;相對編號裝置,用于把所述記錄分組從而所述記錄號和至少一個備用記錄構(gòu)成所述組中的一組,并從被分組的記錄號中產(chǎn)生組號數(shù)據(jù)和相應(yīng)的相對號數(shù)據(jù);索引文件產(chǎn)生裝置,用于使用所述相對記錄號數(shù)據(jù)和所述組號數(shù)據(jù)從所述數(shù)據(jù)中產(chǎn)生索引文件;索引文件存儲裝置,用于存儲所述索引文件;索引文件搜索裝置,用于響應(yīng)于來自所述請求接收裝置的所述搜索請求,依據(jù)所述索引文件存儲裝置中的所述索引文件,搜索由所述搜索數(shù)據(jù)所指出的一個記錄;絕對編號裝置,用于把被搜索的一個記錄的相對號數(shù)據(jù)和組號數(shù)據(jù)轉(zhuǎn)換成所述記錄號數(shù)據(jù);以及搜索結(jié)果輸出裝置,用于依據(jù)來自所述絕對編號裝置的記錄號數(shù)據(jù)輸出搜索結(jié)果。
6.如權(quán)利要求2所述的數(shù)據(jù)搜索裝置,其特征在于還包括插入?yún)^(qū)產(chǎn)生裝置,用于在所述索引存儲裝置中提供一存儲空間,以在今后所述索引文件存儲裝置存儲所述索引文件時把所述索引數(shù)據(jù)存入所述索引文件存儲裝置。
7.如權(quán)利要求5所述的數(shù)據(jù)搜索裝置,其特征在于還包括插入?yún)^(qū)產(chǎn)生裝置,用于在所述索引存儲裝置中提供一存儲空間,以在今后所述索引文件存儲裝置存儲所述索引文件時把所述索引數(shù)據(jù)存入所述索引文件存儲裝置。
全文摘要
揭示了一種數(shù)據(jù)搜索裝置,該裝置包括請求接收部分,接收搜索請求和登記請求;記錄號提供部分,把記錄號數(shù)據(jù)提供給每個記錄;相對編號部分,把記錄號數(shù)據(jù)分組及轉(zhuǎn)換成組號數(shù)據(jù)和相對記錄號數(shù)據(jù);索引文件產(chǎn)生部分,產(chǎn)生索引文件;索引文件存儲部分,存儲索引文件;索引文件搜索部分,搜索由搜索數(shù)據(jù)指出的記錄;絕對編號部分,把被搜索記錄的相對號數(shù)據(jù)和組號數(shù)據(jù)轉(zhuǎn)換成記錄號數(shù)據(jù);以及搜索結(jié)果輸出部分,依據(jù)記錄號數(shù)據(jù)輸出搜索結(jié)果。
文檔編號G06F17/30GK1162154SQ97102618
公開日1997年10月15日 申請日期1997年2月12日 優(yōu)先權(quán)日1996年3月12日
發(fā)明者木下哲也, 小山隆正, 菊池忠一 申請人:松下電器產(chǎn)業(yè)株式會社
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
罗平县| 石泉县| 万年县| 彩票| 太保市| 萝北县| 辽中县| 汉寿县| 宝清县| 资源县| 肇州县| 迭部县| 静海县| 五峰| 崇信县| 突泉县| 固阳县| 阿勒泰市| 繁昌县| 屯门区| 厦门市| 牟定县| 贺州市| 杭锦旗| 丹阳市| 大姚县| 大理市| 讷河市| 永新县| 潼南县| 青神县| 炎陵县| 德钦县| 永仁县| 东辽县| 贡觉县| 新昌县| 望城县| 济源市| 郴州市| 贵阳市|