stackoverflow社区,
我正在开发一个flinkjava应用程序来查询用户之间的距离。我使用莴苣框架来查询给定的userid
GEORADIUS <location> <lat> <lon> <radius> <unit>.
condition->现在想象一下给定参数中有数百万个userid。
问题->使用莴苣框架查询用户ID的最佳方式是什么,而不是在一次查询中查询一百万个用户?
我知道你有 limit
通过它,我们可以无缝地跟踪最后一个偏移量,并从该点继续查询。但是,geo api提供 count
它只提供前n个用户ID。我们可以用georadius命令做类似的事情吗?
或者有没有更好的方法来解决这个问题,我们可以在给定的半径范围内查询userid而不重复结果?我知道我们可以缩短距离,但是,有没有办法让r1和r2之间的差值变小?
1条答案
按热度按时间avwztpqn1#
你可以打电话
GEORADIUS
命令STORE
或者STOREDIST
将结果保存到排序集的选项。然后你可以用ZRANGE
命令来迭代结果。