Я пытаюсь выполнить гео-запрос между двумя индексами.
Первый индекс содержит документы с географическими точками.Я могу видеть эти документы на скоординированной карте без каких-либо проблем.Он имеет следующее отображение
PUT cuartos_mexico/
{
"mappings": {
"properties": {
"geo": {
"properties": {
"coordinates": {
"type": "geo_point"
}
}
}
}
}
}
Второй индекс - геополигон со следующим отображением
PUT zones/
{
"mappings": {
"properties": {
"location": {
"type": "geo_shape"
}
}
}
}
И я индексирую документы, подобные этому
POST zone/_doc/1
{
"zone":"First Zone",
"location" : {
"type":"multipolygon",
"coordinates":[[[[-99.1766242668,19.4202738509],[lots of coordinates],[-99.1766242668,19.4202738509]]]]
}
}
КогдаЯ пытаюсь выполнить следующий запрос:
GET cuartos_mexico/_search
{
"query":{
"geo_shape": {
"location": {
"indexed_shape": {
"index": "zonas",
"id": 1,
"path": "location"
}
}
}
}
}
Я получил эту ошибку:
"error": {
"root_cause": [
{
"type": "query_shard_exception",
"reason": "failed to find geo_shape field [location]",
"index_uuid": "7RxmHAWPQNGprsu72af4sw",
"index": "cuartos_mexico"
}
Я хотел сделать этот гео-запрос, поэтому мне не нужно было передавать координаты, подобные запросу нижекоторый отлично работает, но есть много координат и затрудняет чтение
{
"query": {
"bool": {
"must": [
{
"match_all": {}
},
{
"range": {
"fecha_insercion": {
"gte": "2018-01-01",
"lte": "2018-01-31"
}
}
}
],
"filter": {
"geo_polygon": {
"geo.coordinates": {
"points": [
[
-99.2174431026,
19.4447686839
],
[lots of doordinates]
[
-99.2174431026,
19.4447686839
]
]
}
}
}
}
}
}
И он возвращает документы без проблем.