2014-07-20 42 views
0

比方說,我們有一個這樣每個條目,去SOLR的結構。該文件是第一次修改並保存。目前修正的方式是我們失去了號碼和分數之間的聯繫。但是,如有必要,我們可以將其改爲其他東西。Solr的增加基於地圖的單詞的搜索結果的相關性:值

"keywords" : [ 
      { 
        "score" : 1, 
        "content" : "great finisher" 
      }, 
      { 
        "score" : 1, 
        "content" : "project" 
      }, 
      { 
        "score" : 1, 
        "content" : "staying" 
      }, 
      { 
        "score" : 1, 
        "content" : "staying motivated" 
      } 
    ] 

我們要的是給升壓到Solr的查詢結果使用「分數」值的情況下,查詢中包含該分數相關的詞/詞組的文檔。

因此,每個文檔都有一個不同的關鍵字「地圖」和分數。和關聯會根據這個地圖,出現在查詢的話,通常它的Solr現在怎麼做計算,但有一個提升。

從我所看到的,我們可以根據一些標準給予提升到結果,但這個標準是非常有活力 - 上下文相關的。不知道如何實施或從哪裏開始。

回答

0

目前有沒有內置的支持Solr中做這樣的事。最理想的方式是在一個多值字段每個學期分別大幅提升,但是這是目前不可能(進步(儘管都沒有)在SOLR-2499跟蹤)。

但是也有解決此工作方式;在上面的問題跟蹤器中建議兩個。我不能說使用有效載荷和自定義BoostingTermQuery,但使用動態字段是一種可能性。缺點是管理你的緩存大小,如果你有許多不同的字段名稱和大多數查詢/排序。如果你有一個索引較小,但條款較少的條目,它將起作用,但更大的(更高的五位和六位數字)包含許多動態字段會快速消耗你的內存(因爲每種排序/查詢都會有一個查找緩存一個int /長數組大小相同的文檔計數。

另一個建議是看using function queries together with a boost。如果參照該領域,而不是在這裏,你可能會避免緩存問題。試試吧!