Elasticsearch ICU插件 - 找不到分析器

时间:2015-03-06 13:27:04

标签: maven plugins elasticsearch icu

我试图在嵌入式Elasticsearch实例上使用ICU插件。我已经通过向pom添加依赖项来安装它,并设置插件的设置,这似乎是正确加载的:

INFO  -  [Quasar] loaded [analysis-icu], sites []

设置如下:

"index-name": {
    "settings": {
        "analysis": {
            "analyzer": {
                "ducet_sort": {
                    "tokenizer": "keyword",
                    "filter": [ "icu_collation" ]
                }
            }
        }
    }

我试图使用插件的地图位置如下所示:

"primaryName": {
    "type": "string",
        "fields": {
            "sort": {
                "type": "string",
                "analyzer": "ducet_sort"
            }
        }
},

当我尝试将PUT映射文件放入索引时,我得到以下异常:

org.elasticsearch.index.mapper.MapperParsingException: Analyzer [ducet_sort] not found for field [sort]

有人知道这里发生了什么吗?我之前做了一些调查,它在我的机器上安装了一个独立的实例...

谢谢!

编辑:我使用ES版本1.3.1和ICU插件版本2.3.0

1 个答案:

答案 0 :(得分:1)

好的......几个小时后我发现了这个问题。配置不对,ES没有正确地拿起分析仪。这样做了:

{
    "index": {
        "analysis": {
            "analyzer": {
                "ducet_sort": {
                    "tokenizer": "keyword",
                    "filter": [ "icu_collation" ]
                }
            }
        }
    }
}

settings位是不必要的。我不确定为什么会发生这种情况,但在文档中没有任何地方。