NoSQL数据库一Redis基本使用

简介:

基本操作

参考教程:https://www.yiibai.com/redis/
Redis 是 Key-Value 内存数据库,操作是通过各种指令进行的,比如 SET 指令可以设置键值对,而 GET 指令则获取某一个键的值。不同的数据结构,Redis 有不同的指令,这样指令一共有几十个,下面主要介绍一些常用的指令。

Redis 对 Key 也就是键有各种各样的指令,主要有下面的指令(下面的指令中小写字符串都是参数,可以自定义):

SET key value 设置键值;
EXISTS key 判断键是否存在;
EXPIRE key seconds 设置 Key 的过期时间,过期以后Key 将被自动删除;
TTL key 获取 Key 的剩余生存时间;
DEL key 删除 Key;
TYPE key 获取 Key 对应的 Value 的类型;
通过 redis-cli 演示以上的指令如下:


127.0.0.1:6379> exists user
(integer) 0
127.0.0.1:6379> set user aiden
OK
127.0.0.1:6379> get user
"aiden"
127.0.0.1:6379> type user
string
127.0.0.1:6379> expire user 5
(integer) 1
127.0.0.1:6379> ttl user
(integer) 4
127.0.0.1:6379> ttl user
(integer) 2
127.0.0.1:6379> ttl user
(integer) -2
127.0.0.1:6379> exists user
(integer) 0

上面例子中,首先判断 user 键是否存在,接着通过 SET 设置了值,接着还使用 EXPIRE 指令设置了过期时间为 5 秒。可以看到 5 秒后,user 键就被自动删除了。

有的时候会看到输出的字符串前有 b 这样的前缀,表示字节编码的字符串,对应的还有 u'xxxxx' 这类 unicode 编码的字符串,都比较常见。

上文中已提到,Redis 还支持其他的数据结构,不仅仅是简单的字符串键值对,比如支持哈希类型的键值,这种数据结构中 Key 对应于一个哈希,而哈希又包含多个字段和相应的值。对于这种类型主要有下面的操作指令:

HSET key field value 设置名称为 key 的哈希的字段 field 为值 value;
HGET key field 获取名为 key 的哈希的字段 field;
HGETALL key 获取名为 Key 的哈希所有字段和 Value;
HKEYS key 获取名为 Key 的哈希的所有字段;
HLEN key 获取名为 Key 的哈希的字段数量;
通过 redis-cli 演示如下:


127.0.0.1:6379> exists user
(integer) 0
127.0.0.1:6379> hset user name aiden
(integer) 1
127.0.0.1:6379> hset user age 30
(integer) 1
127.0.0.1:6379> hmset user email luojin@simplecloud.cn addr chengdu
OK
127.0.0.1:6379> hgetall user
1) "name"
2) "aiden"
3) "age"
4) "30"
5) "email"
6) "luojin@simplecloud.cn"
7) "addr"
8) "chengdu"
127.0.0.1:6379> hkeys user
1) "name"
2) "age"
3) "email"
4) "addr"
127.0.0.1:6379> hget user addr
"chengdu"
127.0.0.1:6379> hlen user
(integer) 4

上面的例子中,设置了一个名为 user 的哈希。先使用 HSET 为单个字段赋值,接着使用 HMSET 为多个字段赋值。使用 HGETALL 能一次获取全部的字段和值。

Redis 还支持有序集合,有序集合可以用于快速实现排名功能,只要的操作指令如下:

ZADD key score member 将成员和对应的评分添加到有序集合中;
ZREVRANK key member 获取 member 在有序集合 key 中的排名;
通过 redis-cli 演示如下:

127.0.0.1:6379> zadd rank 100 aiden
(integer) 1
127.0.0.1:6379> zadd rank 120 lxtttx
(integer) 1
127.0.0.1:6379> zadd rank 80 jin
(integer) 1
127.0.0.1:6379> zrevrank rank aiden
(integer) 1
127.0.0.1:6379> zrevrank rank  lxtttx
(integer) 0
127.0.0.1:6379> zrevrank rank  jin
(integer) 2
127.0.0.1:6379> zrevrank rank  not_exist
(nil)

