[一]字符串类型(基本数据类型)
--->字符串类型是redis的最基本的数据类型
--->能存储任何形式的字符串,(用户邮箱,json化的对象,一张图片)
--->一个字符串类型的键允许存储的数据的最大容量是512MB
--->赋值:set key value
--->取值:get key
 
[二]散列类型(对象结构)
--->一个散列类型的数据,如java里一个对象的实例
--->key就是一个对象的名字
--->key里的字段,如javabean里的属性名
--->key里的字段值,如javabean里的属性的属性值
--->key的结构不固定,可以随意的扩展字段,和减少字段。多个类似的key可以不用关心批次的结构是否一致
--->一个key可以存在字段数量:2的32次方-1个
--->除了散列类型,Redis的其他数据类型同样不支持数据类型嵌套,比如集合类型的每个元素都只能是字符串,不能是另一个集合或散列表等
 
[三]列表类型(list结构)
--->列表类型可以存储一个有序的字符串列表。
--->元素不唯一
--->常用的操作是,向列表的两端添加元素,或者是获取列表的某一个片段
--->列表类型内部是使用双向链表实现的。向列表两端添加元素的时间复杂度为0,获取越接近两端的数据,速度越快。
--->常常把列表做队列使用。
--->可以存放的元素个数为:2的32次方-1个
 
[四]集合类型(set结构)
--->集合中每个元素都是不同的,且没有顺序的。
--->元素唯一
--->一个set型的集合键至多存储2的32次方-1个元素
--->由于集合类型在redis内部是使用值为空的散列表(hash table)实现的。所以这些操作的时间复杂度为0
--->最方便的是多个集合类型键之间还可以进行并集,交集,差集的运算。
 
[五]有序集合类型
--->有序集合类型和集合的区别在于有序
--->有序集合会为每个元素都关联一个分数。因此:获取分数最高,最低的前n个元素。
--->有序集合中的每个元素是不同的,但他们各自的分数可能是相同的
--->有序集合在某些方面和列表类型有些相似(1)二者都是有序的(2)二者都可获得一定范围的元素
--->有序集合和列表的区别
  (1)列表类型是通过链表实现的,获取两端数据的时间复杂度为0。
  (2)有序集合类型是使用散列表和跳跃表实现的。即使读取中间部分的数据,时间的复杂度为0
  (3)列表中不能简单调整某个元素的位置,但是有序集合可以。
  (4)有序集合要比列表类型更耗费内存

redis之(三)redis的数据类型的更多相关文章

  1. Redis系列三 Redis数据类型

    一 .Redis的五大数据类型 1.String(字符串) string是redis最基本的数据类型,可以理解成与 Memached一模一样的数据类型,一个key对应一个value. string 类 ...

  2. Redis系列(三)-Redis发布订阅及客户端编程

    阅读目录 发布订阅模型 Redis中的发布订阅 客户端编程示例 0.3版本Hredis 发布订阅模型 在应用级其作用是为了减少依赖关系,通常也叫观察者模式.主要是把耦合点单独抽离出来作为第三方,隔离易 ...

  3. redis学习三 redis持久化

      1,快照持久化 1简介      redis可以通过创建快照来获得某个时间点上的内存内容的数据副本,有了副本之后,就可以将副本发送到其他redis服务器上从而创建相同数据的从服务器,同时快照留在原 ...

  4. redis教程(三)-----redis缓存雪崩、缓存穿透、缓存预热

    缓存雪崩 概念 缓存雪崩是由于原有缓存失效(过期),新缓存未到期间.所有请求都去查询数据库,而对数据库CPU和内存造成巨大压力,严重的会造成数据库宕机.从而形成一系列连锁反应,造成整个系统崩溃. 解决 ...

  5. Redis(三)数据类型

    之前的文章中说了Redis的常见应用场景和特性,在特性章节中也大致说了数据结构契合场景.因为我想在更深入.更全面的学习Redis之前,了解场景和特性,才能在学习时更加全面且理解更透彻: redis的什 ...

  6. Redis 详解 (三) redis的五大数据类型详细用法

    目录 1.string 数据类型 2.hash 数据类型 3.list 数据类型 4.set 数据类型 5.zset 数据类型 6.系统相关命令 7.key 相关命令 我们说 Redis 相对于 Me ...

  7. Redis系列(二):Redis的数据类型及命令操作

    原文链接(转载请注明出处):Redis系列(二):Redis的数据类型及命令操作 Redis 中常用命令 Redis 官方的文档是英文版的,当然网上也有大量的中文翻译版,例如:Redis 命令参考.这 ...

  8. Redis(三)Redis基本命令操作与API

    一Redis 连接 Redis 连接命令主要是用于连接 redis 服务. 实例 以下实例演示了客户端如何通过密码验证连接到 redis 服务,并检测服务是否在运行: redis 127.0.0.1: ...

  9. Redis 基础:Redis 数据类型

    Redis 数据类型 Redis支持五种数据类型:string(字符串).hash(哈希).list(列表).set(集合)及zset(sorted set:有序集合). String(字符串) st ...

  10. Redis(三)内存模型

    本文转载自编程迷思,原文链接 深入学习Redis(1):Redis内存模型 前言 Redis是目前最火爆的内存数据库之一,通过在内存中读写数据,大大提高了读写速度,可以说Redis是实现网站高并发不可 ...

