相关疑难解决方法(0)

更改动态弹性搜索同义词

是否可以在索引中存储elasticsearch的同义词?或者是否可以从像couchdb这样的数据库中获取同义词列表?我想通过REST-API动态地将同义词添加到elasticsearch.

lucene elasticsearch

15
推荐指数
1
解决办法
7516
查看次数

如何动态更改ElasticSearch的同义词

我的同义词存储在数据库中,当在数据库中更改同义词时,我想更新索引中的任何值,这些值可能会因同义词更改而更改.

我可以想到有两个部分.一,找出要重新索引的文件.二,弄清楚如何告诉ElasticSearch同义词已经改变.我正在努力争取第二个 - 告诉ElasticSearch同义词已经改变了.

有一个类似的问题已被提出 - 请参阅更改动态弹性搜索同义词 - 但从阅读该问题的答案,我无法弄清楚我需要什么.

目前,我的配置文件如下所示:

index :
  analysis :
    analyzer :
      myanalyzer :
        filter: [standard, mysynonymfilter]
filter :
  mysynonymfilter :      
    type : synonym
    synonyms : synonyms.txt
    ignore_case : false
    expand : true
    format : solr
Run Code Online (Sandbox Code Playgroud)

我的想法是做类似以下的事情:

curl -XPUT 'http://127.0.0.1:9200/foo/_settings'  -d '
{
    "filter" : {
        "synonym" : {
            "type" : "mysynonymfilter",
            "synonyms" : [
                "cosmos, universe"
            ] 
        }
    }
}
'
Run Code Online (Sandbox Code Playgroud)

但这似乎没有做我想要的.也就是说,据我所知,索引设置不会更新.

我正在尝试做什么?如果是这样,任何想法我做错了什么?

此外,我相信我可以通过更新同义词文件(如果我必须使用文件)来实现这一点,但这有点复杂,我想避免的事情.

谢谢你的帮助,埃里克

elasticsearch

8
推荐指数
3
解决办法
9444
查看次数

标签 统计

elasticsearch ×2

lucene ×1