一種數(shù)據(jù)搜索系統(tǒng)及方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及信息技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)搜索系統(tǒng)及方法。
【背景技術(shù)】
[0002]隨著信息科學(xué)的快速發(fā)展,數(shù)據(jù)庫技術(shù)得到了廣泛的應(yīng)用,很多金融機構(gòu)、政府機關(guān)、企事業(yè)單位、大型網(wǎng)站都組建了自己的核心數(shù)據(jù)庫,Oracle數(shù)據(jù)庫以其穩(wěn)定的表現(xiàn)、強大的管理能力成為大型企業(yè)的首選數(shù)據(jù)庫,然而,由于其管理的數(shù)據(jù)量隨著時間的推移變得越來越龐大,使得搜索引擎從Oracle數(shù)據(jù)庫執(zhí)行檢索時,搜索過程非常緩慢,同時,也使得數(shù)據(jù)庫系統(tǒng)的性能大大降低。因此,亟需一種方法解決由于關(guān)系數(shù)據(jù)庫在數(shù)據(jù)量非常龐大的情況下,其數(shù)據(jù)庫的檢索性能下降的問題。
【發(fā)明內(nèi)容】
[0003]針對現(xiàn)有技術(shù)存在的上述技術(shù)問題,提供一種數(shù)據(jù)搜索系統(tǒng)及方法。
[0004]具體技術(shù)方案如下:
[0005]—種數(shù)據(jù)搜索系統(tǒng),其中,包括,
[0006]第一存儲單元,預(yù)先存儲數(shù)據(jù)信息;
[0007]數(shù)據(jù)迀移單元,與所述第一存儲單元連接,用于將保存在所述第一存儲單元中的數(shù)據(jù)迀移至一第二存儲單元中;
[0008]數(shù)據(jù)組織單元,與所述第二存儲單元連接,對所述第二存儲單元中的網(wǎng)站信息和網(wǎng)頁信息進行標引和排序以建立索引數(shù)據(jù)庫;
[0009]檢索單元,與所述數(shù)據(jù)組織單元和所述第二存儲單元連接,根據(jù)客戶端應(yīng)用程序發(fā)起的檢索請求訪問所述第二存儲單元并返回檢索結(jié)果。
[0010]上述的一種數(shù)據(jù)搜索系統(tǒng),所述第一存儲單元為Oracle或者SQL類型的數(shù)據(jù)庫。
[0011]上述的一種數(shù)據(jù)搜索系統(tǒng),所述第二存儲單元采用數(shù)據(jù)表索引的數(shù)據(jù)結(jié)構(gòu)。
[0012]上述的一種數(shù)據(jù)搜索系統(tǒng),所述檢索單元包括,
[0013]請求獲取單元,用于獲取所述檢索請求;
[0014]檢索策略單元,與所述請求獲取單元連接,用于依據(jù)所述檢索請求制定檢索策略;
[0015]檢索執(zhí)行單元,與所述檢索策略單元連接,依據(jù)所述檢索策略自所述第二存儲單元中查找相應(yīng)索引。
[0016]上述的一種數(shù)據(jù)搜索系統(tǒng),所述檢索單元還包括轉(zhuǎn)換單元,位于服務(wù)器端,用于將用戶在客戶端應(yīng)用程序發(fā)起的搜索指令轉(zhuǎn)換為所述檢索單元可接受的指令格式作為所述檢索請求。
[0017]上述的一種數(shù)據(jù)搜索系統(tǒng),所述檢索結(jié)果還通過所述轉(zhuǎn)換單元進行轉(zhuǎn)換后發(fā)送給所述客戶端。
[0018]本發(fā)明還提供一種數(shù)據(jù)搜索方法,用于上述的數(shù)據(jù)搜索系統(tǒng),包括,
[0019]步驟1,將保存在所述第一存儲單元中的數(shù)據(jù)迀移至一第二存儲單元中;
[0020]步驟2,對所述第二存儲單元中的網(wǎng)站信息和網(wǎng)頁信息進行標引和排序,在所述第二存儲單元中建立索引數(shù)據(jù)庫;
[0021]步驟3,根據(jù)客戶端發(fā)起的檢索請求訪問相應(yīng)的索引數(shù)據(jù)庫并生成檢索結(jié)果。
[0022]上述的一種數(shù)據(jù)搜索方法,步驟3具體如下:
[0023]步驟31,獲取所述檢索請求;
[0024]步驟32,依據(jù)所述檢索請求制定檢索策略;
[0025]步驟33,依據(jù)所述檢索策略自所述第二存儲單元中查找相應(yīng)網(wǎng)頁的索引。
[0026]上述的一種數(shù)據(jù)搜索方法,步驟3中還包括將用戶在客戶端應(yīng)用程序發(fā)起的搜索指令轉(zhuǎn)換為所述檢索單元可接受的指令格式作為所述檢索請求。
[0027]上述的一種數(shù)據(jù)搜索方法,所述第二存儲單元采用數(shù)據(jù)表索引的數(shù)據(jù)結(jié)構(gòu)。
[0028]有益效果:本發(fā)明通過將原本保存在第一存儲單元中的數(shù)據(jù)迀移至第二存儲單元中,并在第二存儲單元中建立索引數(shù)據(jù)庫,通過表索引的檢索方式實現(xiàn)數(shù)據(jù)快速檢索,改善現(xiàn)有關(guān)系數(shù)據(jù)庫的數(shù)據(jù)搜索過程緩慢的缺陷;也降低了頻繁查詢對第一存儲單元造成的影響,提高了系統(tǒng)的穩(wěn)定性,并解決了關(guān)系性數(shù)據(jù)庫因為數(shù)據(jù)量大而不能使用全模糊匹配查詢的弊端。
【附圖說明】
[0029]參考所附附圖,以更加充分的描述本發(fā)明的實施例。然而,所附附圖僅用于說明和闡述,并不構(gòu)成對本發(fā)明范圍的限制。
[0030]圖1為本發(fā)明的系統(tǒng)結(jié)構(gòu)示意圖;
[0031]圖2為本發(fā)明的方法流程圖。
【具體實施方式】
[0032]下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動的前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0033]需要說明的是,在不沖突的情況下,本發(fā)明中的實施例及實施例中的特征可以相互組合。
[0034]下面結(jié)合附圖和具體實施例對本發(fā)明作進一步說明,但不作為本發(fā)明的限定。
[0035]參照圖1,一種數(shù)據(jù)搜索系統(tǒng),其中,包括,
[0036]第一存儲單元1,預(yù)先存儲數(shù)據(jù)信息;
[0037]數(shù)據(jù)迀移單元2,與第一存儲單元1連接,用于將保存在第一存儲單元1中的數(shù)據(jù)迀移至一第二存儲單元3中;
[0038]數(shù)據(jù)組織單元4,與第二存儲單元3連接,對第二存儲單元3中的網(wǎng)站信息和網(wǎng)頁信息進行標引和排序以建立索引數(shù)據(jù)庫;
[0039]檢索單元5,與第二存儲單元3和數(shù)據(jù)組織單元4連接,根據(jù)客戶端應(yīng)用程序發(fā)起的檢索請求訪問第二存儲單元3并返回檢索結(jié)果。
[0040]隨著數(shù)據(jù)量飛速增長,大數(shù)據(jù)已成為業(yè)務(wù)系統(tǒng)的瓶頸,現(xiàn)有技術(shù)中從Oracle數(shù)據(jù)庫執(zhí)行檢索時,輕則搜索過程非常緩慢,重則數(shù)據(jù)庫崩潰,業(yè)務(wù)系統(tǒng)癱瘓,影響了系統(tǒng)正常的業(yè)務(wù)處理,也給用戶帶來了很差的用戶體驗。本發(fā)明通過將原本保存在第一存儲單元中的數(shù)據(jù)迀移至第二存儲單元中,于第二存儲單元中建立索引數(shù)據(jù)庫,客戶端需要查找信息時,檢索單元直接在第二存儲單元進行檢索,并把與檢索請求相匹配的信息作為檢索結(jié)果返回給用戶,以改善現(xiàn)有的數(shù)據(jù)搜索過程緩慢的缺陷,也降低了頻繁查詢對第一存儲單元造成的影響,提高了系統(tǒng)的穩(wěn)定性。
[0041]上述的一種數(shù)據(jù)搜索系統(tǒng),第一存儲單元1可以為Oracle或者SQL類型的數(shù)據(jù)庫。
[0042]上述的一種數(shù)據(jù)搜索系統(tǒng),第二存儲單元3可以采用數(shù)據(jù)表索引的數(shù)據(jù)結(jié)構(gòu)。在第二存儲單元建立數(shù)據(jù)索引Index及相應(yīng)的數(shù)據(jù)類型,以便于存儲同步數(shù)據(jù)。
[0043]上述的一種數(shù)據(jù)搜索系統(tǒng),檢索單元5位于一服務(wù)器端,可以包括,
[0044]請求獲取單元51,用于獲取檢索請求;
[0045]檢索策略單元52,與請求獲取單元51連接,用于依據(jù)檢索目標制定檢索策略;
[0046]檢索執(zhí)行單元53,與檢索策略單元52連接,依據(jù)檢索策略自第二存儲單元3中查找相應(yīng)索引。
[0047]該檢索單元可以采用Elastic search,一種基于Lucene的搜索服務(wù)器。ElasticSearch是一個基于Lucene的搜索服務(wù)器。它提供了一個分布式多用戶能力的全文搜索引擎,Lucene是一個開發(fā)源代碼的全文檢索引擎工具包,是一個全文檢索引擎的架構(gòu),提供了完整的查詢引擎和索引引擎。