随机推荐

  1. [AHOI2008] 逆序对

    link 我们可以很容易的推断出$-1$是单调不降的,若$i>j$且$a_i$与$a_j$都没有填数,若填完之后$a_i>a_j$或者$a_i<a_j$,则对答案产生影响的只在$[i ...

  2. 监听scrollview

    http://blog.csdn.net/u012527802/article/details/47320009

  3. Linux系统关闭防火墙端口

    1. 打开防火墙端口 # iptables -I INPUT -p tcp --dport -j ACCEPT # iptables -I INPUT -p tcp --dport -j ACCEPT ...

  4. Linux系统查看系统信息

    1. CPU # lscpu # cat /proc/cpuinfo //可以知道每个cpu信息,如每个CPU的型号,主频等 2. 内存 # free -m # cat /proc/meminfo / ...

  5. 要back的题目 先立一个flag

    要back的题目 目标是全绿!back一题删一题! acmm7 1003 1004 acmm8 1003 1004 sysu20181013 Stat Origin Title Solved A Gy ...

  6. 【poj3522-苗条树】最大边与最小边差值最小的生成树,并查集

    题意:求最大边与最小边差值最小的生成树.n<=100,m<=n*(n-1)/2,没有重边和自环. 题解: m^2的做法就不说了. 时间复杂度O(n*m)的做法: 按边排序,枚举当前最大的边 ...

  7. 【BZOJ】1731: [Usaco2005 dec]Layout 排队布局

    [题意]给定按编号顺序站成一排的牛,给定一些约束条件如两牛距离不小于或不大于某个值,求1和n的最大距离.无解输出-1,无穷解输出-2. [算法]差分约束+最短路 [题解]图中有三个约束条件,依次分析: ...

  8. 【51NOD-0】1106 质数检测

    [算法]数学 #include<cstdio> #include<cmath> bool ok(int x) { int m=(int)sqrt(x+0.5); ;i<= ...

  9. flask函数已定义参数却出现takes 0 positional arguments but 1 was given的问题

    在flask中定义了一个简单的删除数据库内容的路由 测试却发现一直报错 说delete_history函数定义时没有接受参数,但是检查delete_history函数却发现没有问题 后来想了半天才发现 ...

  10. HTML语意化

    1.什么是HTML语义化? 根据内容的结构化(内容语义化),选择合适的标签(代码语义化)便于开发者阅读.写出更优雅的代码的同时让浏览器的爬虫和机器很好地解析.  2.为什么要语义化? 为了在没有CSS ...