【发布时间】:2014-02-17 14:51:19
【问题描述】:
我正在寻找有关 ElasticSearch 中字段名称区分大小写的建议和最佳实践,以及是否存在使字段名称不区分大小写的全局配置。 另外,如果映射中不存在ES,是否可以禁止ES添加不同的字段。
这里有一个例子来说明这一点;
1- 使用一个小写的“名称”字段创建映射
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"
}
}
}
}
谢谢 亚西尔
【问题讨论】:
标签: elasticsearch case-sensitive