美文网首页
Redis的特殊数据类型

Redis的特殊数据类型

作者: 攻城老狮 | 来源:发表于2020-12-18 07:33 被阅读0次

Geospatial类型

说明:Geospatial类型主要用于记录地区的经纬度信息,用于获取不同地区的距离等信息。底层使用zset实现,所有zset的相关操作在Geospatial类型中同样适用。

127.0.0.1:6379> geoadd city 116.40 39.90 beijing # 添加城市的经纬度信息
(integer) 1
127.0.0.1:6379> geoadd city 121.47 31.23 shanghai
(integer) 1
127.0.0.1:6379> geoadd city 106.50 29.53 chongqing 114.05 22.52 shenzhen # 同时添加多个城市的经纬度信息
(integer) 2
127.0.0.1:6379> geopos city beijing # 获取城市的经纬度信息
1) 1) "116.39999896287918091"
   2) "39.90000009167092543"
127.0.0.1:6379> geopos city beijing shanghai # 获取多个城市的经纬度信息
1) 1) "116.39999896287918091"
   2) "39.90000009167092543"
2) 1) "121.47000163793563843"
   2) "31.22999903975783553"
127.0.0.1:6379> geodist city beijing shanghai # 获取城市之间的距离(m)
"1067378.7564"
127.0.0.1:6379> geodist city beijing shanghai km # 获取城市之间的距离(km)
"1067.3788"
127.0.0.1:6379> georadius city 110 30 1000 km # 获取以(110,30)为圆心半径1000km以内的城市
1) "chongqing"
2) "shenzhen"
127.0.0.1:6379> georadiusbymember city beijing 1500 km # 获取以beijing为中心1500为半径的城市
1) "chongqing"
2) "shanghai"
3) "beijing"
127.0.0.1:6379> geohash city beijing shanghai # 获取 beijing和shanghai的经纬度的hash值
1) "wx4fbxxfke0"
2) "wtw3sj5zbj0"

Hyperloglog类型

说明:Hyperloglog类型用于获取基数信息,所谓的基数表示某个集合中不重复元素的个数。

127.0.0.1:6379> pfadd myset a b c d e f # 添加第一组
(integer) 1
127.0.0.1:6379> pfadd myset2 e f f g h i j a # 添加第二组
(integer) 1
127.0.0.1:6379> pfcount myset # 获取第一组集合的基数
(integer) 6
127.0.0.1:6379> pfcount myset2 # 获取第二组集合的基数
(integer) 7
127.0.0.1:6379> pfmerge myset3 myset myset2 # 合并两个集合
OK
127.0.0.1:6379> pfcount myset3
(integer) 10

Bitmap类型

说明:Bitmap类型用于存储二值类型的数据,例如:全中国疫情情况,未感染置0,感染置1;本周打卡情况,未打卡置0,打卡置1。

127.0.0.1:6379> setbit sign 1 0 # 设置打卡信息
(integer) 0
127.0.0.1:6379> setbit sign 2 1
(integer) 0
127.0.0.1:6379> setbit sign 3 1
(integer) 0
127.0.0.1:6379> setbit sign 4 0
(integer) 0
127.0.0.1:6379> setbit sign 5 1
(integer) 0
127.0.0.1:6379> setbit sign 6 0
(integer) 0
127.0.0.1:6379> setbit sign 7 0
(integer) 0
127.0.0.1:6379> getbit sign 3 # 查看周三是否打卡
(integer) 1
127.0.0.1:6379> getbit sign 6
(integer) 0
127.0.0.1:6379> bitcount sign # 统计本周打卡人数
(integer) 3

参考地址:https://www.bilibili.com/video/BV1S54y1R7SB

相关文章

  • 【Redis 系列】redis 学习五,多学习一些 redis

    【Redis 系列】redis 学习五,多学习一些 redis 的三种特殊数据类型 redis 三种特殊的数据类型...

  • Redis 特殊数据类型

    一、Geo Geo,即地理位置,核心原理是使用 GeoHash 这种地理空间位置编码方法,将二维的地理空间位置的经...

  • Redis的特殊数据类型

    Geospatial类型 说明:Geospatial类型主要用于记录地区的经纬度信息,用于获取不同地区的距离等信息...

  • Redis内存优化

    Redis 内存优化 官网文档 翻译 使用特殊编码方式存储聚合数据类型 从 Redis 2.2 开始,很多数据结构...

  • 14-Redis内存优化

    1、特殊编码: 自从Redis 2.2之后,很多数据类型都可以通过特殊编码的方式来进行存储空间的优化。其中,Has...

  • redis 第三讲 数据类型

    redis 五大数据类型 哪里获取redis常见数据类型操作命令 参考 redis 键(key) redis 字符...

  • Redis入门(2) - 数据类型

    Redis中的数据类型 字符串 散列 列表 集合 有序集合 Redis中的数据类型 Redis定义了这几种数据类型...

  • Redis数据类型(一)-对象系统

    Redis数据类型-Redis的对象系统 Redis有五种数据类型,String、List、Hash、Set、Zs...

  • 2018-04-19

    python与redis交互 redis数据类型: redis一共有5类数据类型:string, hash, li...

  • redis常用命令教程

    Redis 基础教程 Redis 教程、Redis 安装、Redis 配置、Redis 数据类型 Redis 命令...

网友评论

      本文标题:Redis的特殊数据类型

      本文链接:https://www.haomeiwen.com/subject/nwiagktx.html