GPS search speed optimization

Hi All

I am writing a simple GPS search query, like following

"query": {
"filtered": {
"filter": {
"geo_distance": {
"distance": "1km",
"distance_type": "plane",
"location": {
"lat": 40.111,
"lon": -73.322

It seems the search speed for this filter is much slower than I have expected for this simple operation. For a 1.5M dataset, it takes about 200-300 ms to finish one GPS query. Is there any other thing we can do to make the search faster? The results do not need to be super accurate, so certain approximation is acceptable. Thanks!

You could try geo-hash, read:

geo_distance is precision high and calculate slow,es have box filter hash cell filter and so on ,i suggest you try these