zoukankan      html  css  js  c++  java
  • redis地理位置

    redis 3.2版本中增加的最大功能就是对GEO(地理位置)的支持

    当前业务中地图方面是调用高德api(云图),请求多少会有延迟  而redsigeo可以实现查找附近的终端以及测量两点之间的直线距离(有误差) 

    • 1、geoadd:增加某个地理位置的坐标。
    • 2、geopos:获取某个地理位置的坐标。
    • 3、geodist:获取两个地理位置的距离。
    • 4、georadius:根据给定地理位置坐标获取指定范围内的地理位置集合。
    • 5、georadiusbymember:根据给定地理位置获取指定范围内的地理位置集合。
    • 6、geohash:获取某个地理位置的geohash值。

    geoadd

    geoadd用来增加地理位置的坐标,可以批量添加地理位置,命令格式为:

    GEOADD key longitude latitude member [longitude latitude member ...]
    

    key标识一个地理位置的集合。longitude latitude member标识了一个地理位置的坐标。longitude是地理位置的经度,latitude是地理位置的纬度。member是该地理位置的名称。GEOADD可以批量给集合添加一批地理位置。

    geopos

    geopos可以获取地理位置的坐标,可以批量获取多个地理位置的坐标,命令格式为:

    GEOPOS key member [member ...]
    

    geodist

    geodist用来获取两个地理位置的距离,命令格式为:

    GEODIST key member1 member2 [m|km|ft|mi]
    

    单位可以指定为以下四种类型:

    • m:米,距离单位默认为米,不传递该参数则单位为米。
    • km:公里。
    • mi:英里。
    • ft:英尺。

    georadius

    georadius可以根据给定地理位置坐标获取指定范围内的地理位置集合。命令格式为:

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

    longitude latitude标识了地理位置的坐标,radius表示范围距离,距离单位可以为m|km|ft|mi,还有一些可选参数:

    • WITHCOORD:传入WITHCOORD参数,则返回结果会带上匹配位置的经纬度。
    • WITHDIST:传入WITHDIST参数,则返回结果会带上匹配位置与给定地理位置的距离。
    • ASC|DESC:默认结果是未排序的,传入ASC为从近到远排序,传入DESC为从远到近排序。
    • WITHHASH:传入WITHHASH参数,则返回结果会带上匹配位置的hash值。
    • COUNT count:传入COUNT参数,可以返回指定数量的结果。

    georadiusbymember

    georadiusbymember可以根据给定地理位置获取指定范围内的地理位置集合。georadius命令传递的是坐标,georadiusbymember传递的是地理位置。georadius更为灵活,可以获取任何坐标点范围内的地理位置。但是大多数时候,只是想获取某个地理位置附近的其他地理位置,使用georadiusbymember则更为方便。georadiusbymember命令格式为(命令可选参数与georadius含义一样):

    GEORADIUSBYMEMBER key member radius [m|km|ft|mi] [WITHCOORD] [WITHDIST] [ASC|DESC] [WITHHASH] [COUNT count]
    

    geohash

    geohash可以获取某个地理位置的geohash值。geohash是将二维的经纬度转换成字符串hash值的算法,后面会具体介绍geohash原理。可以批量获取多个地理位置的geohash值。命令格式为:

    GEOHASH key member [member ...]
  • 相关阅读:
    显示文件本地文件夹
    Select Dependencies选择依赖项
    搜索小技巧
    783. Minimum Distance Between BST Nodes BST节点之间的最小距离
    5. Longest Palindromic Substring 最长的回文子串
    12. Integer to Roman 整数转罗马数字
    3. Longest Substring Without Repeating Characters 最长的子串不重复字符
    539. Minimum Time Difference 最小时差
    43. Multiply Strings 字符串相乘
    445. Add Two Numbers II 两个数字相加2
  • 原文地址:https://www.cnblogs.com/widgetbox/p/ph.html
Copyright © 2011-2022 走看看