2011-09-28 34 views
3

當用戶搜索並單擊結果時,我們將此搜索關鍵字存儲在數據庫中。 我們得到的是每個項目的關鍵字列表以及關鍵字點擊項目的次數。Solr模式和通過關鍵字/標籤增強項目

索爾架構我有多值字段「關鍵字」。如何爲每個項目上的每個關鍵字添加點擊次數,然後將其添加到最新點擊項目的最上方/附近?

我用dismax和暫時的「蘋果」的查詢看起來像成才這樣:

q=apple 
qf=title^0.4 keywords:"apple"^0.5 
bf=hits^0.4 rating^0.3 

所以你可以看到我通過提高「關鍵詞」,但問題是,我不知道哪個項目被最多點擊爲「蘋果」。

我試着在初始索引導入時向每個關鍵字添加boost參數。它沒有幫助,我沒有想法。

回答

0

你是如何維護點擊數據的?
也可以將累積點擊數據作爲單個字段與文檔保持一致。
使用dismax增強功能可以輕鬆地使用此字段來增強整個文檔。
可以使用一大組數學函數@http://wiki.apache.org/solr/FunctionQuery#What_is_a_Function.3F

+0

項目點擊數據每天更新一次。 累積點擊的數據不會改善我的結果,因爲我需要爲該項目的每個關鍵字點擊數據,才能夠獲得一些體面的結果。 – spinx

+0

所以當每個項目點擊數據更新時,你能總結爲文件的累積點擊次數(每個關鍵詞的單獨點擊總和)並使用它? – Jayendra

+0

我已經擁有每個關鍵字的點擊次數。點擊次數是針對特定關鍵字的商品的點擊次數。我不知道該怎麼做:將這些數據存儲到solr索引,並通過點擊計數增加。 我已經找到了我需要的東西,但它是按年訂購的企業:S [點擊得分相關性框架](http://lucidworks.lucidimagination.com/display/LWEUG/Click+Scoring+Relevance+Framework) – spinx