redis GEO的使用
一、概念
- redis的GEO特性在Redis3.2版本发布,这个功能可以将用户给定的地理位置信息储存起来,并对这些信息进行操作。
- GEO常用语LBS(Location Based Service),基于位置的服务。
二、GEO相关命令
- 命令名称:geoadd
- 语法:geoadd key longitude latitude member [longitude latitude member……]
- 功能:
- 将给定的空间元素(维度、经度、名字)添加到指定的键里面。
- 有效的经度介于-180度至180度之间。
- 有效的维度介于-85.05112878度至85.05112878度之间。
- 返回值:
- 新添加到键里面的空间元素数量,不包括那些已经存在但是被更新的元素。
- 命令名称:geopos
- 语法:geopos key member [member……]
- 功能:
- 从键里面返回所有给定位置元素的位置(经度和维度)
- 返回值:
- 返回一个数组,数组中的每个项都由两个元素组成:第一个元素为给定位置元素的经度,第二个元素为给定位置元素的纬度。
- 命令名称:geodist
- 语法:geodist key member1 member2 [unit]
- 功能:
- 返回两个给定位置之间的距离。
- 如果两个位置之间的其中一个不存在,那么返回空值。
- 指定单位的参数unit必须是一下单位的其中一个:(默认m,km,mi,ft)
- 返回值:
- 计算出的距离会以双精度浮点数的形式被返回。如果给定的位置元素不存在,那么命令返回空值。
- 命令名称:georadius
- 语法:georadius key longitude latitude radius m|km|gt|mi [WITHCOORD] [WITHDIST] [WITHHASH] [ASC|DESC] [COUNT count]
- 功能:1)以给定的经纬度为中心,返回键包含的位置元素当中,与中心的距离不超过给定最大距离的而所有位置元素。
- 选项:
- WITHDIST:在返回位置元素的同时,将位置元素与中心之间的距离也一并返回。
- WITHCOORD:将位置元素的经度和纬度也一并返回。
- WITHHASH:以52位有符号整数的形式,返回位置元素经过原始geohash编码的有序集合分值。这个选项主要用于底层应用或者调试,实际中的作用并不大。
- ASC:根据中心的位置,按照从近到远的方式返回位置元素
- DESC:根据中心的位置,按照从远到近的方式返回位置元素
- 命令名称:georadiusbymember
- 语法:georadiusbymemeber key member radius m|km|ft|mi [WITHCOORD] [WITHDIST] [WITHHASH] [ASC|DESC] [COUNT count]
- 功能:
- 这个命令和georadius命令一样。
- 不同的是中心点是由给定的位置元素决定的。
- 返回值:
- 一个数组,数组中的每个项表示一个范围之内的位置元素。
- 命令名称:geohash
- 语法:geohash key member [member……]
- 功能:
- 返回一个或多个位置元素的geohash表示。
- 返回值:
- 一个数组,数组中的每个项都是一个geohash。命令返回的geohash的位置与用户给定的位置元素的位置一一对应。
redis GEO的使用的更多相关文章
- Redis Geo: Redis新增位置查询功能
转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/144.html 移动互联网增进了人与人之间的联系,其中基于位置信息的服务( ...
- 转:Redis Geo: Redis新增位置查询功能
原文来自于:http://www.infoq.com/cn/news/2015/07/redis-geo 移动互联网增进了人与人之间的联系,其中基于位置信息的服务(Location Based Ser ...
- redis GEO地理位置命令介绍
GEOADD keylongitude latitude member [longitude latitude member ...] Available since 3.2.0. Time comp ...
- Redis GEO 功能使用场景
本文来源:https://www.dazhuanlan.com/2020/02/05/5e3a0a3110649/ 背景 前段时间自己在做附近直播相关业务,其中有一个核心的点就是检索用户附近的主播,也 ...
- Redis GEO 地理位置
目录 GEO指令 GEOADD GEODIST GEOPOP GEOHASH GEORADIUS GEORADIUSBYMEMBER 指令补充 删除操作 避免单集合数量过多 存储原理 GEOADD存储 ...
- redis geo 初探
redis的geo搜索功能是3.2之后新增的,所以实验开始之前先查看redis的版本,确保版本正确. redis的geo多用于地理类应用,所以这次还是用了高德地图API来用作数据源. 首先截取几个点: ...
- Redis GEO ,GEOHASH,Spatial_index
https://matt.sh/redis-geo http://antirez.com/latest/0 http://invece.org/ https://github.com/davidmot ...
- 【转】redis GEO地理位置
redis目前已经到了3.2版本,3.2版本里面新增的一个功能就是对GEO(地理位置)的支持. 地理位置大概提供了6个命令,分别为: GEOADD GEODIST GEOHASH GEOPOS GEO ...
- Redis GEO 特性在 LBS 中的应用总结
什么是LBS LBS(Location Based Service),基于位置的服务. Redis和GEO Redis 是最热门的 nosql 数据库之一,它的最大特点就是快.所以在 LBS 这种需要 ...
- Redis Geo HyperLogLog类型介绍
Geo类型 Redis3.2.0版本推出 可以将用户给定的地理位置信息存储起来,并对这些信息进行操作 GEOADD key longitude latitude member [longitude ...
随机推荐
- 【JZOJ6216】【20190614】序列计数
题目 一个长为\(N\)的串\(S\),\(M\)询问区间\([l,r]\)不同的子串个数,字符集为$ C $ \(N ,M \le 10^5 \ , \ C \le 10\) 题解 这题非常套路.. ...
- Ajax.BeginForm 不执行OnSuccess
今天用MVC做了一个表单提交,使用Ajax.BeginForm ,但是碰到一个奇怪的问题OnSuccess回调函数不执行.后来经过多次尝试才发现要引用两个东西 1.<script src=&qu ...
- 如果判断条件过多,可以直接在computed里面去返回需要判断的数据
bad <div class="offer-item_margin" v-show="offer.supplierName || offer.supplierSto ...
- Git删除某个文件夹或整个仓库
删除仓库: 进入仓库,选择settting: 拉到最下面,有个Danger Zone,里面有删除仓库选项: 输入仓库名称,即可删除: 删除某个文件:删除文件和文件夹只能用命令行删除. 如果直接git ...
- 帝国CMS 7.5编辑器从WORD中粘贴过来无法保留格式和图片的解决办法
配置过滤js文件 首先打开 \editor\plugins\pastefromword\filter\default.js 在文件的最后部分又如下代码(修改前的代码),也可以搜索CKEDITO ...
- maven工程中MENIFEST.MF中属性作用
Manifest-Version: 版本号 Bundle-ManifestVersion: bundle的版本号 Bundle-Name: bundle的名称,主要是对bundle的作用的说明 Bun ...
- 单细胞数据normalization方法 | SCTransform
SCTransform Normalization and variance stabilization of single-cell RNA-seq data using regularized n ...
- 共线性图 | Alluvial Diagrams | Parallel plot | Parallel Coordinates Plot
最近有个需求需要画如下的图: 这些图的核心意思是一样的,就是connection,把不同的数据连到一起. 文章里把这图叫做共线性图,是按功能命名的,Google里搜不到. 搜到类似的,这个图叫 Par ...
- UltraEdit 的“查看方式”着色类项型
UltraEdit 的“查看方式”着色类项型 2011年06月22日 13:16:00 cnki_ok 阅读数 5722 版权声明:本文为博主原创文章,遵循CC 4.0 by-sa版权协议,转载请 ...
- Java基础 try...catch(多个异常) 多个异常采取同样的解决措施
JDK :OpenJDK-11 OS :CentOS 7.6.1810 IDE :Eclipse 2019‑03 typesetting :Markdown code ...