我正在寻找有关ElasticSearch中字段名称区分大小写的建议和最佳实践,以及是否存在使字段名称不区分大小写的全局配置.此外,如果可以禁用ES添加不同的字段(如果映射中不存在).
这是一个例子来说明这一点;
1-用小写的一个字段"name"创建映射
curl -XPUT http://localhost:9200/twitter/user/_mapping -d '{ "user" : { "properties" : { "name" : { "type" : "string" } } } }'
2-索引文档,使用名称字段的不同大小写(NAME)
curl -POST http://localhost:9200/twitter/user/1 -d '{ "NAME" : "Yasir" }'
在Elasticsearch日志中,我注意到映射已更新.
[2014-01-26 20:58:19,074][INFO ][cluster.metadata ] [Mad-Dog] [twitter] update_mapping [user] (dynamic)
3-检查映射,你会注意到一个新字段已添加"NAME"
curl -XGET http://localhost:9200/twitter/user/_mapping?pretty { "user" : { "properties" : { "NAME" : { "type" : "string" }, "name" : { "type" : "string" } } } }
谢谢Yasir