2016-11-15 29 views
0

一個Solr的文檔,讓我們說,有包括idscore架構。對於每個id,我正根據事件觸發器更新分數。不過,我希望得分能夠變成0或者在一週左右後逐漸減少。基本上我需要設置一個大約一週的TTL到score字段。或者我需要score的值以某種方式與時間有關。如何TTL設置爲一個特定的領域,同時更新它在Solr的文件

我沒有將TTL設置爲文檔,因爲我想在一週後保留id而不是score。這怎麼能實現?

我瀏覽了很多互聯網,找不到解決辦法。這就是爲什麼轉向這裏的堆棧溢出專家。

請幫忙!!

回答

1

的TTL是有用到達後的TTL,不修改一個字段來自動刪除該文檔。

你想要做什麼是由時間字段提振文檔,解釋here。訣竅是recip函數。你可以進一步修改的表達,使升壓0時,它的一個多星期等

http://localhost:8983/solr/select?q={!boost b=recip(ms(NOW,manufacturedate_dt),3.16e-11,1,1)}ipod 
年長