说我有一个像这样的文件:
{
"events" : [
{
"event_id" : 123,
"props" : {
"version": "33"
},
{
"event_id" : 124,
"props" : {
"version": "44a"
}
]
}
是否可以指定将
events.props.version
映射为某种类型?我试过了:
{
"template" : "logstash-*",
...
"mappings" : {
"_default_" : {
"properties" : {
"events.props.version" : { "type" : "string" }
}
}
}
}
但这似乎不起作用。
最佳答案
请查看elasticsearch Mapping API中的mapping
API。
要在内部元素中设置任何分析器,我们需要将每个内部字段都视为一个单独的属性集。尝试以下
{
"mappings": {
"properties": {
"events": {
"properties": {
"event_id": {
"type": "string",
"analyzer": "keyword"
},
"props": {
"properties": {
"version": {
"type": "string"
}
}
}
}
}
}
}
}
如果这不起作用,请为我提供映射。
关于elasticsearch - 是否可以在ElasticSearch中为内部对象定义默认映射?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30462182/