Kibana中的“field”和“field.keyword”字段有什么区别?

yrwegjxp  于 2022-12-09  发布在  Kibana
关注(0)|答案(3)|浏览(320)

当在Kibana中添加过滤器时,所有字符串字段都有一个条目和**.keyword**条目。有什么区别?

ct3nt3jp

ct3nt3jp1#

从elasticsearch 5中没有字符串字段类型,取而代之的是两种类型:
关键字-用于筛选、聚合和排序。
文本-用于搜索文本。
当您使用字符串字段(例如名称)为文档编制索引时,elasticsearch会将该字段Map到文本字段以进行搜索,并Map到关键字以进行筛选。
Kibana使用字段进行筛选和聚合,因此使用关键字。
请看elasticsearch documentation

toiithl6

toiithl62#

事实上,这不是Kibana问题,而是ElasticSearch问题,它使全文和关键字搜索都一致。field.keyword用于关键字搜索和聚合,而原始字段用于全文搜索。
有一个官方博客专门为这个:https://www.elastic.co/cn/blog/strings-are-dead-long-live-strings
官方讨论板上也有一个帖子,这里是供大家参考的链接:https://discuss.elastic.co/t/why-am-i-getting-keyword-for-my-feilds-in-index-pattern/137983

93ze6v8z

93ze6v8z3#

如果您已经有匹配的关键字字段,则可以使用.keyword字段在索引上创建脚本化字段。

相关问题