本文目录

  • 数据类型
    • string类型
      • string基本操作
      • string类型的扩展操作——解决主键重复的问题
      • string类型数据的扩展操作——设置时间限制
      • string数据类型的操作注意事项
      • string类型的应用场景
    • Hash类型
      • hash类型
      • hash类型的基本操作
      • hash类型数据扩展操作
      • hash类型数据操作的注意事项
      • hash的一个应用场景——电商网站购物车设计和实现
        • hash类型的应用场景——客户抢购
    • List类型
      • list类型基本操作:
      • list类型数据操作注意事项
      • list的业务场景——热点资讯展示
    • set数据类型
      • set的基本操作
      • set类型业务场景
      • set 扩展操作——随机
      • set业务场景
      • set类型数据操作的注意事项
      • set类型使用场景——不重复数据合并
      • set应用场景——去重
    • sort_set数据类型
      • 基本命令
        • sorted_ set类型数据的扩展操作
      • 扩展命令
    • Key操作
      • key基本操作
      • key扩展操作(时效性控制)
      • key扩展操作(查询模式)
      • key其他操作
    • 数据库通用操作
      • 数据库基本操作
      • DB相关操作
      • 总结:数据库应用的场景

数据类型

string类型

存储的数据:单个数据,最简单的数据存储类型,也是最常用的数据存储类型。
存储数据的格式:一个存储空间保存一个数据
存储内容:通常使用字符串,如果字符串以整数的形式展示,可以作为数字操作使用。

string基本操作

代码 实现功能
set key value 设置数据
get key 获取数据
del key 删除数据
mset key1 value1 [key2 value2 … ] 设置多个数据
mget key1 [key2 … ] 获取多条数据
strlen key 查询数据长度
append key value 在特定的数据上追加信息(没有就新建)

演示一下如何使用

需要注意的一个点:
根据上图,可以总结出一点,大量的数据进行传输的时候,一定要切开,分为更少的次数进行传输。比如说有一亿条,那么可以切为一百万条,之后分一百次传输。

string类型的扩展操作——解决主键重复的问题

代码 实现功能
incr key 某个键的值 + 1
incrby key increment_num 增加某个键,增加多少看increment_num
incrbyfloat key increment_num 自增某个键,按照浮点类型
decr key 某个键的值 - 1
decrby key decrease_num 减少某个键的值,减少数量参考decrease_num

演示样例:

所以这个num可以当做类似于MySQL当中的increment主键,达到主键不重复的目的。

现在再分析一种情况,几个小例子:
1、现在举行"最强程序员"的海选活动,通过微信投票,每个微信号4小时只能投一票。
2、电商商家开启热门商品推荐,但是一个商品不能一直处于热门期,一种商品只能维持三天热度,三天后热度自动取消。
3、热点网站会出现热点新闻,热点新闻最大的特征是时效性,怎样自动控制热点新闻的时效性

string类型数据的扩展操作——设置时间限制

代码 实现功能
setex key seconds value 写键值的时候,指定过期时间second
psetex key milliseconds value 写键值的时候,指定过期时间millisecond(毫秒级别)

演示样例:

通过这样控制数据生命周期,通过数据是否失效控制业务行为,适用于所有具有时效性限制控制的操作上。

string数据类型的操作注意事项

1、数据操作不成功的反馈和数据正常操作的反馈之间的差异
(1)运行结果是否成功 (integer)0 ==》false | (integer) 1 ==》true 成功
(2)表示运行结果的值 (integer)num ==》 操作之后的value的长度是num
(3)nil ==》 相当于null,空值

string类型的应用场景

每次我们刷微博的时候经常会看见页面上有很多的点赞,关注等信息,那么如何使用redis来实现呢??
下面测试一下:redis当中存储用户收到的点赞量,blog数,关注的数量,以用户、主键和属性值作为key

分析:数据格式 user

