本發(fā)明屬于數據存儲與檢索領域,特別涉及一種基于全文檢索的數據分類與數據檢索的方法及裝置。
背景技術:
目前,企業(yè)在其各個業(yè)務模塊中產生的數據分為兩種,一種是結構化數據,即關系型數據庫,如oracle、sql server等,一種是非結構化數據,如txt、word、excel等。由于數據存在差異化,無法統(tǒng)一結構,同時因為企業(yè)的各個業(yè)務模塊的松耦合不清晰,造成數據難統(tǒng)一管理,不能進行數據分類以及無法全文檢索。這里所述的數據分類是根據企業(yè)自定的業(yè)務模塊,將采集好的數據關聯到定義好的業(yè)務模塊中。所述的全文檢索是可以將采集到的數據進行檢索,并通過權限過濾數據后,再呈現給用戶。
申請?zhí)枮?01510104637的中國發(fā)明專利公開了一種基于數字報紙的資訊數據分類方法,該專利僅僅是基于數字報紙的結構化數據進行數據分類,如何根據企業(yè)業(yè)務模塊的結構與非結構化數據進行數據分類并沒有做相關的研究。
申請?zhí)枮?01010550776的中國發(fā)明專利公開了一種基于系統(tǒng)耦合的福富企業(yè)搜索引擎技術,該方案具體公開了一種數據采集方法,但是該方案僅僅是基于非結構化數據(如word、excel、ppt、pdf等)的數據采集,只會采集非結構化數據的文件名,不采集非結構化數據的具體內容。
為此,提供一種能實現企業(yè)數據的信息采集、數據分類與全文檢索的方法具有重要的研究意義和實用價值。
技術實現要素:
本發(fā)明的一個目的在于克服現有技術的缺點與不足,提供一種基于全文檢索的數據分類與數據檢索的方法,解決了以往企業(yè)在其各個業(yè)務模塊中,產生的結構與非結構化數據不能統(tǒng)一采集、分類與檢索的問題。
本發(fā)明的另一個目的在于提供一種全文檢索的數據分類與數據檢索的裝置,該裝置可以實現企業(yè)數據的信息采集、數據分類與全文檢索。
本發(fā)明的目的通過以下的技術方案實現:一種基于全文檢索的數據分類與數據檢索的方法,包括以下步驟:定義各個業(yè)務模塊,將業(yè)務模塊產生的數據與該業(yè)務模塊進行關聯,對上述數據進行分類,對分類后的數據添加索引,然后存儲;在用戶檢索數據時,根據索引查找到相應數據,根據數據與業(yè)務模塊的關聯信息,找到數據對應的業(yè)務模塊,進而找到對應業(yè)務模塊處理類的處理方法,對數據進行處理,得到檢索結果。
具體的,所述方法包括以下步驟:
(1)數據采集、分類過程:
(1-1)根據需要定義不同的業(yè)務模塊,建立業(yè)務模塊庫,規(guī)劃各個業(yè)務模塊的數據處理機制,所述數據處理機制為業(yè)務模塊處理類的處理方法;
(1-2)對數據進行采集,并將數據與業(yè)務模塊庫中的業(yè)務模塊進行關聯;
(1-3)對數據進行結構化和非結構化分類;
(1-4)對分類之后的數據添加數據索引,將數據索引保存到數據索引庫中,然后借由數據庫持久化操作,將數據保存到對應的數據庫中;
(2)數據檢索過程:
(2-1)系統(tǒng)根據用戶輸入的檢索關鍵字,對儲存的數據進行搜索,找到對應數據的索引;通過索引找到相應的數據并提取出來;
(2-2)根據數據與業(yè)務模塊的關聯信息,找到數據對應的業(yè)務模塊,根據該業(yè)務模塊的數據處理機制,完成對數據的處理,得到檢索結果。
更進一步的,所述方法還包括步驟:
(2-3)在步驟(2-2)得到檢索結果后,再根據用戶的權限對上述檢索結果進行過濾,最終將過濾后的檢索結果發(fā)送給用戶。
優(yōu)選的,所述步驟(1-2)中將數據與業(yè)務模塊庫中的業(yè)務模塊進行關聯的方式為:對各個業(yè)務模塊賦予一個標記,該業(yè)務模塊采集的數據自動添加該標記。
更進一步的,將業(yè)務模塊的編碼作為標記,將該標記作為后綴與結構化、非結構化數據進行關聯,然后存入非結構化數據庫中。
優(yōu)選的,所述步驟(1-4)中對分類之后的數據添加數據索引的具體步驟為:對需要檢索的線索字段進行關鍵字提取和分詞處理,并對這些關鍵字進行優(yōu)先級篩選及敏感信息過濾,然后提取出索引,將索引添加到分類之后的數據。
優(yōu)選的,所述步驟(2-2)中,找到數據對應的業(yè)務模塊后,采用面相對象開發(fā)語言的反射機制,找到該業(yè)務模塊對應的數據處理機制。
一種基于全文檢索的數據分類與數據檢索的裝置,包括:
預定義模塊,用于根據需要定義不同的業(yè)務模塊,建立業(yè)務模塊庫,規(guī)劃各個業(yè)務模塊的數據處理機制,所述數據處理機制為業(yè)務模塊處理類的處理方法;
信息采集模塊,用于對數據進行采集,并將數據與業(yè)務模塊庫中的業(yè)務模塊進行關聯;
數據分類模塊,用于對數據進行結構化和非結構化分類;
數據持久化模塊,用于對分類之后的數據添加數據索引,將數據索引保存到數據索引庫中,然后借由數據庫持久化操作,將數據保存到對應的數據庫中;同時,還用于在用戶輸入檢索關鍵字時,對儲存的數據進行搜索,找到對應數據的索引,通過索引找到相應的數據并提取出來;
數據分類處理模塊,用于根據數據與業(yè)務模塊的關聯信息,找到數據對應的業(yè)務模塊,根據該業(yè)務模塊的數據處理機制,完成對數據的處理,得到檢索結果。
更進一步的,所述裝置還包括:
數據權限模塊,用于在數據分類處理模塊得到檢索結果后,再根據用戶的權限對上述檢索結果進行過濾,最終將過濾后的檢索結果發(fā)送給用戶。
優(yōu)選的,所述信息采集模塊中,將業(yè)務模塊的編碼作為后綴與結構化、非結構化數據進行關聯,然后存入非結構化數據庫中。
優(yōu)選的,所述數據持久化模塊包括索引尋找模塊,所述索引尋找模塊用于對需要檢索的線索字段進行關鍵字提取和分詞處理,并對這些關鍵字進行優(yōu)先級篩選及敏感信息過濾,然后提取出索引。
本發(fā)明與現有技術相比,具有如下優(yōu)點和有益效果:
1、本發(fā)明根據企業(yè)自定的業(yè)務模塊,將采集好的數據關聯到定義好的業(yè)務模塊中,使結構與非結構化數據能夠統(tǒng)一采集、分類與檢索,并且企業(yè)數據統(tǒng)一存儲,數據分類清晰。
2、本發(fā)明可以采集非結構化數據的內容,進行全文檢索。
3、本發(fā)明通過數據權限模塊,根據用戶的權限對檢索結果進行過濾,保證了企業(yè)信息的安全性。
附圖說明
圖1是本實施例的數據采集、分類與持久化的過程示意圖;
圖2是本實施例數據檢索及權限處理的過程示意圖。
具體實施方式
下面結合實施例及附圖對本發(fā)明作進一步詳細的描述,但本發(fā)明的實施方式不限于此。
本實施例一種基于全文檢索的數據分類與數據檢索的方法,包括步驟:定義各個業(yè)務模塊,將業(yè)務模塊產生的數據與該業(yè)務模塊進行關聯,對上述數據進行分類,對分類后的數據添加索引,然后存儲;在用戶檢索數據時,根據索引查找到相應數據,根據數據與業(yè)務模塊的關聯信息,找到數據對應的業(yè)務模塊,進而找到對應業(yè)務模塊處理類的處理方法,對數據進行處理,得到檢索結果。
下面結合圖1、2,對上述方法進行具體說明。
參見圖1,數據采集、分類過程包括下面步驟:
1、根據需要定義不同的業(yè)務模塊,建立業(yè)務模塊庫,規(guī)劃各個業(yè)務模塊的數據處理機制。只有在清晰的劃分業(yè)務模塊后,才能對各個業(yè)務模塊的數據處理機制有規(guī)劃,且需要對每個業(yè)務模塊可能產生的結構化數據與非結構化數據有一定的預期。
2、用戶新建數據,由信息采集模塊對數據進行采集,并將數據與業(yè)務模塊庫中的業(yè)務模塊進行關聯。
3、數據分類模塊根據數據分類庫對數據進行結構化和非結構化分類。
4、對分類之后的數據添加數據索引,將索引保存到數據索引庫中,然后借由數據庫持久化操作,將數據保存到對應的數據庫中。
參見圖2,數據檢索過程包括下面步驟:
5、系統(tǒng)根據用戶輸入的檢索關鍵字,對持久化模塊中儲存的數據進行部分模糊搜索,找到對應數據的索引。
6、通過索引找到相應的數據并提取出來。
7、根據數據與業(yè)務模塊的關聯信息,找到數據對應的業(yè)務模塊,找到此業(yè)務模塊對應的數據處理方法,完成對數據的處理,得到初步檢索結果。
8、通過數據權限模塊,根據用戶的權限對初步檢索結果進行過濾,并最終呈現給用戶。
本實施例中,將業(yè)務模塊的編碼作為后綴與結構化、非結構化數據進行關聯,然后存入非結構化數據庫中。
優(yōu)選的,步驟4中對分類之后的數據添加數據索引具體步驟為:持久化模塊對需要檢索的線索字段進行關鍵字提取和分詞處理,并對這些關鍵字進行優(yōu)先級篩選及敏感信息過濾,然后提取出索引。
本實施例一種基于全文檢索的數據分類與數據檢索的裝置,包括:
預定義模塊,用于根據需要定義不同的業(yè)務模塊,建立業(yè)務模塊庫,規(guī)劃各個業(yè)務模塊的數據處理機制,所述數據處理機制為業(yè)務模塊處理類的處理方法;
信息采集模塊,用于對數據進行采集,并將數據與業(yè)務模塊庫中的業(yè)務模塊進行關聯;
數據分類模塊,用于對數據進行結構化和非結構化分類;
數據持久化模塊,用于對分類之后的數據添加數據索引,將數據索引保存到數據索引庫中,然后借由數據庫持久化操作,將數據保存到對應的數據庫中;同時,還用于在用戶輸入檢索關鍵字時,對儲存的數據進行搜索,找到對應數據的索引,通過索引找到相應的數據并提取出來;
數據分類處理模塊,用于根據數據與業(yè)務模塊的關聯信息,找到數據對應的業(yè)務模塊,根據該業(yè)務模塊的數據處理機制,完成對數據的處理,得到檢索結果;
數據權限模塊,用于在數據分類處理模塊得到檢索結果后,再根據用戶的權限對上述檢索結果進行過濾,最終將過濾后的檢索結果發(fā)送給用戶。
下面以線索數據為例,來具體說明本實施例數據分類與數據檢索的方法:
在圖1中,用戶新建一條線索數據,線索數據包含:線索主題、線索編號、線索類型、線索狀態(tài)、線索內容、線索經辦人、線索時間、線索附屬信息、線索涉及信息等信息。
系統(tǒng)根據數據關聯的業(yè)務模塊,與這條線索數據進行關聯,在采集過程中,將數據標記為線索業(yè)務模塊的數據,在需要檢索的字段的后綴加上”_Clue”,然后存入mongoDB等非結構化數據庫中,也就是圖1中數據持久化模塊的實際數據庫。
之后將數據進行分類,線索業(yè)務模塊的數據根據業(yè)務分類庫,將數據存儲到對應的持久化層中。期間,持久化模塊會智能的對需要檢索的線索字段進行關鍵字提取和分詞處理,并對這些關鍵字進行優(yōu)先級篩選及敏感信息過濾,再保存提取出來的索引,之后借由數據庫持久化操作,將數據保存到對應的數據庫中。
在圖2中,用戶輸出想要檢索的關鍵字,系統(tǒng)根據關鍵字,利用企業(yè)級搜索引擎如solr等,通過智能比對算法對數據進行部分模糊搜索,找到對應數據的索引,再通過索引找到相應的數據。數據提取出來后,根據數據關聯的業(yè)務模塊編號,找到此業(yè)務模塊對應的處理類,通過C#等面相對象語言的反射機制,找到對應業(yè)務模塊處理類的處理方法,實例化處理類并執(zhí)行數據處理方法,以此實現對數據的處理。最后通過數據權限模塊,根據當前用戶的權限,處理好的數據進行過濾,并最終呈現給用戶,從而實現本發(fā)明的目的。
上述實施例為本發(fā)明較佳的實施方式,但本發(fā)明的實施方式并不受上述實施例的限制,其他的任何未背離本發(fā)明的精神實質與原理下所作的改變、修飾、替代、組合、簡化,均應為等效的置換方式,都包含在本發(fā)明的保護范圍之內。