我必須對應該一起搜索的不同類型的數據(文本文檔,論壇消息,用戶簡介數據等)進行索引(即,單次搜索將返回不同類型數據的結果)。Lucene中的多個或單個索引?
有多個索引,每種數據類型有哪些優缺點?
對於各種數據有單一索引的優點和缺點?
謝謝。
我必須對應該一起搜索的不同類型的數據(文本文檔,論壇消息,用戶簡介數據等)進行索引(即,單次搜索將返回不同類型數據的結果)。Lucene中的多個或單個索引?
有多個索引,每種數據類型有哪些優缺點?
對於各種數據有單一索引的優點和缺點?
謝謝。
不一定回答您的直接問題,但...;)
我會用一個指標去,添加關鍵字(索引,存儲)字段的類型,如果需要,它會告訴你過濾,並告訴你收到的結果之間的差異。
(也許在你的問題使用單獨的索引將允許每個語料庫有它自己的relevency得分,不知道是不是在一個語料庫過度重複條款將甩開別人文檔相關靜脈...? )
您應該從邏輯上思考每個數據集包含的內容,並根據主題或其他標準(如地理位置,業務單位等)設計索引。作爲一般規則,您的索引體系結構與數據庫相似(您可能不會將會計與人事數據庫結合起來,即使技術上可行)。
正如@llama指出的那樣,創建單一的超級索引會影響相關性分數,安全/訪問問題等等,並導致一系列新的令人頭痛的問題。
總結:根據您的業務需要考慮邏輯分區結構。沒有進一步的背景將很難解釋。
如果要用一次搜索搜索所有類型的文檔,最好將所有 類型保留爲一個索引。在索引中,您可以定義更多需要Tokenize或Vectore的字段類型。 需要一段時間才能向每個IndexSearcher介紹一個包含indeces的目錄。
如果要單獨搜索條件,最好將每種類型索引到一個索引。單指數比多指數更具結構性。
另一方面,我們可以平衡我們的負載與多個indeces。