我正在尝试使用边框来查找Redis中的地理空间数据。
在浏览了Redis网站上的所有文档后,我可以找到的唯一引用的边界框位于GEORADIUS命令的文档中;
时间复杂度:O(N + log(M))其中N是由中心和半径分隔的圆形区域的边界框内的元素数,M是索引内的项目数。
换句话说,看起来Redis中已经存在一个基本的边界框,但由于某种原因,它似乎并不容易为用户所用。我觉得这很奇怪。
我知道有一些库可用,例如geo.lua可以增加Redis的功能。如果可能的话,我想避免扩展我的Redis数据库,特别是因为看起来边界框的概念已经在Redis的地理空间系统中了。
我随时都会看到对边界框的引用(例如Redis release notes)我错过了一些明显的东西吗?
答案 0 :(得分:2)
令人遗憾的是,你的研究是正确的 - 目前在核心Redis中没有关于geoset的边界框查询。
在这种情况下,您可以选择执行包含框的半径搜索,然后过滤掉框外的结果。可以进行过滤:
您还可以向Redis存储库提交功能请求,要求将此功能作为核心的一部分并描述用例 - IMO将是一个很好的补充。