一、字符串:

  redis中最为基础的存储类型,以二进制存储,value的字符串最多512M,Key做多1024字节。

  常用命令:赋值(set)、取值(get)、删除(del),递增(incr/incrby keyname 5)、递减(decr/decrby keyname 5)、追加(append返回值是长度)。

二、哈希

  可以看作是一个String的key和String的value的map容器。非常适合存储对象的属性。

  常用的命令:赋值(hset eg : hset myhash name niuyonggang)、取值(hget eg:hget myhash name)、hmset、hmget、hgetall、hdel、del、hincrby、hexists、hlen。

三、List

  List类型是按照插入顺序排序的一个字符川的链表,和数据结构中的普通链表是一样的。

  存储方式:1、ArrayList使用数组存储。LinkedList使用双向链方式存储。

  操作命令:两端添加(lpush、rpush、lpushx)、查看列表(lrange)、两端弹出(lpop、rpop)、获取列表的元素的个数(llen)、删除(lrem)、中间添加(lset、linsert)、rpoplpush。

  rpoplpush的使用场景:消息队列逻辑处理过程中,用于反转状态用到,原因是数据不至于丢失

四、Set

  将Set可以看作是没有排序的字符集、元素不允许重复。

  常用命令:添加/删除(sadd/srem)、显示集合(smembers)、存在(sismember)、差集(sdiff)、交集(sinter)、并集(sunion),个数(scard)、srandmember、sdifferstore、sintersotre、sunionstore.

  使用场景:跟踪一些唯一性数据、用于维护数据之间的关联关系。

五、sorted-set

  和set类似,只不过元素在集合中的位置是有序的,使用场景:积分排行榜、构建索引数据。

  常用命令:zadd、zrem、zcard、zscore、zrange、zrevrange...

redis的数据结构及操作命令的更多相关文章

  1. 探索Redis设计与实现4:Redis内部数据结构详解——ziplist

    本文转自互联网 本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://github.com/h2pl/Java-Tutorial ...

  2. 【转】Redis内部数据结构详解——ziplist

    本文是<Redis内部数据结构详解>系列的第四篇.在本文中,我们首先介绍一个新的Redis内部数据结构--ziplist,然后在文章后半部分我们会讨论一下在robj, dict和zipli ...

  3. 深度分析:Redis 的数据结构及其使用场景分析,原来这么简单?

    Redis基础数据结构有哪些? 一.String(字符串) 在任何一种编程语言里,字符串String都是最基础的数据结构, 那你有想过Redis中存储一个字符串都进行了哪些操作嘛? 在Redis中St ...

  4. redis bitmap数据结构之java对等操作

    在之前的文章中,我们有说过bitmap,bitmap在很多场景可以应用,比如黑白名单,快速判定,登录情况等等.总之,bitmap是以其高性能出名.其基本原理是一位存储一个标识,其他衍生知道咱就不说了, ...

  5. Redis系列之key操作命令与Redis中的事务详解(六)

    序言 本篇主要目的有二: 1.展示所有数据类型中key的所有操作命令,以供大家学习,查阅,更深入的挖掘redis潜力. 2.掌握redis中的事务,让你的数据完整性一致性拥有更优的保障. redis命 ...

  6. Redis基本数据结构总结之STRING和LIST

    Redis基本数据结构总结前言 Redis的特点在于其读写速度特别快,因为是存储在内存中的,其非常适合于处理大数据量的情况:还有一个是其不同于其他的关系型数据库,Redis是非关系型数据库,也就是我们 ...

  7. Redis基本数据结构总结之SET、ZSET和HASH

    Redis基本数据结构总结 前言 Redis的特点在于其读写速度特别快,因为是存储在内存中的,其非常适合于处理大数据量的情况:还有一个是其不同于其他的关系型数据库,Redis是非关系型数据库,也就是我 ...

  8. Redis各种数据结构性能数据对比和性能优化实践

    很对不起大家,又是一篇乱序的文章,但是满满的干货,来源于实践,相信大家会有所收获.里面穿插一些感悟和生活故事,可以忽略不看.不过听大家普遍的反馈说这是其中最喜欢看的部分,好吧,就当学习之后轻松一下. ...

  9. 聊一聊Redis的数据结构

    如果没有记错的话,应该是在两个月前把 我们经常看到此类的文章: Redis的五种数据结构 Redis的数据结构以及对应的使用场景 其实以数据结构这个词去说明Redis的String.Hash.List ...

随机推荐

  1. Oracle 报错 ORA-03290的处置

    MySql 的tuancate命令是直接truncate tableName,但在Oracle需要写成truncate table tableName,改正就好了. --END-- 2019.10.1 ...

  2. AVQueuePlayer

    想要视频一个接一个的无缝连续播放么? 还在用mpmovieplayercontroller么?out了! 介绍一个可以实现无缝连续播放视频的东西-------AVQueuePlayer ! AVQue ...

  3. WPF学习笔记 - .Net Framework的分离存储技术

    写入: protected override void OnClosed(EventArgs e) { base.OnClosed(e); IsolatedStorageFile f = Isolat ...

  4. umask 介绍

    umask码 是用户创建文件或目录的初始权限设置值 文件或目录的权限:读: r — 4写: w — 2执行: x — 1 输入umask 查看umask 码 设定umask码,umask 0033 1 ...

  5. CACTI批量添加linux主机sh脚本

    关于批量添加就三个文件:add_hosts.sh,ips.txt,thold_test.php,关于如何使用,更是简单 ./add_hosts.sh --add #执行批量工作./add_hosts. ...

  6. react-native-scrollable-tab-view第一次加载下划线不显示解决

    今天在使用react-native-scrollable-tab-view的时候出现下划线第一次显示的时候不显示,需要点击切换才可以显示. 通过各种实践发现是0.6.7版本问题. 解决实现: reac ...

  7. Java并发——volatile

    CPU的内存模型如下:

  8. 【18.065】Lecture2

    由于这一课的教材放出来了,所以直接将整个pdf放上来.   

  9. shell脚本常见的结构化函数

    if-then if command then command fi if-then-else if command then command else command fi 嵌套if if comm ...

  10. 剑指offer_斐波那契数列

    package solution; public class Fibonacci { /* * f(n) = f(n-1) + f(n-2) n>1 * f(0) = 0 * f(1) = 1 ...