首页 > 数据库 >Redis笔记

Redis笔记

时间:2024-10-08 20:00:55浏览次数:9  
标签:数据库 元素 Redis value 获取 笔记 key

NoSQL

Not only SQL,泛指非关系型数据库

实际业务中:NoSQL+RDBMS(e.g.阿里架构引进)

20241007175816

NoSQL数据库的四大分类:

  • KV键值对:Redis
  • 文档型数据库:MongoDB
  • 列存储数据库:HBase
  • 图形数据库:Neo4j

Redis

Remote Dictionary Server,远程字典服务,也被称之为结构化数据库

有16个数据库,默认使用第0个

清除所有数据:flushall

切换数据库:select 2

查看当前数据库的key数量:dbsize

Redis特点:

  • 数据类型丰富
  • 支持持久化
  • 集群
  • 事务

Redis单线程:

  • Redis是基于内存操作,CPU不是Redis性能瓶颈

Redis为什么单线程还这么快:

  • 误区:高性能的服务器一定是多线程的
  • Redis是将所有数据放在内存中,内存的读写速度非常快

Redis五大数据类型

Redis-Key

20241008142003

常用命令_菜鸟教程

全部命令_官方文档

String

90%的请求都是String类型

  • append:在字符串后追加
  • setex:设置带过期时间的key-value
  • setnx:设置key-value,只有key不存在时才设置
  • mset:设置多个key-value
  • msetnx:设置多个key-value,只有key不存在时才设置
  • getrange:获取字符串指定下标范围的值
  • setrange:设置字符串指定下标范围的值

List

可栈、队列、阻塞队列

  • lpush、rpush、lpop、rpop:元素的插入和删除
  • lrange:获取指定下标范围的元素
  • lindex:下标获取元素
  • llen:列表总长度

Set

不可重复的集合

  • sadd:添加元素
  • smembers:获取所有元素
  • sismember:判断元素是否存在
  • scard:获取集合中元素个数
  • srem:删除指定元素
  • srandmember:从集合中随机获取元素

Hash

Map集合,key-map。适合用于存储经常改变的对象

  • hset:设置key-map
  • hmset:设置多个key-map
  • hget:获取key-map
  • hgetall:获取所有key-value
  • hkeys:获取所有key
  • hvals:获取所有value
  • hdel:删除key-map
  • hlen:获取key-map长度

ZSet

有序的set集合(sorted set)

每个元素都会关联一个double类型的分数,通过分数进行排序

  • zadd:添加元素
  • zrange:获取指定下标范围的元素
  • zrangebyscore:根据分数获取元素
  • zrem:删除指定元素
  • zcount:获取指定分数范围的元素数量

Redis三种特殊数据类型

Geospatial

地理位置,存储经纬度

底层是Zset,可以用Zset的命令操作Geo

  • geoadd:添加地理位置,纬度_经度_名称
  • geopos:获取地理位置
  • geodist:计算两个位置之间的距离
  • geohash:将地理位置转换为hash值
  • georadius:指定经纬度为中心,某一半径内的元素
  • georadiusbymember:指定元素为中心,某一半径内的元素

HyperLogLog

基数统计,允许容错

不存储数据,只存储数据的数量

  • pfadd:添加元素
  • pfcount:获取元素数量
  • pfmerge:合并两个HyperLogLog

BitMap

位图,只有0和1两个状态

  • setbit:设置某key的值
  • getbit:获取某key的值
  • bitcount:统计定范围value为1的个数

事务

一组Redis命令的集合,不保证原子性(Redis命令保持原子性)

开启事务:

multi       //开启事务
...         //命令入队
exec        //执行事务

放弃事务:

discard     //放弃事务

watch监控:

  • 悲观锁:认为一定会出问题,上锁
  • 乐观锁:认为不会出问题,不上锁。更新时判断是否有人修改

Jedis

Redis官方推荐的java连接开发工具,使用Java操作Redis中间件

Springboot整合

Redisconf详解

Redis持久化

Redis发布订阅

Redis主从复制

Redis缓存穿透和雪崩

