我正在使用Redis Geo找到两个地方或纬度之间的距离,但是当我将结果与谷歌距离矩阵api进行比较时,结果之间存在很大差异。
这是我的情景:
继续使用redis CLI
执行此命令
GEOADD Sicily 13.349350 38.272273 "Palermo" 15.089875 37.508123 "Catania"
执行此命令
GEORADIUS Sicily 13.349350 38.272273 200 km WITHDIST
得到了这个结果
1) 1) "Palermo"
2) "0.0001"
2) 1) "Catania"
2) "174.8263"
Redis说卡塔尼亚距离巴勒莫有174.8263公里。
在使用google api获取这两个lat长度之间的距离时,我得到了不同的结果:
https://maps.googleapis.com/maps/api/distancematrix/json?units=metrics&origins=38.272273,13.349350&destinations=37.508123,15.089875
谷歌称卡塔尼亚距离巴勒莫有233公里。
我还使用了mongodb的$ geonear,结果类似于redis:
Mongodb说卡塔尼亚距离巴勒莫有174.971公里。
我相信谷歌的距离是正确的,所以任何人都可以帮我解决我在Redis中做错的事情。有没有其他方法可以获得正确的距离,因为我想使用redis。