如何动态更新同义词过滤器数据库

时间:2015-10-30 06:41:20

标签: elasticsearch

是否可以在Elasticsearch中动态更新我的同义词过滤器数据库。当我使用我的应用程序进行同义词训练过程时,是否可以在弹性搜索中动态地将新单词添加到同义词数据库?

2 个答案:

答案 0 :(得分:0)

如果您的同义词保存在文件中,则需要更新文件,关闭索引然后重新打开它,它应该自动获取新的同义词。

答案 1 :(得分:0)

curl -XPOST 'localhost:9200/my-index/_close'
echo
echo updating new Synynom database
curl -XPUT 'localhost:9200/my-index/_settings' -d @analyzer.json
echo
echo Opening index
curl -XPOST 'localhost:9200/my-index/_open'

analyzer.json文件如下所示 -

{
  "analysis": {
    "analyzer": {
      "his-synonym": {
        "tokenizer": "whitespace",
        "filter": [
          "lowercase",
          "my-synonym"
        ]
      }
    },
    "filter": {
      "my-synonym": {
        "type": "synonym",
        "synonyms": [
          "big,large",
          "run,jogg"
        ]
      }
    }
  }
}