zoukankan      html  css  js  c++  java
  • Redis数据模型

    Redis采用的是键值对的存储形式

    一、Redis的键key

      1)key的类型:可以用任何二进制序列作为key值

      2)key的取值规范:尽量做到见名知意

    二、Redis的值value

      Redis的数据结构类型值的就是Redis的值vlaue的类型

      Redis常用的数据结构类型:String、list、set、sortedSet、hash

      

      1)String类型

      常用命令:见http://doc.redisfans.com/

      应用场景:1.统计相关业务,例如朋友圈点赞  2.解决多线程的线程安全问题,具体实例可见https://www.cnblogs.com/lch-Hao/p/10927966.html

      

      2)List类型

      基于Linked List(双向链表)实现,元素是字符串类型

      特点:列表头尾增删快,中间增删慢(主要是由于两条记录顺序的链的增删效率)元素可重复出现,最多包含2^32-1个元素

      

       应用场景:处理排名类业务以及论坛回帖楼层

      

      3)Hash类型(散列)

      特点:由Field和与之关联的value组成的map键值对,Field和value是字符串类型,1个hash最多包含2^32-1个键值对

      

      应用场景:在Redis存储中,能用hash尽量用hash,因为由于Key值的减少可以节约内存空间,不适用的场景是需要设置键过期功能的key,Redis的key的过期功能只能对键操作,而Hash结构不能单独对某一个filed设置过期功能。

      4)Set类型(集合)

      特点:无序的、去重的,元素是字符串类型,最多包含2^32-1个元素

      

      应用场景:新浪微博中的共同关注功能,通过取用户关注中的交集实现

      5)SoredSet类型(Redis3.x以后支持的数据类型)

       特点:类似Set集合,有序的、去重的,元素是字符串类型,每一个元素都关联着一个浮点数分值(Score),并按照分值从小到大的顺序排列集合中的元素。分值可以相同,最多包含2^32-1个元素

      

       应用场景:需要有序且唯一的业务或操作,例:网易云音乐的排行榜功能

  • 相关阅读:
    爬虫工具简单整理
    vue单页面处理SEO问题
    深入浅出MyBatis-快速入门
    js的匿名函数 和普通函数
    Javascript位置 body之前、后执行顺序!
    eclipse中的ctrl+H使用中的问题
    Eclipse中ctrl+shift+r与ctrl+shift+t的区别
    Java 判断字符串是否为空的四种方法、优缺点与注意事项
    eclipse 快捷键
    只缩进新加一段代码的方法
  • 原文地址:https://www.cnblogs.com/lch-Hao/p/10928278.html
Copyright © 2011-2022 走看看