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

基于內(nèi)存全文檢索解決數(shù)據(jù)庫復雜文本查詢的方法及系統(tǒng)與流程

文檔序號:12470226閱讀:1058來源:國知局
基于內(nèi)存全文檢索解決數(shù)據(jù)庫復雜文本查詢的方法及系統(tǒng)與流程

本發(fā)明涉及數(shù)據(jù)庫領域,尤其涉及一種基于內(nèi)存全文檢索解決數(shù)據(jù)庫復雜文本查詢的方法及系統(tǒng)。



背景技術:

隨著信息化社會不斷的向前發(fā)展,各行各業(yè)業(yè)務的種類越來越多,使用的人群也越復雜,信息化的復雜化直接導致關系型數(shù)據(jù)庫實例中的字段增加,字段內(nèi)容也越復雜,當數(shù)據(jù)庫實例中的記錄數(shù)量和復雜字段個數(shù)達到一定程度時,使用like查詢會消耗大量時間,影響業(yè)務的通暢運作,現(xiàn)有技術中應用Lucene對數(shù)據(jù)庫查詢,是通過Lucene將索引保存至磁盤,在數(shù)據(jù)庫實例過大的情況下,創(chuàng)建索引速度不夠快,致使需要在業(yè)務空閑時間去進行Lucene索引的創(chuàng)新或更新,會導致應用的不便,查詢效率低下。



技術實現(xiàn)要素:

本發(fā)明要解決的技術問題之一,在于提供一種基于內(nèi)存全文檢索解決數(shù)據(jù)庫復雜文本查詢的方法,提高數(shù)據(jù)庫查詢效率,提高擴展性。

本發(fā)明要解決的技術問題之一是這樣實現(xiàn)的:一種基于內(nèi)存全文檢索解決數(shù)據(jù)庫復雜文本查詢的方法,需提供復數(shù)個服務器,每一服務器提供一內(nèi)存,形成集群內(nèi)存,所述方法包括如下步驟:

步驟1、在每一內(nèi)存中創(chuàng)建一內(nèi)存數(shù)據(jù)庫,將關系型數(shù)據(jù)庫實例中所有字段作為鍵值均等地加載到各個內(nèi)存的內(nèi)存數(shù)據(jù)庫中;

步驟2、在每一內(nèi)存中為內(nèi)存數(shù)據(jù)庫建立對應的索引庫;

步驟3、以廣播形式經(jīng)由檢索器對內(nèi)存中各個索引庫進行文本查詢,返回結果給應用系統(tǒng)。

進一步的,所述步驟2具體為:通過索引器解析配置文件,獲取內(nèi)存數(shù)據(jù)庫連接,根據(jù)每一內(nèi)存數(shù)據(jù)庫中存儲的內(nèi)容分別建立索引,并保存到每一內(nèi)存數(shù)據(jù)庫對應建立的一索引庫中。

進一步的,所述步驟3具體為:以廣播形式經(jīng)由Lucene索引器對各個內(nèi)存節(jié)點中的索引庫進行文本查詢,得到對應記錄的主鍵,并通過所述主鍵找到相應內(nèi)存數(shù)據(jù)庫中獲取相關記錄,最終按匹配級別由高到低將所有節(jié)點的查詢結果返回到應用系統(tǒng)。

進一步的,所述方法還包括步驟4、將每一次業(yè)務的變更實時更新到關系型數(shù)據(jù)庫中,并更新到內(nèi)存數(shù)據(jù)庫以及索引庫中。

本發(fā)明要解決的技術問題之二,在于提供一種基于內(nèi)存全文檢索解決數(shù)據(jù)庫復雜文本查詢的系統(tǒng),提高數(shù)據(jù)庫查詢效率,提高擴展性。

本發(fā)明要解決的技術問題之二是這樣實現(xiàn)的:一種基于內(nèi)存全文檢索解決數(shù)據(jù)庫復雜文本查詢的系統(tǒng),需提供復數(shù)個服務器,每一服務器提供一內(nèi)存,形成集群內(nèi)存,所述系統(tǒng)包括一內(nèi)存數(shù)據(jù)庫創(chuàng)建模塊、一索引庫創(chuàng)建模塊和一查詢模塊:

所述內(nèi)存數(shù)據(jù)庫創(chuàng)建模塊,用于在每一內(nèi)存中創(chuàng)建一內(nèi)存數(shù)據(jù)庫,將關系型數(shù)據(jù)庫實例中所有字段作為鍵值均等地加載到各個內(nèi)存的內(nèi)存數(shù)據(jù)庫中;

