我从包含地理数据的数据集创建了一个Elasticsearch索引。我已经为数据设置了映射。然后我尝试使用此数据集创建Kibana可视化。 Kibana检测到地理数据属性,但即使有很多也没有找到结果。然后我对另一个具有不同且更简单布局的数据集进行了测试,并且Kibana正确地显示了地理数据。
以下是有效的示例:
" location":{ " lat":56.290525, " lon":-30.163298 },
这是它的映射:
"location": {
"type": "geo_point",
"lat_lon": true,
"geohash": true
}
这个不起作用:
"groupOfLocations": {
"@type": "Point",
"locationForDisplay": {
"lat": 59.21232,
"lon": 9.603803
}
}
这就是它的映射:
{
... // nested type
"locationForDisplay": {
"type": "geo_point",
"lat_lon": true,
"geohash": true
}
...
}
工作版和非工作版之间只有两件不同的东西:
工作的那个有一个叫做#34的JSON元素; location"而 另一个被称为" locationForDisplay"
有效的那个有一个JSON元素(" location")作为顶级 元素,而在另一个元素中,它是嵌套类型中的元素。
除了这两个差异(我认为不应该是什么意思),我找不到任何其他东西。是什么让Kibana失败?
答案 0 :(得分:1)
Kibana无法使用嵌套的Json, 您需要将其更改为标准Json。