• redis之(三)redis的数据类型


    [一]字符串类型(基本数据类型)
    --->字符串类型是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)有序集合要比列表类型更耗费内存
  • 相关阅读:
    事件的解密
    C#世界中的委托
    这次是C#中的接口
    完全二叉树的建立和翻转
    全排列的应用
    网易笔试-按位或运算
    柱状图的最大矩形--单调栈
    Linux将线程绑定到CPU内核运行
    Windows多线程与线程绑定CPU内核
    B+树介绍
  • 原文地址:https://www.cnblogs.com/shangxiaofei/p/5528369.html
Copyright © 2020-2023  润新知