所述索引庫創(chuàng)建模塊,用于在每一內(nèi)存中為內(nèi)存數(shù)據(jù)庫建立對應的索引庫;

所述查詢模塊,用于以廣播形式經(jīng)由檢索器對內(nèi)存中各個索引庫進行文本查詢,返回結果給應用系統(tǒng)。

進一步的,所述索引庫創(chuàng)建模塊具體為:用于通過索引器解析配置文件,獲取內(nèi)存數(shù)據(jù)庫連接,根據(jù)每一內(nèi)存數(shù)據(jù)庫中存儲的內(nèi)容分別建立索引,并保存到每一內(nèi)存數(shù)據(jù)庫對應建立的一索引庫中。

進一步的,所述查詢模塊具體為:用于以廣播形式經(jīng)由Lucene索引器對各個內(nèi)存節(jié)點中的索引庫進行文本查詢,得到對應記錄的主鍵,并通過所述主鍵找到相應內(nèi)存數(shù)據(jù)庫中獲取相關記錄,最終按匹配級別由高到低將所有節(jié)點的查詢結果返回到應用系統(tǒng)。

進一步的,所述系統(tǒng)還包括更新模塊,用于將每一次業(yè)務的變更實時更新到關系型數(shù)據(jù)庫中,并更新到內(nèi)存數(shù)據(jù)庫以及索引庫中。

本發(fā)明具有如下優(yōu)點:

1、因使用索引器在內(nèi)存中創(chuàng)建與更新索引,大大縮短對多字段數(shù)據(jù)庫實例的復雜文本查詢的響應時間,降低索引創(chuàng)建時間;

2、將關系型數(shù)據(jù)庫實例緩存到內(nèi)存數(shù)據(jù)庫內(nèi),并以內(nèi)存Lucene索引的方式,支持全文檢索,避免使用關系型數(shù)據(jù)庫like查詢,提高查詢效率;

3、通過分布式內(nèi)存數(shù)據(jù)庫的建立,可根據(jù)關系型數(shù)據(jù)庫實例大小的變化,調(diào)整分布式內(nèi)存數(shù)據(jù)庫節(jié)點數(shù)量,提高擴展性。

附圖說明

下面參照附圖結合實施例對本發(fā)明作進一步的說明。

圖1為本發(fā)明一種基于內(nèi)存全文檢索解決數(shù)據(jù)庫復雜文本查詢的方法執(zhí)行流程圖。

圖2為本發(fā)明一種基于內(nèi)存全文檢索解決數(shù)據(jù)庫復雜文本查詢原理示意圖。

圖3為本發(fā)明一種基于內(nèi)存全文檢索解決數(shù)據(jù)庫復雜文本查詢的系統(tǒng)框圖。

具體實施方式

如圖1和圖2所示,一種基于內(nèi)存全文檢索解決數(shù)據(jù)庫復雜文本查詢的方法,需提供復數(shù)個服務器,每一服務器提供一內(nèi)存,形成集群內(nèi)存,所述方法包括如下步驟:

步驟1、在每一內(nèi)存中創(chuàng)建一內(nèi)存數(shù)據(jù)庫,將關系型數(shù)據(jù)庫實例中所有字段作為鍵值均等地加載到各個內(nèi)存的內(nèi)存數(shù)據(jù)庫中;

步驟2、在每一內(nèi)存中為內(nèi)存數(shù)據(jù)庫建立對應的索引庫;所述步驟2具體為:通過索引器(可用Lucene索引器或其他第三方索引工具)解析配置文件,獲取內(nèi)存數(shù)據(jù)庫連接,根據(jù)每一內(nèi)存數(shù)據(jù)庫中存儲的內(nèi)容分別建立索引,通過讀取需要抽取索引的源數(shù)據(jù)庫信息,進行數(shù)據(jù)抽取與轉換建立索引,并保存到每一內(nèi)存數(shù)據(jù)庫對應建立的一索引庫中;

步驟3、以廣播形式經(jīng)由檢索器對內(nèi)存中各個索引庫進行文本查詢,返回結果給應用系統(tǒng);所述步驟3具體為:以廣播形式經(jīng)由Lucene索引器(或其他第三方索引工具)對各個內(nèi)存節(jié)點中的索引庫進行文本查詢,得到對應記錄的主鍵ID,并通過所述主鍵ID找到相應內(nèi)存數(shù)據(jù)庫中獲取相關記錄,最終按匹配級別由高到低將所有節(jié)點的查詢結果返回到應用系統(tǒng)。

