Elasticsearch stem_override过滤器,带有大型内联规则列表

时间:2017-11-14 13:25:19

标签: elasticsearch stemming

我想为stem_override过滤器添加大型内联规则列表(请参阅https://www.elastic.co/guide/en/elasticsearch/reference/5.6/analysis-stemmer-override-tokenfilter.html)。

我的索引设置如下所示:

{
"settings": {
    "analysis" : {
        "analyzer" : {
            "my_analyzer" : {
                "tokenizer" : "standard",
                "filter" : ["lowercase", "custom_stems", "porter_stem"]
            }
        },
        "filter" : {
            "custom_stems" : {
                "type" : "stemmer_override",
                "rules" : [
                    "running => run",
                    "stemmer => stemmer"
                    ... //200 000 rules
                ]
            }
        }
    }
}

当我向ES发送此请求时,它运行的时间太长,以至于我没有收到任何响应,也没有最终创建索引。 有一个解决方案,规则存储在ES config文件夹的文件中。然后过滤器配置为:

"filter" : {
            "custom_stems" : {
                "type" : "stemmer_override",
                "rules_path" : "analysis/stemmer_override.txt"
            }
        }

在这种情况下一切正常。但这不是我需要的。我无法访问ES文件系统。我需要有可能只通过请求创建新设置。 有没有解决方案如何让ES快速处理如此巨大的请求(大约4Mb)?

由于

0 个答案:

没有答案