ES проблема с множественной индексацией географического местоположения - PullRequest
0 голосов
/ 28 октября 2018

Я использую ElasticSearch PHP и сопоставленное местоположение в качестве географической точки, как предлагается в документе

'location' => [
            'type' => 'geo_point'
        ]

Запрос, который я запускаю, чтобы проиндексировать их в документе, так как мне нужно несколько значений

select CONCAT('[', (select GROUP_CONCAT(CONCAT('[', CONCAT(city.latitude,',',city.longitude), ']'))
                                from city, city_xref
                                where city_xref.city_id = city.id), ']') as location from search_table;

Во время выполнения запроса я могу видеть результаты в браузере запросов, как показано ниже

[[37.77993,-121.97802],[37.77993,-121.97802]]

пробовал пару других способов

[{37.77993,-121.97802},{37.77993,-121.97802}]

другим способом

{{37.77993,-121.97802},{37.77993,-121.97802}}

Но это выдает ошибку, подобную этой

mapper_parsing_exception"
reason  "failed to parse"
caused_by   
type    "number_format_exception"
reason  "For input string: \"[{lat: 37.77993\""

В остальном все остальное работает как положено, даже если я пытаюсь составить карту с использованием одной долготы и широты.

Пожалуйста, помогите мне в этом, где я делаю неправильно.

...