georadius实现基于距离的极限用户id查询

mjqavswn  于 2021-06-08  发布在  Redis
关注(0)|答案(1)|浏览(320)

stackoverflow社区,
我正在开发一个flinkjava应用程序来查询用户之间的距离。我使用莴苣框架来查询给定的userid

GEORADIUS <location> <lat> <lon> <radius> <unit>.

condition->现在想象一下给定参数中有数百万个userid。
问题->使用莴苣框架查询用户ID的最佳方式是什么,而不是在一次查询中查询一百万个用户?
我知道你有 limit 通过它,我们可以无缝地跟踪最后一个偏移量,并从该点继续查询。但是,geo api提供 count 它只提供前n个用户ID。我们可以用georadius命令做类似的事情吗?
或者有没有更好的方法来解决这个问题,我们可以在给定的半径范围内查询userid而不重复结果?我知道我们可以缩短距离,但是,有没有办法让r1和r2之间的差值变小?

avwztpqn

avwztpqn1#

你可以打电话 GEORADIUS 命令 STORE 或者 STOREDIST 将结果保存到排序集的选项。然后你可以用 ZRANGE 命令来迭代结果。

相关问题