2009-06-16 62 views
1

我正在考慮使用Apache solr爲新項目中的數據建立索引。的數據是由不同的,獨立的類型,這意味着有例如使用solr索引不同類型的數據

  • 植物藥
  • 動物
  • 汽車
  • 計算機

索引。我應該爲每種類型使用不同的索引,還是僅使用一個索引更有意義?如何使用許多索引影響性能? 或者有沒有其他可能性來實現這一目標?

謝謝。

回答

7

兩者都是合法的方法,但是存在折衷。首先,你的數據集有多大?如果它足夠大,您可能想要跨多臺服務器進行分區,則可能有不同的索引。

其次,性能 - 將它們索引到一起可能會導致性能下降,但程度取決於數據的數量以及查詢的複雜程度。

三,您是否需要在同一個搜索中查詢多種數據類型?如果是這樣,將所有內容編入索引可以是一種方便的方法。從技術上講,這可以通過單獨的索引來實現,但爲查詢獲得最相關的結果可能是一個挑戰(並非已經不是這樣)

第四,具有單個模式和配置的單個索引可以簡化生活誰將會部署和維護系統。

要考慮的另一件事是ID - 所有不同的對象都有一個跨所有類型的唯一標識符嗎?如果不是,你可能需要生成這個,如果你想索引它們在一起。

+0

感謝您的回答。我想,我真的必須堅持使用多個索引,因爲在我的情況下,在一個索引中生成唯一標識符會很麻煩。我利用solr索引分佈和碎片來玩弄,但它們顯然是爲了加速對大數據集的查詢而製作的。我認爲五個甚至更多的內核並不是它應該使用的方式。所以我目前的想法只是在沒有solr的情況下使用Lucene。 – 2009-06-16 15:05:54