GEOHASH
语法
GEOHASH key [member [member ...]]
- 可用版本
- Redis 开源版 3.2.0
- 时间复杂度
- 对于每个请求的成员,时间复杂度为 O(1)。
- ACL 类别
-
@read
,@geo
,@slow
,
返回有效的 Geohash 字符串,表示有序集合值中一个或多个元素的地理空间索引位置(这些元素是使用 GEOADD
添加的)。
通常,Redis 使用 Geohash 技术的一种变体来表示元素位置,其中位置使用 52 位整数编码。与标准相比,编码也不同,因为编码和解码过程中使用的初始最小和最大坐标不同。然而,此命令返回一个标准 Geohash 字符串形式,如 Wikipedia 文章所述,并与 geohash.org 网站兼容。
Geohash 字符串属性
该命令返回 11 个字符的 Geohash 字符串,因此与 Redis 内部的 52 位表示相比,没有精度损失。返回的 Geohash 具有以下属性:
- 可以通过从右侧删除字符来缩短它们。这会损失精度,但仍指向同一区域。
- 可以在
geohash.org
URL 中使用它们,例如http://geohash.org/<geohash-string>
。这是一个此类 URL 的示例。 - 具有相似前缀的字符串是邻近的,但反之则不成立,具有不同前缀的字符串也可能邻近。