Redis 小白指南(二)- 聊聊五大类型:字符串、散列、列表、集合和有序集合

引言

  开篇《Redis 小白指南(一)- 简介、安装、GUI 和 C# 驱动介绍》已经介绍了 Redis 的安装、GUI 和 C# 驱动等基本知识,这一篇主要是梳理一下 Redis 的 5 种类型的信息与指令。

目录

  • 字符串类型(String)
  • 散列类型(Hash)
  • 列表类型(List)
  • 集合类型(Set)
  • 有序集合类型(SortedSet)
  • 其它命令

字符串类型(String)

  1.介绍:

  字符串类型是 Redis 中最基本的数据类型,可以存储二进制数据、图片和 Json 的对象。

  字符串类型也是其他 4 种数据库类型的基础,其它数据类型可以说是从字符串类型中进行组织的,如:列表类型是以列表的形式组织字符串,集合类型是以集合的形式组织字符串。

  

  2.命令:

  【备注】包括 INCR 在内的所有 Redis 命令都是原子操作。

  3.命令测试:

图:简单的命令测试

  4.命名:

  建议:“对象类型:对象ID:对象属性”命名一个键,如:“user:1:friends”存储 ID 为 1 的用户的的好友列表。对于多个单词则推荐使用 “.” 进行分隔。

  5.应用:

  (1)访问量统计:每次访问博客和文章使用 INCR 命令进行递增;

  (2)将数据以二进制序列化的方式进行存储。

  

散列类型(Hash)

  1.介绍:

  散列类型采用了字典结构(k-v)进行存储。

  散列类型适合存储对象。可以采用这样的命名方式:对象类别和 ID 构成键名,使用字段表示对象的属性,而字段值则存储属性值。如:存储 ID 为 2 的汽车对象。

  2.命令:

  3.命令测试:

图:简单的命令测试

  4.应用:

  (1)文章内容存储:

列表类型(List)

  1.介绍:

  列表类型(list)可以存储一个有序的字符串列表,常用的操作是向两端添加元素。

  列表类型内部是使用双向链表实现的,也就是说,获取越接近两端的元素速度越快,代价是通过索引访问元素比较慢。

  2.命令:

  3.命令测试:

  【解析】向列表的左边添加元素“1”,再依次加入“2”、“3”

  然后:

  在列表的右边依次加入两个元素“0”、“-1”:

  4.应用:

  (1)显示社交网站的新鲜事、热门评论和新闻等;

  (2)当队列使用;

  (3)记录日志。

集合(Set)

  1.介绍:  

  字符串的无序集合,不允许存在重复的成员。

  多个集合类型之间可以进行并集、交集和差集运算。

  2.命令:

  3.图解交、并、差集:

  4.命令测试:

  

  5.应用:

  (1)文章标签。

有序集合(SortedSet)

  1.介绍:

  在集合类型的基础上添加了排序的功能。

  2.命令:

  3.命令测试:  

 

  4.应用:

  (1)点击量排序

其它命令

  1.获得符合规则的键名列表

KEYS pattern

  pattern 支持 glob 风格通配符:

  2.判断一个键是否存在

EXISTS key

  如果键存在则返回整数类型 1,否则返回 0

  3.删除键

DEL key [key ...]

  可以删除一个或者多个键,返回值是删除的键的个数

  4.获得键值的数据类型

TYPE key

  这里只是进行了一些命令的整理,具体的使用很多时候还是需要自己进行到官方文档进行学习和搜索。

系列

  《Redis 小白指南(一)- 简介、安装、GUI 和 C# 驱动介绍》

  《Redis 小白指南(二)- 聊聊五大类型:字符串、散列、列表、集合和有序集合》

  《Redis 小白指南(三)- 事务、过期、消息通知、管道、优化内存空间》

  《Redis 小白指南(四)- 数据的持久化保存》


【博主】反骨仔

【原文】http://www.cnblogs.com/liqingwen/p/6919308.html

【GitHub】https://github.com/liqingwen2015/Wen.Helpers/blob/master/Wen.Helpers.Common/Redis/RedisHelper.cs

【参考】《Redis 入门指南》