所述方法還包括步驟4、將每一次業(yè)務的變更實時更新到關系型數(shù)據(jù)庫中,并更新到內(nèi)存數(shù)據(jù)庫以及索引庫中。

如圖2和圖3所示,一種基于內(nèi)存全文檢索解決數(shù)據(jù)庫復雜文本查詢的系統(tǒng),需提供復數(shù)個服務器,每一服務器提供一內(nèi)存,形成集群內(nèi)存,所述系統(tǒng)包括一內(nèi)存數(shù)據(jù)庫創(chuàng)建模塊、一索引庫創(chuàng)建模塊和一查詢模塊:

所述內(nèi)存數(shù)據(jù)庫創(chuàng)建模塊,用于在每一內(nèi)存中創(chuàng)建一內(nèi)存數(shù)據(jù)庫,將關系型數(shù)據(jù)庫實例中所有字段作為鍵值均等地加載到各個內(nèi)存的內(nèi)存數(shù)據(jù)庫中;

所述索引庫創(chuàng)建模塊,用于在每一內(nèi)存中為內(nèi)存數(shù)據(jù)庫建立對應的索引庫;所述索引庫創(chuàng)建模塊具體為:用于通過索引器(可用Lucene索引器或其他第三方索引工具)解析配置文件,獲取內(nèi)存數(shù)據(jù)庫連接,根據(jù)每一內(nèi)存數(shù)據(jù)庫中存儲的內(nèi)容分別建立索引,通過讀取需要抽取索引的源數(shù)據(jù)庫信息,進行數(shù)據(jù)抽取與轉換建立索引,并保存到每一內(nèi)存數(shù)據(jù)庫對應建立的一索引庫中;

所述查詢模塊,用于以廣播形式經(jīng)由檢索器對內(nèi)存中各個索引庫進行文本查詢,返回結果給應用系統(tǒng);所述查詢模塊具體為:用于以廣播形式經(jīng)由Lucene索引器(或其他第三方索引工具)對各個內(nèi)存節(jié)點中的索引庫進行文本查詢,得到對應記錄的主鍵ID,并通過所述主鍵ID找到相應內(nèi)存數(shù)據(jù)庫中獲取相關記錄,最終按匹配級別由高到低將所有節(jié)點的查詢結果返回到應用系統(tǒng)。

所述系統(tǒng)還包括更新模塊,用于將每一次業(yè)務的變更實時更新到關系型數(shù)據(jù)庫中,并更新到內(nèi)存數(shù)據(jù)庫以及索引庫中。

本發(fā)明通過創(chuàng)建集群內(nèi)存以及集群索引,將關系型數(shù)據(jù)庫分布到各個內(nèi)存中,并以內(nèi)存Lucene索引的方式,支持全文檢索,避免使用關系型數(shù)據(jù)庫like查詢,縮短了對多字段數(shù)據(jù)庫實例的復雜文本查詢的響應時間,提高查詢效率;且通過分布式內(nèi)存數(shù)據(jù)庫的建立,可根據(jù)關系型數(shù)據(jù)庫實例大小的變化,調(diào)整(添加或刪減)分布式內(nèi)存數(shù)據(jù)庫節(jié)點數(shù)量,提高擴展性、靈活性。

雖然以上描述了本發(fā)明的具體實施方式,但是熟悉本技術領域的技術人員應當理解,我們所描述的具體的實施例只是說明性的,而不是用于對本發(fā)明的范圍的限定,熟悉本領域的技術人員在依照本發(fā)明的精神所作的等效的修飾以及變化,都應當涵蓋在本發(fā)明的權利要求所保護的范圍內(nèi)。

當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
安义县| 定西市| 阜新| 赣州市| 马山县| 民勤县| 白山市| 肇东市| 唐山市| 石狮市| 黄浦区| 平昌县| 崇礼县| 衡东县| 崇义县| 蚌埠市| 中方县| 瑞金市| 武义县| 河津市| 柘荣县| 宁武县| 阳信县| 武邑县| 佛冈县| 门头沟区| 灵武市| 密云县| 岢岚县| 岳普湖县| 响水县| 德保县| 鞍山市| 蛟河市| 沽源县| 安仁县| 兴和县| 石屏县| 高陵县| 靖西县| 定州市|