Redis基本数据类型和使用场景相关推荐

  1. Redis各个数据类型的使用场景

    Redis各个数据类型的使用场景 Redis支持五种数据类型: string(字符串) hash(哈希) list(列表) set(集合) zset(sorted set:有序集合). Redis列表 ...

  2. Redis五大数据类型与使用场景汇总!!(含完整实战案例,建议收藏)

    本文全面讲述了Redis的五大数据类型和使用场景,含完整实战案例,强烈建议收藏!! 大家好,我是冰河~~ 最近面试跳槽的小伙伴有点多,给我反馈的面试情况更是千差万别,不过很多小伙伴反馈说:面试中的大部 ...

  3. 一文搞定Redis五大数据类型及使用场景

    作者 | 周明尧 来源 | Java旅途(ID:Javatrip) 头图 |  CSDN 下载自东方IC Redis 是一种基于键值对的NoSQL数据库,它的值主要由string(字符串),hash( ...

  4. (一)Redis常用数据类型及应用场景(Redis的解决方案汇总)

    文章目录 一.Redis的介绍和安装 1.Redis是什么? 2.性能 3.支持的数据类型 二.数据类型实践案例 (一).String类型 (二).Hash类型(相对套娃) (三).list类型 (四 ...

  5. Redis常用数据类型及使用场景

    String(字符串) 常用命令 SET key value GET key GETRANGE key start end #返回[start, end]区间的字符串,key不存在时返回空字符串 MG ...

  6. Redis基本数据类型、应用场景、操作指令

    目录​​​​​​​ 字符串(String) 类型介绍 应用场景 操作指令 散列(hashes) 类型介绍 应用场景 操作指令 列表(list) 类型介绍 应用场景 操作指令 集合(sets) 类型介绍 ...

  7. 关于redis的几件小事(三)redis的数据类型与使用场景

    1.string 这是最基本的类型了,就是普通的set和get,做简单的kv缓存. 2.hash 这个是类似map的一种结构,这个一般就是可以将结构化的数据,比如一个对象(前提是这个对象没嵌套其他的对 ...

  8. 超强Redis数据类型与应用场景总结!!

    关于Redis 我们先来聊聊Redis的基础知识. 基于键值对的存储系统 :字典形式. 五种数据结构:字符串(String),Hash(字典),列表(List),集合(Set),有序集合(Sorted ...

  9. Redis的数据类型以及每种数据类型的使用场景

    人就是很奇怪的动物,很简单的问题往往大家都容易忽略,当我们在使用分布式缓存Redis的时候,一个最简单的问题往往被人忽略,Redis的数据类型以及每种数据类型的使用场景是什么? 是不是觉得这个问题很基 ...

最新文章

  1. python绘制3维图-Python 绘制 3 维以上的高维图
  2. C#技术分享【PDF转换成图片——13种方案】
  3. 驱动开发类文章公告篇
  4. Subversion的权限控制
  5. mybatis select count(*) 一直返回0 mysql_Mybatis教程1:MyBatis快速入门
  6. python绘制不带颜色曲线图_Python画曲线图
  7. python最长匹配_二分图最大匹配:匈牙利算法的python实现
  8. javascript for循环 日期 select
  9. centos系统中卸载软件【例子为卸载百度硬盘】
  10. windows技巧——notepad2 取代自带 notepad ,功能强大!
  11. 平面设计计算机基本配置,平面设计电脑配置要求
  12. 数据以及空值数据处理方法
  13. CentOS导入CA证书
  14. 关于python中矩阵相乘需要注意的事情
  15. RecyclerView或是ListView(列表)点击某个条目保持选中【非常巧妙】
  16. ACM算法模板小汇总
  17. Kettle连接 SAP Hana 数据库
  18. 【两种DbParameter的使用方式】防止SQL注入 C# MVC
  19. HIS软件项目布置的学习day01
  20. Huggingface简介及BERT代码浅析

热门文章

  1. Voxceleb2 视频数据集下载(国内链接)
  2. 安卓古筝软件_超详细自学软件测评|小提琴/吉他/电子琴/尤克里里/电子鼓
  3. 线上培训上课实录整站设计制作开发全能培训-彭亮-专题视频课程
  4. word2vec——训练自己的word2vec模型
  5. Spring切入点表达式
  6. bugku-misc练习(一)
  7. PyTorch学习笔记(19) ——NIPS2019 PyTorch: An Imperative Style, High-Performance Deep Learning Library
  8. python控制机器人走8字_爱,死亡和机器人 第十四集 齐马蓝 中文字幕(Python处理utf8文件获取想要的内容)...
  9. 在50户人家的狗中寻找病狗数量的趣味题目(详细解释)
  10. 分式怎么开根号_怎么打出根号二(教你如何写出√2的连分式)