Redis 小白指南(二)- 聊聊五大类型:字符串、散列、列表、集合和有序集合...相关推荐

  1. Redis 小白指南(一)- 简介、安装、GUI 和 C# 驱动介绍

    原文:Redis 小白指南(一)- 简介.安装.GUI 和 C# 驱动介绍 Redis 小白指南(一)- 简介.安装.GUI 和 C# 驱动介绍 目录 简介 安装 入门指令 GUI 工具 C# 驱动介 ...

  2. redis源码剖析(五)—— 字符串,列表,哈希,集合,有序集合

    文章目录 对象 REDIS_STRING (字符串) REDIS_LIST 列表 REDIS_SET (集合) REDIS_ZSET (有序集合) REDIS_HASH (hash表) int ref ...

  3. python使用redis有序集合_Redis 有序集合(sorted set)

    Redis 有序集合(sorted set) Redis 有序集合和集合一样也是 string 类型元素的集合,且不允许重复的成员. 不同的是每个元素都会关联一个 double 类型的分数.redis ...

  4. php计算字符串散列,php计算字符串的SHA-1散列函数sha1()

    实例 计算字符串 "Hello" 的 SHA-1 散列:<?php $str = "Hello"; echo sha1($str); ?> 定义和用 ...

  5. 03,redis多键值对,哈希散列hset

    // 客户端Jedis连接到服务端,并选择第2个数据库Jedis jedis = new Jedis("127.0.0.1",6379);jedis.select(1);jedis ...

  6. jedis操作set_Jedis对redis的五大类型操作代码详解

    本篇主要阐述Jedis对redis的五大类型的操作:字符串.列表.散列.集合.有序集合. JedisUtil 这里的测试用例采用junit4进行运行,准备代码如下: private static fi ...

  7. redis使用指南(一)

    redis使用指南 一.Redis简介 redis展开来看就是remote directory server.redis是开源的,基于内存的数据结构存储,可以作为数据库,缓存系统或者消息队列.它支持数 ...

  8. Redis入门指南(第2版) Redis设计思路学习与总结

    https://www.qcloud.com/community/article/222 宋增宽,腾讯工程师,16年毕业加入腾讯,从事海量服务后台设计与研发工作,现在负责QQ群后台等项目,喜欢研究技术 ...

  9. StackExchange.Redis学习笔记(二) Redis查询 五种数据类型的应用

    StackExchange.Redis学习笔记(二) Redis查询 五种数据类型的应用 原文: StackExchange.Redis学习笔记(二) Redis查询 五种数据类型的应用 Connec ...

最新文章

  1. JavaScript函数的各种调用模式
  2. 复合火焰探测传感器_火灾探测器分类
  3. TP中给select下拉框选中的内容搜索选中seleted
  4. 【BZOJ3530】数数(AC自动机,动态规划)
  5. opencv 仿射变换与透视变换详解
  6. Adobe(Pr Ae)动态图形模板
  7. java比较常用的缓存技术_常用缓存技术
  8. 如何使用 LumaQQ 核心 API
  9. Allegro-Flash焊盘
  10. java 英文句子切分_java 将英文文章 按句子,标点符号分割,正则表达式
  11. foxmail 不知道这样的主机
  12. 备份微信聊天记录为 txt 格式保存(免 root)
  13. 词袋模型 matlab,【火炉炼AI】机器学习051-视觉词袋模型+极端随机森林建立图像分类器...
  14. 淘晶驰串口屏入门(四)进度条、滑块、定时器、单选框、复选框、二维码
  15. 什么是ASP.NET?
  16. CSDN Markdown编辑器将公式取消斜体的方法
  17. 2020长三角区块链应用创新大赛复赛第三场于能链科技成功举办!
  18. 2022-09-12-kvm介绍
  19. java 100天是周几_编写一段程序。使用Java8的日期时间报打印当前日期的后100天是哪一天?星期几?然后,在...
  20. visual sourcesafe 的下载,vss2005管理vs2010项目,安装方法,配置及用法教程

热门文章

  1. Python架构(一)
  2. 如何解决在onCreate()中获取View的width和Height为0?
  3. 获取GitHub上远程分支内容
  4. [转]个人开发者做一款Android App需要知道的事情
  5. 分布式文件系统—HDFS—核心设计
  6. spring中AOP动态代理的两种方式
  7. MVC运转-平台分发
  8. STL Deque 容器
  9. window bat
  10. OpenStack三种类型的NAT转换