我对映射和索引感到困惑。据我所知,映射索引是一种文档模式。
我的观点是,当我创建文档时,有几种方法。
1)映射索引 - >索引文件
2)创建文档时,同时进行映射。
那么,为什么我必须为某些情况做一个映射?答案 0 :(得分:0)
Elasticsearch允许不为字段定义映射,因为它有一些选项来检测字段类型并应用其默认映射。 https://www.elastic.co/guide/en/elasticsearch/reference/current/dynamic-field-mapping.html 优秀的做法是始终明确地默认映射,依赖ES算法会导致不可预测的结果。
如果您确实需要一些动态映射,例如,在定义映射时您不知道所有必需字段,则可以使用类似动态模板或默认映射的内容。
答案 1 :(得分:0)
默认映射存在一些已知限制(如文本默认为关键字,忽略256字节以上的任何内容)。这可能适用于数据来自日志的大多数情况。但是,使用映射类型可以更好地控制要执行的索引类型以及是否索引字段。根据您的使用情况,首选选项(定义映射与动态映射)可能不同。