创建索引映射后索引文档与使用Elasticsearch中的索引直接创建文档之间的区别是什么?

时间:2017-10-19 06:55:30

标签: elasticsearch

我对映射和索引感到困惑。据我所知,映射索引是一种文档模式。

我的观点是,当我创建文档时,有几种方法。

1)映射索引 - >索引文件

2)创建文档时,同时进行映射。

那么,为什么我必须为某些情况做一个映射?

2 个答案:

答案 0 :(得分:0)

Elasticsearch允许不为字段定义映射,因为它有一些选项来检测字段类型并应用其默认映射。 https://www.elastic.co/guide/en/elasticsearch/reference/current/dynamic-field-mapping.html 优秀的做法是始终明确地默认映射,依赖ES算法会导致不可预测的结果。

如果您确实需要一些动态映射,例如,在定义映射时您不知道所有必需字段,则可以使用类似动态模板或默认映射的内容。

答案 1 :(得分:0)

默认映射存在一些已知限制(如文本默认为关键字,忽略256字节以上的任何内容)。这可能适用于数据来自日志的大多数情况。但是,使用映射类型可以更好地控制要执行的索引类型以及是否索引字段。根据您的使用情况,首选选项(定义映射与动态映射)可能不同。