Redis的底层类型之geo

werbenhu / 60 / 2023-09-25 11:22:50

ChatGPT 可用网址,仅供交流学习使用,如对您有所帮助,请收藏并推荐给需要的朋友。
https://ckai.xyz

geo

  • GEOADD

    GEOADD key [NX | XX] [CH] longitude latitude member [longitude
    latitude member ...]

key:指定要添加地理信息的有序集合的键名。

longitude 和 latitude:表示地理位置的经度和纬度。通常使用双精度浮点数表示。

member:与地理位置相关联的成员名称。

  • GEODIST
GEODIST key member1 member2 [unit]

key:指定要查询地理位置信息的有序集合的键名。
member1 和 member2:表示两个地理位置成员的名称,用于计算它们之间的距离。
unit(可选):指定距离的单位,默认为米(m)。你可以使用以下单位之一:米(m)、千米(km)、英里(mi)或英尺(ft)。

  • GEOHASH
GEOHASH key member [member ...]

GEOHASH 是 Redis 用于获取指定地理位置成员的 Geohash 值的命令。Geohash 是一种用于将地理位置坐标编码为字符串的方法,可以用来表示地理位置的精度和范围。

  • GEOPOS

GEOPOS 是 Redis 用于获取指定地理位置成员的经纬度坐标的命令。

  • GEORADIUS
GEORADIUS key longitude latitude radius m|km|ft|mi [WITHCOORD] [WITHDIST] [WITHHASH] [COUNT count] [ASC|DESC] [STORE key] [STOREDIST key]

key:包含地理位置信息的有序集合的键名。
longitude:查询中心点的经度。
latitude:查询中心点的纬度。
radius:查询半径范围,以距离单位(m、km、ft、mi)为单位。
[WITHCOORD]:可选参数,返回成员的经纬度坐标。
[WITHDIST]:可选参数,返回成员与查询中心点的距离。
[WITHHASH]:可选参数,返回成员的哈希值。
[COUNT count]:可选参数,限制返回的成员数量。
[ASC|DESC]:可选参数,指定返回结果的排序顺序。
[STORE key]:可选参数,将结果保存到指定的键名中。
[STOREDIST key]:可选参数,将结果保存到指定的键名中,并包含成员距离信息。

GEORADIUS 是 Redis 用于执行地理位置范围查询的命令。它允许你查找指定地理位置集合中,距离给定坐标点一定范围内的成员。

  • GEORADIUS_RO

GEORADIUS_RO 是 Redis 的一个扩展命令,通常用于在进行只读的地理位置查询时使用。与标准的 GEORADIUS 命令相比,GEORADIUS_RO 具有以下特点:

只读操作:GEORADIUS_RO 是只读操作,不会对 Redis 的数据集产生写入影响。

无锁操作:由于只执行只读操作,GEORADIUS_RO 不需要获取锁来访问地理位置数据,因此不会阻塞其他写入操作。

降低延迟:由于不需要执行写入操作,GEORADIUS_RO 在一些情况下可能具有更低的延迟。

  • GEORADIUSBYMEMBER

GEORADIUSBYMEMBER 是 Redis 中用于地理位置(Geo)操作的命令之一,用于按照指定的地理位置成员查询附近的其他成员。

  • GEORADIUSBYMEMBER_RO
  • GEOSEARCH

GEOSEARCH 是一个用于执行地理位置搜索的 Redis 命令。它允许你在存储有地理空间信息的有序集合(sorted set)中,根据指定的形状(形如圆形或矩形)来搜索成员。

  • GEOSEARCHSTORE

GEOSEARCHSTORE 是 Redis 6.2.0 版本中引入的 Redis 命令,它用于执行地理位置搜索并将结果保存到一个新的有序集合中。


作者
werbenhu
许可协议
CC BY 4.0
发布于
2023-09-25
修改于
2024-03-22
Bonnie image
尚未登录