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

一種支持多數(shù)據(jù)源的索引維護方法

文檔序號:6334253閱讀:391來源:國知局

專利名稱::一種支持多數(shù)據(jù)源的索引維護方法
技術領域
:本發(fā)明屬于搜索引擎
技術領域
,具體涉及一種索引庫更新維護方法。
背景技術
:企業(yè)信息化產(chǎn)生了大量的原始信息或加工信息,如各種文本信息、多媒體信息等。這些信息中包含了用戶感興趣的各種內(nèi)容,需要對這些信息進行有效存儲與檢索。這種信息檢索系統(tǒng)的主要特點一是,數(shù)據(jù)來源多,當原始信息產(chǎn)生之后,要求能夠盡快地進入檢索系統(tǒng),并能夠被檢索;二是,用戶對信息檢索的響應時間有更高的要求,特別地索引庫的更新過程不能對用戶檢索的響應時間產(chǎn)生影響。三是,不同類型企業(yè)用戶在檢索過程中,可能對檢索的時間范圍有一定區(qū)別,有的要求對剛產(chǎn)生的數(shù)據(jù)能夠進行即時查詢,而有的要求能夠查詢歷史上某個時間段的數(shù)據(jù)?,F(xiàn)有的搜索引擎研究在海量信息處理、體系結構等方面已經(jīng)有了很大的進展,如google公司發(fā)明的Bigtable等一系列技術[1],有效地解決了海量信息的分布式存儲與索引中的主要問題,為上層應用提供了統(tǒng)一的數(shù)據(jù)接口。在企業(yè)級的文本信息存儲與檢索技術方面,為了適應企業(yè)用戶對檢索響應時間的要求,人們提出了多種匹配算法、索引庫的組織方法以及軟件體系結構設計方法等。其中,索引庫的組織及其維護方法由于對檢索性能有較大的影響,而成為搜索引擎設計的關鍵。歸納起來,主要有以下幾類方法一是,針對集中式環(huán)境下的索引結構,主要是基于倒排索引結構及其改進方法[2]。二是,針對分布式環(huán)境下的索引結構,在倒排結構的基礎上,對索引建立算法進行了分布式處理的增強[3,4]。這些方法在海量信息的存儲、索引管理以及提高檢索系統(tǒng)性能方面,起了關鍵作用。隨著用戶對檢索系統(tǒng)性能要求的不斷提高,人們需要在索引庫實時維護機制方面提出新的方法,以便在大量的索引庫中快速定位與選擇某次檢索所需要的索引庫片斷,避免在大索引庫中檢索記錄,同時避免索引庫更新過程對用戶檢索所造成的影響,進一步縮短用戶檢索的響應時間。而現(xiàn)有各種方法在解決這些需求時尚存在一定的不足,具體說明如下1.對多個數(shù)據(jù)源上的數(shù)據(jù)同時建立索引時,現(xiàn)有方法由于需要進行索引庫的不斷更新,而造成建立索引時產(chǎn)生延遲,從而影響用戶即時檢索的需要。2.由于索引的更新在一個大的索引庫上進行,因此,在更新期間容易發(fā)生用戶檢索無法進行的現(xiàn)象,或檢索請求的處理過程變慢。3.面對用戶在檢索過程中對時間范圍的限定,現(xiàn)有方法實際上還是在大的索引庫中進行,因此,檢索效率的提升是很有限的。由此可見,為了實現(xiàn)對多數(shù)據(jù)源進行索引創(chuàng)建,同時保證用戶檢索的響應時間不受影響,需要引入新的索引庫并發(fā)實時更新維護機制,才能有效克服目前存在的問題并滿足企業(yè)用戶需要。本發(fā)明的目的就是設計這樣的索引庫更新維護機制。
發(fā)明內(nèi)容本發(fā)明的目的主要是針對搜索引擎性能進一步改善的需要,提出一種新的索引庫維護方法。本發(fā)明基于對多個數(shù)據(jù)源同時建立索引的性能需求而提出一種索引庫維護方法。本發(fā)明針對索引服務器中索引庫的組織方式、更新方法及檢索過程,將整個索引庫分為一系列子索引庫,每個子索引庫存儲一定時間粒度內(nèi)的索引,子索引庫包含一個獨立的目錄及相關文件。本發(fā)明的總體流程如圖1。操作步驟分為三個流程,具體如下一.子索引庫的數(shù)據(jù)加載(1)生成新的子索引庫,并按照一定的命名方式對該子索引庫進行標識;(2)對該子索引庫進行加鎖;(3)按照建立索引結構的算法[5,6]創(chuàng)建數(shù)據(jù)對應的索引文件,實現(xiàn)數(shù)據(jù)加載;(4)子索引庫解鎖;(5)通知索引服務器上的檢索請求處理進程,將該子索引庫標識為可用庫。二.子索引庫的合并(1)按照一定的時間間隔選擇需要合并的子索引庫;(2)生成新的子索引庫,并按照一定命名方式對該子索引庫進行標識;(3)對該子索引庫進行加鎖;(4)按照與索引結構相對應的索引合并算法[5,6]將所選擇的子索引庫合并,寫入到新的子索引庫;(5)子索引庫解鎖;(6)通知索引服務器上的檢索請求處理進程,將所選擇的子索引庫標識為不可用,而將新的子索引庫標識為可用。三.用戶檢索請求的處理(1)從接收到的用戶檢索請求命令中,提取指定的時間范圍;(2)根據(jù)該時間范圍,選擇符合時間條件的子索引庫,作為處理當前檢索命令的索引庫;(3)執(zhí)行檢索過程,并返回結果。支持多數(shù)據(jù)源的索引維護方法,其特征在于對子索引庫具有如下的標識DATE1-DATE2,其中DATEl與DATE2分別表示索引庫中所包含的數(shù)據(jù)文件的最早與最遲的生成時間,格式均為yyyyYYDDHHMMSS,yyyy表示年份,YY表示月份,DD表示日,ⅠⅡⅠ表示小時數(shù),ⅥM表示分鐘,SS表示秒數(shù)。本發(fā)明的支持多數(shù)據(jù)源的索引維護方法,索引合并具有靈活的時間粒度,即由G1、G2和G3表示不同時間粒度,對應的子索引庫具有如下特點SUB_SET1={siDATE2-DATE1>G1}SUB_SET2={siDATE2-DATE1>G2}SUB_SET3={siDATE2-DATE1>G3}其中,G1>G2>G3。本發(fā)明的支持多數(shù)據(jù)源的索引維護方法,用戶的檢索請求在合適的時間范圍子索引庫中進行;針對檢索請求所限定的查詢時間范圍[tl,t2],根據(jù)以下選擇方法選擇用于本次查詢的可用子索引列表tl<=DATEl<=t2或tl<=DATE2<=t2,其中DATEl和DATE2為各個子索引庫的標識。本發(fā)明的支持多數(shù)據(jù)源的索引維護方法,子索引庫的數(shù)據(jù)加載過程中,通過產(chǎn)生加鎖文件的方式來避免合并進程對正在加載的子索引庫進行合并,也避免正在加載的子索引庫被用戶檢索處理進程選擇為檢索范圍。本發(fā)明的支持多數(shù)據(jù)源的索引維護方法,子索引庫合并過程中,通過產(chǎn)生加鎖文件的方式來避免正在生成的新子索引庫被用戶檢索請求處理進程選擇為檢索范圍。本發(fā)明具有實質(zhì)性特點和顯著進步(1)通過設置子索引庫,需要為不同數(shù)據(jù)源建立索引時,只需要在各自的子索引庫中進行,而不互相影響,因此能夠?qū)崿F(xiàn)索引的實時更新。(2)通過設置合適的索引合并檢測周期,可以實現(xiàn)具有不同時間粒度的子索引庫互相共存,為索引庫的組織提供了一種新的思路。(3)用戶限定時間范圍的檢索請求可以方便地映射到子索引庫上,索引的更新在獨立的子索引庫中進行而不影響用戶的檢索請求,從而保證響應時間滿足用戶要求,提高檢索效率。圖1為本發(fā)明總體流程圖。圖2為數(shù)據(jù)加載處理流程圖。圖3為子索引庫合并處理流程圖。圖4為用戶檢索請求處理流程圖。具體實施例方式在索引服務器上維護三個進程,分別是子索引庫的數(shù)據(jù)加載、子索引庫的合并、用戶檢索請求的處理。圖2、圖3、圖4為本發(fā)明流程圖示。索引庫是一個獨立目錄,其中所包含的子目錄為子索引庫,每個子索引庫中的具體文件根據(jù)不同的索引組織形式而有所不同。1、子索引庫的數(shù)據(jù)加載進程索引服務器設定一個目錄用于接收新數(shù)據(jù)文件,按照以下處理流程執(zhí)行(1)檢查該目錄是否有新的數(shù)據(jù)文件達到。(2)如果沒有新的數(shù)據(jù)文件,則轉(zhuǎn)(1)。(3)如果有新的數(shù)據(jù)文件,則執(zhí)行以下處理流程(a)在索引庫中建立相應的子目錄,將目錄名稱命名為DATE1-DATE2,其中DATEl與DATE2分別表示數(shù)據(jù)文件集中文件最早與最遲的生成時間,格式均為yyyyYYDDHHMMSS,yyyy表示年份,YY表示月份,DD表示日,HH表示小時,匪表示分鐘,SS表示秒;(b)在該子目錄中生成lock文件,表示該子索引庫處于加鎖狀態(tài);(c)按照創(chuàng)建索引的算法(具體的算法在本發(fā)明中沒有限制,可選用目前任何已有的算法,如倒排索引創(chuàng)建算法[5,6]等),為數(shù)據(jù)文件中的數(shù)據(jù)建立索引,在該子索引庫中生成索引文件;(d)刪除lock文件,表示該子索引庫處于解鎖狀態(tài);(e)通知用戶檢索請求處理進程,將該子索引標識為可用。(4)轉(zhuǎn)本進程的流程(1)繼續(xù)執(zhí)行,直到用戶終止該進程的運行。2、子索引庫的合并進程索引服務器設定一個時間間隔T,子索引庫的合并進程每過這個時間間隔,就按照一定策略將子索引庫合并(1)在時間間隔達到時,分別選擇未加鎖的,同時滿足下面條件的子索引庫集合SUB__SET1=IsiDATE2-DATE1>G1}SUB__SET2=IsiDATE2-DATE1>G2}SUB__SET3=IsiDATE2-DATE1>G3}其中,G1>G2>G3。Gl,G2,G3代表不同的時間粒度。(2)對所選擇的子索引庫集分別按照以下處理流程執(zhí)行(a)在索引庫中建立相應的子目錄,將目錄名稱命名為DATE1-DATE2,其中DATEl與DATE2分別表示子索引庫集中各個子索引庫的最早與最遲時間標識;(b)在該子目錄中生成lock文件,表示該子索引庫處于加鎖狀態(tài);(c)按照索引算法相對應的索引合并算法(具體的算法在本發(fā)明中沒有限制,可選用目前任何已有的算法,如針對倒排索引結構的合并算法[5,6]等),將所選擇的所有子索引庫合并,并寫入到新的子索引庫中;(d)刪除lock文件,表示該子索引庫處于解鎖狀態(tài);(e)通知用戶檢索請求處理進程,將所選擇的子索引庫標識為不可用,而將新生成的子索引庫標識為可用;(f)刪除子索引庫集中的各個子索引庫。(3)轉(zhuǎn)本進程的流程(1)繼續(xù)執(zhí)行,直到用戶終止該進程的運行。3、用戶檢索請求處理進程當產(chǎn)生新的用戶檢索請求時,該進程開始按照下面的流程執(zhí)行(1)從檢索請求串中提取檢索所限定的查詢時間范圍[tl,t2];(2)根據(jù)時間范圍,選擇用于本次查詢的可用子索引列表,方法如下tl<=DATEl<=t2或tl<=DATE2<=t2,其中DATEl和DATE2為各個子索引庫的標識。(3)根據(jù)所選擇的所有符合條件的子索引,構造索引結構,提取符合條件的記錄,并返回給用戶。從上述實施過程可以看出,本發(fā)明將索引庫按照時間粒度劃分子索引庫,而子索引庫的維護過程由數(shù)據(jù)加載、索引合并兩個進程組成。數(shù)據(jù)加載過程中仍然可以保證對用戶檢索的連續(xù)請求,大索引合并處理期間不會對檢索過程的響應時間造成影響。用戶的時間范圍檢索可以定位到合理的子索引庫,避免在大索引庫中檢索記錄。本發(fā)明所提出的索引庫維護方式為各種搜索引擎設計提供了新的思路與參考方法。具體例子在一臺計算機上部署索引服務器,實現(xiàn)子索引庫的數(shù)據(jù)加載、子索引庫合并以及用戶檢索請求處理等算法。設定接收數(shù)據(jù)文件的目錄為C:\reCeiVe_data;索引庫對應的目錄為c:\index,數(shù)據(jù)加載進程在該子目錄下生成子索引庫,如c:\index\20101010092500-20101010093000。設定合并的時間間隔T=300,即5分鐘。設定Gl=3600*24,G2=3600*3,G3=3600,分別表示建立一天的索引庫、三小時的索引庫和一小時的索引庫。參考文獻[1]FayChang,JeffreyDean,SanjayGhemawatjWilsonC.HsiehjDeborahA.WallachjMikeBurrows,TusharChandra,AndrewFikesjRobertE.Gruber.Bigtable:ADistributedStorageSystemforStructuredData.ACMTransactionsonComputerSystems,2008,26(2),article4王智強,劉建毅.一種實時更新索引結構的設計與實現(xiàn).計算機系統(tǒng)應用,2005,(10)79-82.彭波,李曉明.搜索引擎倒排文件的一種分塊組織技術.電子學報,2005,33(2)358-362印鑒,鄒勝.一種分布式搜索引擎設計.計算機科學,2001,28(10):74-77.GoetzB.TheLucenesearchenginePowerful,flexible,free,http://www.javaworld.com/javaworld/jw-09-2000/jw-0915-lucene.html.賈崇,陸玉昌,魯明羽.一種支持高效檢索的即時更新倒排索引方法.計算機工程與應用,2003,19198-201。權利要求一種支持多數(shù)據(jù)源的索引維護方法,其特征在于整個索引庫分為一系列子索引庫,每個子索引庫存儲一定時間粒度內(nèi)的索引,子索引庫包含一個獨立的目錄及相關文件;具體步驟包括以下3個處理流程一.子索引庫的數(shù)據(jù)加載(1)生成新的子索引庫,并按照一定的命名方式對該子索引庫進行標識;(2)對該子索引庫進行加鎖;(3)按照建立索引結構的算法創(chuàng)建數(shù)據(jù)對應的索引文件,實現(xiàn)數(shù)據(jù)加載;(4)子索引庫解鎖;(5)通知索引服務器上的檢索請求處理進程,將該子索引庫標識為可用庫;二.子索引庫的合并(1)按照一定的時間間隔選擇需要合并的子索引庫;(2)生成新的子索引庫,并按照一定命名方式對該子索引庫進行標識;(3)對該子索引庫進行加鎖;(4)按照與索引結構相對應的索引合并算法將所選擇的子索引庫合并,寫入到新的子索引庫;(5)子索引庫解鎖;(6)通知索引服務器上的檢索請求處理進程,將所選擇的子索引庫標識為不可用,而將新的子索引庫標識為可用;三.用戶檢索請求的處理(1)從接收到的用戶檢索請求命令中,提取指定的時間范圍;(2)根據(jù)該時間范圍,選擇符合時間條件的子索引庫,作為處理當前檢索命令的索引;(3)執(zhí)行檢索過程,并返回結果。2.如權利要求1所述的支持多數(shù)據(jù)源的索引維護方法,其特征在于對子索引庫具有如下的標識DATE1-DATE2,其中DATEl與DATE2分別表示索引庫中所包含的數(shù)據(jù)文件的最早與最遲的生成時間,格式均為yyyyYYDDHHMMSS,yyyy表示年份,YY表示月份,DD表示日,HH表示小時數(shù),匪表示分鐘,SS表示秒數(shù)。3.如權利要求2所述的支持多數(shù)據(jù)源的索引維護方法,其特征在于索引合并具有靈活的時間粒度,即由G1、G2和G3表示不同時間粒度,對應的子索引庫具有如下特點SUB__SET1=IsiDATE2-DATE1>G1}SUB__SET2=IsiDATE2-DATE1>G2}SUB__SET3=IsiDATE2-DATE1>G3}其中,G1>G2>G3。4.如權利要求3所述的支持多數(shù)據(jù)源的索引維護方法,其特征在于用戶的檢索請求在合適的時間范圍子索引庫中進行;針對檢索請求所限定的查詢時間范圍[tl,t2],根據(jù)以下選擇方法選擇用于本次查詢的可用子索引列表tl<=DATEl<=t2或tl<=DATE2<=t2,其中DATEl和DATE2為各個子索引庫的標識。5.如權利要求1所述的支持多數(shù)據(jù)源的索引維護方法,其特征在于子索引庫的數(shù)據(jù)加載過程中,通過產(chǎn)生加鎖文件的方式來避免合并進程對正在加載的子索引庫進行合并,也避免正在加載的子索引庫被用戶檢索處理進程選擇為檢索范圍。6.如權利要求1所述的支持多數(shù)據(jù)源的索引維護方法,其特征在于子索引庫合并過程中,通過產(chǎn)生加鎖文件的方式來避免正在生成的新子索引庫被用戶檢索請求處理進程選擇為檢索范圍。全文摘要本發(fā)明屬于搜索引擎
技術領域
,具體涉及一種支持多數(shù)據(jù)源的索引維護方法。本發(fā)明將整個索引庫分為一系列子索引庫,每個子索引庫存儲一定時間粒度內(nèi)的索引,子索引庫包含一個獨立的目錄及相關文件。操作步驟分為三個流程子索引庫的數(shù)據(jù)加載、子索引庫的合并、用戶檢索請求的處理。本發(fā)明通過設置子索引庫,便于實現(xiàn)索引的實時更新;通過設置合適的索引合并檢測周期,實現(xiàn)具有不同時間粒度的子索引庫互相共存;將用戶限定時間范圍的檢索請求映射到子索引庫上,索引的更新可以在獨立的子索引庫中進行而不影響用戶的檢索請求,從而保證響應時間滿足用戶要求。文檔編號G06F17/30GK101989301SQ201010515780公開日2011年3月23日申請日期2010年10月22日優(yōu)先權日2010年10月22日發(fā)明者吳承榮,曾劍平申請人:復旦大學
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
隆化县| 城步| 新疆| 华安县| 凌源市| 平谷区| 张家口市| 岚皋县| 西充县| 绵阳市| 池州市| 大悟县| 色达县| 柯坪县| 咸丰县| 卓资县| 百色市| 阳谷县| 哈尔滨市| 常宁市| 册亨县| 同心县| 仙桃市| 济源市| 历史| 隆德县| 昌吉市| 永吉县| 云安县| 平昌县| 历史| 广宁县| 铅山县| 长葛市| 上饶县| 英吉沙县| 兴安县| 惠来县| 嵊州市| 灵山县| 开封市|