簡體   English   中英

Solr / Lucene:索引方面值

[英]Solr/Lucene: Indexing facet values

例如,假設我有以下方面:

顏色

  • 紅色(7825)
  • 橙色(2343)
  • 綠色(843)
  • 藍色(5412)

在我的數據庫中,顏色將是一個表,每種顏色都有一個主鍵和一個名稱/值。

使用Solr / Lucene進行索引時,在我看到的所有示例中,值都是索引而不是主鍵。 因此,如果我按紅色過濾,我會得到如下內容:

http://www.example.com/search?color=Red

我想知道,在顯示構面值時,改為索引主鍵並從數據庫中檢索值是明智的嗎? 所以我會改為這樣:

http://www.example.com/search?color=1

“1”表示紅色的主鍵。 我想知道我是否應該采用這種方法,因為我的許多方面的值經常改變,但主鍵保持不變。 此外,索引需要與數據庫同步。

對此有任何經驗嗎? 您如何看待這會影響性能?

提前致謝!

如果您希望實體經常更改,則可以更容易地對ID進行索引,當您獲得facet結果時,請在數據庫中進行查找以獲取顏色的名稱。 這樣改變顏色就不需要在索引中更新受影響的文檔。

在我們的系統中,我們索引ID的Lucene而不是實體的名稱,完全是因為您說明的原因。 此外,我們的實體有一堆與它們相關聯的屬性,這些屬性沒有編入索引,因此無論如何我們都必須點擊數據庫來獲取它們。

就性能而言,ID的刻面將不會明顯更慢或更快。 就數據庫查找而言,它應該不是什么大問題,特別是如果你一次只能減少數十個方面。 如果問題成為問題,您始終可以使用緩存來加快速度。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM