我有一些重複字段的數據。我不希望重複出現在搜索結果的頂部,但我不想完全消除它們。我只想獲得更好的品種,所以第二,第三,第n次出現相同的字段值將被降級。 ElasticSearch可能嗎?ElasticSearch中的處罰 - 但不是消除重複 -
例如:
curl -XPOST 'http://localhost:9200/employeeid/info/1' -d '{
"name": "John",
"organisation": "Apple",
"importance": 1000
}'
curl -XPOST 'http://localhost:9200/employeeid/info/2' -d '{
"name":"John",
"organisation":"Apple",
"importance": 2000
}'
curl -XPOST 'http://localhost:9200/employeeid/info/3' -d '{
"name": "Sam",
"organisation": "Apple",
"importance": 0
}'
(基於this)
如果我們假設搜索由重要性提升,對於 「蘋果」 的搜索自然結果將是John
,John
,Sam
。我正在尋找的是一種方法,使結果John
,Sam
,John
,即懲罰第二John
因爲另一個John
已經出現。
的值相信可能解決方案是使用腳本和得分:https://www.elastic.co/ guide/en/elasticsearch/reference/current/modules-scripting-painless.html,https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-advan ced-scripting.html。 –