-
Geohash sharding请问是具体怎么实现的呀?
我理解是可以 mod, 可以range比如说首字母类似([a]ccccc). 如过mod感觉查的时候不方便, 如果Range可能容易出现热点问题. 不知道还要什么其他的好方法? -
上课我记得有提到用s2搜索可以选搜索框的大小,我理解是如果应用最小的geohash是6位(比如 [a]ccccc), 我理解是搜索框的大小应该最多是6位(可以是6位,5位,4位,3位,2位,1位), 不能再小了.
-
地理位置sharding 怎么防止出现热点问题?比如new york city,或者san francisco这种比较密的?
-
请问Tinder这个geohash怎么生成的, 我感觉大小都不太一样呀
我理解这就是手工划分 比如有大致50个不规则图形, 就标注1 - 50. 尽量让编号相近的在一起? -
我想问一下 关于uer geohash的redis sorted set? 我理解就是
- ZADD accccc(geohash) driver1 2019-05-21 02:02:30.435371
- ZADD accccc(geohash) driver2 2019-05-21 02:02:31.435371
- ZADD accccc(geohash) driver3 2019-05-21 02:02:32.435371
- ZADD accccc(geohash) driver3 2019-05-21 02:02:33.435371
- 如果找30s内找有效的driverIds 就用 ZRANGEBYSCORE accccc(geohash) time.now -30s, time.now. 这个应该是o(log(n)) + o(m)的时间复杂度,n是全部记录的条数, m是最近30s内的条数
- 如果需要删除 ZREMRANGEBYSCORE geohash 0, time.now - 30s. 这个应该是o(log(n)) + o(m)的时间复杂度,n是全部记录的条数, m是超过30s外的条数
问题有点碎 谢谢
