Find the 100 closest neighbors to a point (lng, lat)

Hello,

sorry if this question has already been asked, but I didn't find much
material during my search.
Basically, what I need to do, is find the exact 100 closest objects around
a spatial point (longitude, latitude), among a 1 million geolocalized
object all around the world.

Is there an efficient way to do that? (performance is the most important
parameter here)
Are there plugins/libraries to help me do so?
Are there better options than Elasticsearch for this very problem?

Thanks for your help, and keep up the good work on this wonderful tool

Michael

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/04ce1fbd-c88f-4517-9d56-044bb235c29c%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Hi Michael,

You can do that using geo-distance sorting:
http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/search-request-sort.html#_geo_distance_sorting

It would probably not be optimal in the sense that elasticsearch will need
to compute the distance for every matching document, but maybe it would
still be fast enough?

On Fri, Oct 24, 2014 at 11:11 AM, Michael Lumbroso michael@sportintown.com
wrote:

Hello,

sorry if this question has already been asked, but I didn't find much
material during my search.
Basically, what I need to do, is find the exact 100 closest objects around
a spatial point (longitude, latitude), among a 1 million geolocalized
object all around the world.

Is there an efficient way to do that? (performance is the most important
parameter here)
Are there plugins/libraries to help me do so?
Are there better options than Elasticsearch for this very problem?

Thanks for your help, and keep up the good work on this wonderful tool

Michael

--
You received this message because you are subscribed to the Google Groups
"elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/elasticsearch/04ce1fbd-c88f-4517-9d56-044bb235c29c%40googlegroups.com
https://groups.google.com/d/msgid/elasticsearch/04ce1fbd-c88f-4517-9d56-044bb235c29c%40googlegroups.com?utm_medium=email&utm_source=footer
.
For more options, visit https://groups.google.com/d/optout.

--
Adrien Grand

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/CAL6Z4j45xYH%2BGmF%2BQ3t5m1OYLKZD7Vp6p0HxpmkD7-Q%2B7Zu1hQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Hi Adrien,

thanks for your answer, but actually, I need something really optimized, so
I guess ES is not the way to go.

Can you think of better ways to actually do that?

Thanks

2014-10-27 18:27 GMT+01:00 Adrien Grand adrien.grand@elasticsearch.com:

Hi Michael,

You can do that using geo-distance sorting:
http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/search-request-sort.html#_geo_distance_sorting

It would probably not be optimal in the sense that elasticsearch will need
to compute the distance for every matching document, but maybe it would
still be fast enough?

On Fri, Oct 24, 2014 at 11:11 AM, Michael Lumbroso <
michael@sportintown.com> wrote:

Hello,

sorry if this question has already been asked, but I didn't find much
material during my search.
Basically, what I need to do, is find the exact 100 closest objects
around a spatial point (longitude, latitude), among a 1 million
geolocalized object all around the world.

Is there an efficient way to do that? (performance is the most important
parameter here)
Are there plugins/libraries to help me do so?
Are there better options than Elasticsearch for this very problem?

Thanks for your help, and keep up the good work on this wonderful tool

Michael

--
You received this message because you are subscribed to the Google Groups
"elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/elasticsearch/04ce1fbd-c88f-4517-9d56-044bb235c29c%40googlegroups.com
https://groups.google.com/d/msgid/elasticsearch/04ce1fbd-c88f-4517-9d56-044bb235c29c%40googlegroups.com?utm_medium=email&utm_source=footer
.
For more options, visit https://groups.google.com/d/optout.

--
Adrien Grand

--
You received this message because you are subscribed to a topic in the
Google Groups "elasticsearch" group.
To unsubscribe from this topic, visit
https://groups.google.com/d/topic/elasticsearch/aWZBVkZiSY4/unsubscribe.
To unsubscribe from this group and all its topics, send an email to
elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/elasticsearch/CAL6Z4j45xYH%2BGmF%2BQ3t5m1OYLKZD7Vp6p0HxpmkD7-Q%2B7Zu1hQ%40mail.gmail.com
https://groups.google.com/d/msgid/elasticsearch/CAL6Z4j45xYH%2BGmF%2BQ3t5m1OYLKZD7Vp6p0HxpmkD7-Q%2B7Zu1hQ%40mail.gmail.com?utm_medium=email&utm_source=footer
.

For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/CAH-zEnNoh%2BTysKSiX7y67M6HyFE60cEnYhf6DWSQoCu_5jtRdQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Anyone has an idea on which tool is the best to perform this task? This
would be of a major help :slight_smile:

Thanks for your answers!

Le vendredi 24 octobre 2014 11:11:24 UTC+2, Michael Lumbroso a écrit :

Hello,

sorry if this question has already been asked, but I didn't find much
material during my search.
Basically, what I need to do, is find the exact 100 closest objects around
a spatial point (longitude, latitude), among a 1 million geolocalized
object all around the world.

Is there an efficient way to do that? (performance is the most important
parameter here)
Are there plugins/libraries to help me do so?
Are there better options than Elasticsearch for this very problem?

Thanks for your help, and keep up the good work on this wonderful tool

Michael

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/6e2d21bc-3a38-4174-ba1a-3e4dfa3e6e17%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.