标签:数据库,元素,Redis,value,获取,笔记,key
From: https://www.cnblogs.com/Weenz-y/p/18452387

相关文章

  • 高精度减法笔记
    高精度减法vector<int>u,v;boolcmp(vector<int>&u,vector<int>&v){//比较两个数大小 if(u.size()!=v.size())//前数不等于后数 returnu.size()>v.size();//返回前数是否大于后数,是=ture,否=false elsefor(inti=u.size()-1;i>=0;i--)//前数等于后数,遍......
  • Django学习笔记十四:系统框架总结
    Django系统框架的主要特点Django是一个功能强大的PythonWeb框架,以下是对其系统框架的总结:一、MTV架构模型(Model):负责与数据库交互,处理数据的存储、检索、更新和删除等操作。通过定义数据模型类,Django可以自动生成数据库表结构,或者根据现有的数据库反向生成模型类......
  • 前端开发笔记--黑马程序员1
    文章目录前端开发工具--VsCode前端开发基础语法VsCode优秀插件Chinese--中文插件AutoRenameTag--自动重命名插件openinbrowserOpeninDefaultBrowserOpeninOtherBrowserLiveServer--实时预览前端开发工具–VsCode轻量级与快速启动快速加载:VSCode......
  • systemverilog笔记
    变量类型变量名状态数是否带符号比特数logic4无1bit2无1byte2有8shortint2有16int2有32longint2有64integer4有32time4无64$isunknown(表达式):在表达式任意位出现X或者Z时返回1。数组数组初始化使用单引号加大括......
  • 软件测试学习笔记丨Mitmproxy使用
    本文转自测试人社区,原文链接:https://ceshiren.com/t/topic/32334一、简介Mitmproxy是一款开源、免费的代理工具,支持Mac、Windows、Linux。相比其他代理工具,可以通过Python和Mitmproxy工具本身的插件机制,实现通过脚本对Mitmproxy的完全控制。强大的可拓展性和可定制性,可以让测试工程......
  • 深度除氟工艺-电化学法(学习笔记)
    电化学法通过以下操作达到深度除氟的目的:一、电化学原理应用电化学法主要利用电化学原理,在特定的电解装置中,通过电极的氧化还原反应,将废水中的氟离子进行转化和处理。这种转化可以是将氟离子转化为不溶性的氟化物,使其沉积在电极表面或通过其他方式从废水中分离出来。二、......
  • ROS理论与实践学习笔记——3 ROS运行管理之ROS话题名称设置
        名称重映射是为名称起别名,为名称添加前缀,该实现比节点重名更复杂些,不单是使用命名空间作为前缀、还可以使用节点名称最为前缀。两种策略的实现途径有多种:(1)rosrun命令(2)launch文件(3)编码实现3.1rosrun设置话题重映射    rosrun名称重映射语法:rorun......
  • 【Redis】持久化(下)-- AOF
    文章目录AOF概念如何使用AOFAOF工作流程命令写入演示文件同步策略`AOF`的重写机制概念触发重写机制`AOF`重写流程启动时数据恢复混合持久化总结AOF概念AOF持久化:以独立日志的方式记录每次的写命令,重启时再重新执行AOF文件中的命令达到恢复数据的目的.AOF的主要......
  • Docker 学习笔记-基本概念与安装
    Docker学习笔记基本概念镜像:Docker的镜像概念类似于虚拟机里的镜像,是一个只读的模板,一个独立的文件系统,包括运行容器所需的数据,可以用来创建新的容器。DockerFile;镜像可以基于DockerFile构建,DockerFile是一个描述文件,里面包含若干条命令,每条命令都会对基础文件系统创建新......
  • 京东面试:Redis主从切换,锁失效怎么办?
    文章很长,且持续更新,建议收藏起来,慢慢读!疯狂创客圈总目录博客园版为您奉上珍贵的学习资源:免费赠送:《尼恩Java面试宝典》持续更新+史上最全+面试必备2000页+面试必备+大厂必备+涨薪必备免费赠送:《尼恩技术圣经+高并发系列PDF》,帮你实现技术自由,完成职业升级,薪......