上面例子中,我们通过 ZADD 往 rank 中添加了三个成员,最后通过 ZREVRANK 依次获取了成员的排名,可以发现排名是从 0 开始计算的,排第 0 的成员得分最高。













本文转自cqtesting51CTO博客,原文链接: http://blog.51cto.com/cqtesting/2070707,如需转载请自行联系原作者



相关文章
|
6月前
|
存储 NoSQL Redis
阿里云高性能数据库Tair(兼容 Redis)收费价格,稳定可靠成本低
阿里云高性能云数据库Tair兼容Redis,提供Redis开源版和Tair企业版,支持多种存储介质与灵活扩展,适用于高并发场景。Tair具备亚毫秒级稳定延迟,保障业务连续性。价格方面,Redis开源版年费从72元起,Tair企业版年费从1224元起,具体费用根据配置不同有所变化。
|
5月前
|
人工智能 运维 NoSQL
云栖大会|AI浪潮下的NoSQL演进:下一代数据库的破局之道
AI浪潮下的NoSQL演进:下一代数据库的破局之道
|
11月前
|
存储 NoSQL 数据库
Redis 逻辑数据库与集群模式详解
Redis 是高性能内存键值数据库,广泛用于缓存与实时数据处理。本文深入解析 Redis 逻辑数据库与集群模式:逻辑数据库提供16个独立存储空间,适合小规模隔离;集群模式通过分布式架构支持高并发和大数据量,但仅支持 database 0。文章对比两者特性,讲解配置与实践注意事项,并探讨持久化及性能优化策略,助你根据需求选择最佳方案。
539 5
|
9月前
|
存储 NoSQL 搜索推荐
NoSQL数据库分类概览
以上就是我们的NoSQL数据库奇幻之旅。每一种NoSQL数据库都有自己独特的魅力和专长,择选合适的数据库,就像在魔法世界中挑选最适合自己的魔杖,使你的数据管理变得更加高效和神奇。在当今数据驱动的时代,懂得这些数据库的秘密,就掌握了处理各种数据挑战的关键。
464 61
|
NoSQL Java Redis
Redis Pipeline介绍 ---- 提高操作Redis数据库的执行效率。
Redis Pipeline是提高Redis执行效率的重要技术,通过批量发送命令,显著减少了网络往返次数,提高了系统的吞吐量和性能。在实际应用中,合理使用Pipeline可以有效优化Redis的性能,特别是在需要批量操作的场景下。本文通过Python和Java的示例代码展示了如何实现和使用Redis Pipeline,为开发者提供了具体的操作指南。
549 16
|
消息中间件 缓存 NoSQL
缓存与数据库的一致性方案,Redis与Mysql一致性方案,大厂P8的终极方案(图解+秒懂+史上最全)
缓存与数据库的一致性方案,Redis与Mysql一致性方案,大厂P8的终极方案(图解+秒懂+史上最全)
|
10月前
|
缓存 NoSQL 关系型数据库
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
美团面试:MySQL有1000w数据,redis只存20w的数据,如何做 缓存 设计?
|
5月前
|
缓存 负载均衡 监控
135_负载均衡:Redis缓存 - 提高缓存命中率的配置与最佳实践
在现代大型语言模型(LLM)部署架构中,缓存系统扮演着至关重要的角色。随着LLM应用规模的不断扩大和用户需求的持续增长,如何构建高效、可靠的缓存架构成为系统性能优化的核心挑战。Redis作为业界领先的内存数据库,因其高性能、丰富的数据结构和灵活的配置选项,已成为LLM部署中首选的缓存解决方案。
|
6月前
|
存储 缓存 NoSQL
Redis专题-实战篇二-商户查询缓存
本文介绍了缓存的基本概念、应用场景及实现方式,涵盖Redis缓存设计、缓存更新策略、缓存穿透问题及其解决方案。重点讲解了缓存空对象与布隆过滤器的使用,并通过代码示例演示了商铺查询的缓存优化实践。
308 1
Redis专题-实战篇二-商户查询缓存
|
10月前
|
缓存 NoSQL Java
Redis+Caffeine构建高性能二级缓存
大家好,我是摘星。今天为大家带来的是Redis+Caffeine构建高性能二级缓存,废话不多说直接开始~
1385 0

热门文章

最新文章