Я использую ElasticSearch (1.4.0) для выполнения своих поисков.ElasticSearch Фильтр geo_distance не возвращает никаких результатов
Мне удалось настроить ElasticSearch, и все работает отлично, за исключением фильтра geo_location.
Всякий раз, когда я использую фильтр geo_location, результаты не возвращаются. Обратите внимание, что ElasticSearch не возвращает никаких ошибок. Просто нет обращений, хотя я убедился, что в моей поисковой точке есть объекты рядом.
Это упрощенная версия моего PHP массива Params, который я использую, чтобы проверить geo_distance фильтр:
$searchParams['index'] = 'myname';
$searchParams['type'] = 'myentity';
$searchParams['body']['query']['filtered']['filter']['geo_distance'] =
[
'distance' => '50km',
'address.geopoint' => $lat . "," $lng
];
И это скручивание тело запроса, который не возвращает хиты тоже:
{
"query" : {
"filtered" : {
"filter" : {
"geo_distance" : {
"distance" : "50km",
"address.geopoint" : "51.43,-2.54"
}
}
}
}
}
Это мое отображение:
{
"myname":{
"mappings":{
"myentity":{
"properties":{
"address":{
"type":"nested",
"properties":{
"country":{
"type":"string"
},
"geopoint":{
"type":"geo_point",
"lat_lon":true
},
"house":{
"type":"string"
},
"postcode":{
"type":"string"
},
"street":{
"type":"string"
},
"town":{
"type":"string"
}
}
},
"categories":{
"type":"string"
},
"tags":{
"type":"string"
}
}
}
}
}
}
Вот документ, я ожидаю, чтобы получить как удар :
[_source] => Array (
[categories] => Array (
)
[tags] => Array (
)
[address] => Array (
[street] => Bristol Road
[geopoint] => 51.4307381,-2.5417914
[town] => Bristol
[house] => 1
[postcode] => BS4 5NL
[country] => UK
)
)
Любая помощь будет оценена по достоинству.
Я предлагаю попробовать это из вашего php-клиента. Просто используйте 'curl' или' marvel'. Если проблема по-прежнему сохраняется, обновите сообщение своим запросом, ваши данные, которые, по вашему мнению, должны быть возвращены, сопоставление и версия ES. –
Я попытался использовать завиток, но его все равно то же самое. И PHP-клиент, и curl дают одинаковые результаты. Я обновил свой вопрос с большим количеством данных. Любая помощь будет оценена по достоинству. –