如果使用geohash的话,两个相邻的region 比如说一个城市正好在geohash最高位的的region的边界处,那么两个离得特别近的点也可能有不同的高位geohash,这种情况如何处理来保证获取到正确的driver list
想到一个不知是否相关的问题。如何记录相同lat long但是不同高度的位置?比如一个user在桥下,有司机在桥上,位置相同,但很可能是不好的match
确实可能两个位置相近的地方属于两个 Geohash。正是因为这个原因,我们在读取的时候会不止看一个 Geohash,而是以用户为圆心,画一个搜索半径,在范围内的 Geohash 所含用户都会给读出来。然后还会通过距离以及ETA进一步筛选。
GPS 没办法提供这个信息,手机很难知道桥上桥下这个信息,所以我们的服务也没法做出区分,确实会出现不理想的情况,我猜想只能根据行车的行车路径来判断,如果高架桥和下面的路面是不完全重合的话,还能判断。