2014-01-15 66 views
4

我需要重寫由Elasticsearch用於索引和搜索的Lucene默認相似性類。在搜索網絡時,我發現了一些類似的實現,它們正在做類似的事情。我的困難是,我不知道如何在我的代碼中實際執行此操作。我發現了一些資源:如何實現elasticsearch自定義相似性插件?

https://github.com/tlrx/elasticsearch-custom-similarity-provider

curl -XPOST 'http://host:port/tweeter/' -d ' 
{ 
    "settings": { 
    "similarity": { 
     "index": { 
     "type": "org.elasticsearch.index.similarity.CustomSimilarityProvider" 
     }, 
     "search": { 
     "type": "org.elasticsearch.index.similarity.CustomSimilarityProvider" 
     } 
    } 
    } 
}' 

我不能夠理解我怎樣才能索引期間直接使用此行,我的默認相似改變這一習俗相似。

org.elasticsearch.index.similarity.CustomSimilarityProvider

誰能告訴我怎樣才能做到這一點?我嘗試在我的機器上運行相同的東西,但它不適合我。我是否需要修改這條線或路徑?

在此先感謝。

+0

是否有幫助? – javanna

+0

它可能不是。他想知道如何注入他自己的Java編寫的相似類/提供者,而不是Elasticsearch提供的各種類型。 – HaterTot

回答

1

您發佈的json是使用create index api創建索引的json。在相同的請求中,您可以爲該索引提供設置,映射等。在這些設置中,您可以註冊自定義相似度。

創建索引後,您需要使用index api實際將文檔編入索引。

此外,自0.90起,您還可以通過映射配置自定義相似度per field