我有一个keyword
字段Array
,它是在创建对象时生成的。我应该使用什么标记器进行索引?我在elasticsearch.org上找不到相关信息。
关键字值(数组):
['george', 'apple', 'eats', 'new', 'york']
答案 0 :(得分:2)
这一切都取决于您的数据以及您想要的数据。例如,关键字可以由多个单词组成吗?如果是这样,在搜索时你想要一个单词匹配吗?此外,您是否希望它区分大小写?
如果您只希望获得完全匹配,区分大小写,则甚至无需分析该字段,您可以在映射中将其配置为index: not_analyzed
。
如果您不希望它区分大小写,则可以对其进行分析,并使用不进行标记化的keyword tokenizer和lowercase token filter。
如果一个关键字可以由多个单词组成,并且您希望每个单词匹配,则需要对其进行标记,例如使用whitespace tokenizer或甚至默认的standard analyzer。