geo_point для поля местоположения в поле массива

У меня есть данные в elasticsearch, как это

"id": "edff12sd3" "main_array": [ { "id": "2308", "name": "Grey Area", "location": { "lat": 28.5696577, "lon": 77.3229933 } } , { "id": "2274", "name": "Tribute to The Beatles by Atul Ahuja- Live Music", "location": { "lat": 29.5696577, "lon": 77.3229933 } } 

Теперь я хочу установить geo_point для поля местоположения. Я так старался

 { "mappings": { "search_data": { "properties": { "main_array.location": { "type": "geo_point" } } } } } 

но это бросает мне ошибку

 "type": "mapper_parsing_exception", "reason": "Field name [main_array.location] cannot contain '.'" 

не могли бы вы помочь мне. благодаря

location является свойством объектов, которые вы храните в main_array , поэтому попробуйте вот так:

 { "mappings": { "search_data": { "properties": { "main_array": { "properties": { "location": { "type": "geo_point" } } } } } } } 

Обратите внимание, что имена полей ES 2.0 могут не содержать точек