我正在尝试在Elasticsearch(版本2.3)中插入数据,该数据在字段名称中包含点。字段名称非常动态且嵌套,也可以包含各种特殊字符。我是否可以将这种数据插入elasticsearch中。那将是多么容易和有效?
我尝试插入的示例JSON:-
{
"v-5c": {
"reg": "us1",
"sTypes": {
"app": [
{
"z": "us1b",
"sId": "s-73f",
"availableIps": 990
},
{
"z": "us1a",
"sId": "s-253",
"availableIps": 1011
}
]
},
"sgs": {
"st": "sg-346",
"lb-hps-xrks": "sgea1"
},
"cs": {
"abc.xyz.xyz.com": "valu1",
"abc-xyz_zyz.com": "value2"
}
}
}
我看到的错误如下:
{"error":{"root_cause":[{"type":"mapper_parsing_exception","reason":"Field name [abc.xyz.xyz.com] cannot contain '.'"}],"type":"mapper_parsing_exception","reason":"Field name [abc.xyz.xyz.com] cannot contain '.'"},"status":400}
我可以在其中插入带点的字段名称,这真是太好了,否则任何其他解决方案也是可以接受的。请建议吗?
谢谢
最佳答案
elasticsearch 2.0中的字段名称中不允许带点。请参见elasticsearch commit - Enforce field names do not contain dot-2015年7月7日
但是请检查Elasticsearch 2.4、5.0-Mappings: Allow to force dots in field names-2016年8月11日
关于elasticsearch - 允许Elasticsearch在字段名称中插入点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43578052/