Redis的基本知识

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
简介: 简单了解一下Redis

- Redis介绍
Redis(Remote Dictionary Server)(远程数据服务)的缩写,由意大利人 antirez(Salvatore Sanfilippo)开发的一款内存高速缓存数据库。是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。
简单说 Redis 是一个高性能的 key-value 数据库。每秒可执行操作高达10万+QPS

- Redis特点
1.支持数据持久化,可将内存中的数据保存在磁盘,重启时再次加载
2.支持 KV 类型数据,也支持其他丰富的数据结构存储
3.支持数据备份,即 master-slave 模式的数据备份

- Redis数据结构
STRING:字符串、整数或浮点数
LIST:列表,可存储多个相同的字符串
SET:集合,存储不同元素,无序排列
HASH:散列表,存储键值对之间的映射,无序排列
ZSET:有序集合,存储键值对,有序排列

- Redis操作使用
1.Key
Key的命名规则不同于一般语言,键盘上除了空格、\n换行外其他的大部分字符都可以使用。像“my key”和“mykey\n”这样包含空格和换行的key是不允许的。我们在使用的时候可以自己定义一个Key的格式。例如 object-type:id:field。
Key不要太长。占内存,查询慢。Key不要太短。像u:1000:pwd 就不如 user:1000:password 可读性好
2.String
String是Redis最基本的类型,Redis的String可以包含任何数据。包括jpg图片或者序列化的对象。
单个value值最大上限是1G字节。
3.List
List类型其实就是一个双向链表。通过push,pop操作从链表的头部或者尾部添加删除元素。
这使得List既可以用作栈,也可以用作队列。
栈 先进后出 同一端进出
队列 先进先出 一端进,另外一端出
image.png

List类型经常用于抢购,通过队列形式去实现高并发下的商品发售购买流程。

4.Set
Redis的Set是String类型的无序集合。不允许有重复元素
Set元素最大可以包含(2的32次方-1)个元素。关于Set集合类型除了基本的添加删除操作,其他有用的操作还包含集合的取并集(union),交集(intersection),差集(difference)。通过这些操作可以很容易的实现聊天软件中的好友推荐功能。
5.Zset
和Set一样sorted set也是String类型元素的集合,不允许有重复元素
不同的是每个元素都会关联一个权(score)。通过权值可以有序的获取集合中的元素。
image.png
6.Hash
key=>value(feild:value),适合存储key=>value对应格式的数据。json对应关系、对象对应关系、关联数组,哈希类型也是Redis用的比较多类型之一

目录
相关文章
|
存储 NoSQL 算法
高并发核心技术Redis系列(三)--------基本知识(下)
在我们做站点流量统计的时候一般会统计页面UV(独立访客:unique visitor)和PV(即页面浏览量:page view)。
265 0
高并发核心技术Redis系列(三)--------基本知识(下)
|
存储 NoSQL Java
|
存储 NoSQL 数据库
【攻克Redis】Redis基本知识
【攻克Redis】Redis基本知识 发展史 Redis是一种基于键值对的Nosql数据库,Redis值可以是string(字符串)、hash(哈希)、list(列表)、set(集合)、zset(有序集合)、Bitmaps(位图)、 HyperLogLog、GEO(地理信息定位)等多种数据结构和算法组成 Redis会将所有数据都存放在内存 中,所以它的读写性能非常惊人。
1357 0
|
6月前
|
缓存 NoSQL 关系型数据库
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
|
1月前
|
缓存 负载均衡 监控
135_负载均衡:Redis缓存 - 提高缓存命中率的配置与最佳实践
在现代大型语言模型(LLM)部署架构中,缓存系统扮演着至关重要的角色。随着LLM应用规模的不断扩大和用户需求的持续增长,如何构建高效、可靠的缓存架构成为系统性能优化的核心挑战。Redis作为业界领先的内存数据库,因其高性能、丰富的数据结构和灵活的配置选项,已成为LLM部署中首选的缓存解决方案。
|
2月前
|
存储 缓存 NoSQL
Redis专题-实战篇二-商户查询缓存
本文介绍了缓存的基本概念、应用场景及实现方式,涵盖Redis缓存设计、缓存更新策略、缓存穿透问题及其解决方案。重点讲解了缓存空对象与布隆过滤器的使用,并通过代码示例演示了商铺查询的缓存优化实践。
185 1
Redis专题-实战篇二-商户查询缓存
|
1月前
|
缓存 运维 监控
Redis 7.0 高性能缓存架构设计与优化
🌟蒋星熠Jaxonic,技术宇宙中的星际旅人。深耕Redis 7.0高性能缓存架构,探索函数化编程、多层缓存、集群优化与分片消息系统,用代码在二进制星河中谱写极客诗篇。
|
6月前
|
缓存 NoSQL Java
Redis+Caffeine构建高性能二级缓存
大家好,我是摘星。今天为大家带来的是Redis+Caffeine构建高性能二级缓存,废话不多说直接开始~
934 0
|
2月前
|
缓存 NoSQL 关系型数据库
Redis缓存和分布式锁
Redis 是一种高性能的键值存储系统,广泛用于缓存、消息队列和内存数据库。其典型应用包括缓解关系型数据库压力,通过缓存热点数据提高查询效率,支持高并发访问。此外,Redis 还可用于实现分布式锁,解决分布式系统中的资源竞争问题。文章还探讨了缓存的更新策略、缓存穿透与雪崩的解决方案,以及 Redlock 算法等关键技术。