Redis各种数据类型的应用场景

redis是一种key values形式的非关系型数据库,通过内存存储,也可以把数据持久化到本地文件中。

redis支持丰富的数据类型,String,list,set,zset,hash,下面说一下各种数据类型的应用场景。

String:

  string 类型进行数据存储的时候主要有get,set,incr(increase加一递增),decr(decrease减一递减)等操作。incr等指令本身具有原子操作,所以我们可以利用redis的incr,incrby,decr,decrby来实现原子计数操作。例如:在某场景下面有三个用户同事访问,然后对其进行加一操作,那么最后的值一定会加三。可以利用这一特性来实现业务上的统计数据的需求。

Llists:

  redis的list底层不是数组,而是链表。lists常用的操作有lpush(左边插入),rpush(右边插入),lrange(取数据,lranger key 开始下标 结束下标)。每往lists中插入一条数据,这条数据将作为下标为0的数据。栈后进先出的那种形式。

例如:我们可以利用list来实现一个消息队列,而且可以确保先后顺序,可以利用lrange来实现分页功能。在博客系统中,每篇博文的评论都可以放在单独一个list中。

set:

  reids的集合,是一种无序的集合,集合中的元素没有先后顺序。

  集合中相关的操作也很丰富,如添加元素,删除已有元素,取交集,取并集,取差集。

  例如:QQ有一个社交功能叫“好友标签”,大家可以给你的好友贴标签,这时候就可以用redis集合来实现,把用户的每个集合存在一个集合中。

       如果要查看共同好友,也可以把好友存在集合中,比较交集。

zset:

  redis的有序集合,每个集合都提供了一个序号,赭石排序的依据。

  例如:暂无。

hash:

  hashes存的是字符串和字符串之间的映射,比如一个用户要存储其全名,姓氏,年龄等,就适合用hash。hash比较像map。

  

时间: 2024-08-22 16:38:54

Redis各种数据类型的应用场景的相关文章

Redis常用数据类型及应用场景之ZSet

后面再列举一些Redis其他的一些应用场景 原文地址:https://www.cnblogs.com/hopeiscoming/p/12591323.html

Redis各个数据类型的使用场景[整理]

Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合). Redis列表命令 参考:http://www.redis.net.cn/tutorial/3501.html 使用场景 String String数据结构是简单的key-value类型,value其实不仅可以是String,也可以是数字. 常规key-value缓存应用: 常规计数:微博数,粉丝数等. hash Redis hash是一个stri

Redis常用数据类型及应用场景之String

这里提一点,如果要存对象到redis里的话,有两种可以考虑的实现方案 1,用set,也即将对象转换为一个json,然后存到一个key里 2,用Mset,也即将对象中的每一个属性,单独Set到Redis里,每个属性的key用id:属性名来标识 这两种方式,从效率上讲,第二种要高很多 原文地址:https://www.cnblogs.com/hopeiscoming/p/12591402.html

Redis常用数据类型及应用场景之Set

这里SDiff是差集的意思 原文地址:https://www.cnblogs.com/hopeiscoming/p/12591316.html

redis数据类型及使用场景

Redis数据类型  String: Strings 数据结构是简单的key-value类型,value其实不仅是String,也可以是数字. 常用命令:  set,get,decr,incr,mget 等. 应用场景:String是最常用的一种数据类型,普通的key/ value 存储都可以归为此类.即可以完全实现目前 Memcached 的功能,并且效率更高.还可以享受Redis的定时持久化,操作日志及 Replication等功能.除了提供与 Memcached 一样的get.set.in

Redis常用数据类型介绍、使用场景及其操作命令

Redis常用数据类型介绍.使用场景及其操作命令 本文章同时也在cpper.info发布. Redis目前支持5种数据类型,分别是: 1.String(字符串) 2.List(列表) 3.Hash(字典) 4.Set(集合) 5.Sorted Set(有序集合) 下面就分别介绍这五种数据类型及其相应的操作命令. 1. String(字符串) String是简单的 key-value 键值对,value 不仅可以是 String,也可以是数字.String在redis内部存储默认就是一个字符串,被

转 redis 五种数据类型的使用场景

http://www.cnblogs.com/lori/archive/2012/05/15/2501862.html Redis学习笔记~Redis提供的五种数据结构 回到目录 分布式缓存,消息队列,替代Session呵呵(Session太不稳定了,呵呵)=Redis Redis的崛起绝非偶然,它确实有自己的新东西在里面,它不像Memcached,只能将数据存储在内存中,它提供了持久化机制,避免了場机后的雪崩的问题,即服务器出现问题后,内存中保留的原始数据全部丢失,需要重新组织数据到内存,这时

redis 五种数据类型的使用场景

String [html] view plain copy 1.String 常用命令: 除了get.set.incr.decr mget等操作外,Redis还提供了下面一些操作: 获取字符串长度 往字符串append内容 设置和获取字符串的某一段内容 设置及获取字符串的某一位(bit) 批量设置一系列字符串的内容 应用场景: String是最常用的一种数据类型,普通的key/value存储都可以归为此类,value其实不仅是String, 也可以是数字:比如想知道什么时候封锁一个IP地址(访问

redis五种数据类型的使用场景

string 1.String 常用命令: 除了get.set.incr.decr mget等操作外,Redis还提供了下面一些操作: 获取字符串长度 往字符串append内容 设置和获取字符串的某一段内容 设置及获取字符串的某一位(bit) 批量设置一系列字符串的内容 应用场景: String是最常用的一种数据类型,普通的key/value存储都可以归为此类,value其实不仅是String, 也可以是数字:比如想知道什么时候封锁一个IP地址(访问超过几次).INCRBY命令让这些变得很容易,