未在弹性搜索java中分析的索引字段

时间:2014-10-15 00:58:25

标签: java lucene elasticsearch tokenize

我在弹性搜索中索引城市名称(例如"纽约"),这显然不能用空格标记。如何使用java api索引术语?

目前我的代码如下..

 bulkRequest.add(client.prepareIndex("myIndex", "collection", if)
                .setSource(mapper.writeValueAsString(entity)));


    BulkResponse bulkResponse = bulkRequest.execute().actionGet();

1 个答案:

答案 0 :(得分:0)

请完整地解释你的想法。我们需要在创建映射时指定分析器。

  

分析器是一个标记化器和一个或多个文本的组合   过滤器。标记器负责将文本拆分为   个人“代币”,可以是单词或单词。该   过滤器负责转换和删除令牌   索引内容

e.g。使所有文本小写,删除常用单词,索引同义词等。

该字段的分析器将决定tokenize。请检查分析仪的城市名称字段。

请查看Keyword分析仪。

在映射文件中可以看到

Analyzer。在创建索引时,您需要设置分析器,否则将在索引字段时应用default analyzer(动态映射)。