redis 正则匹配value_Java-19-Redis

Redis:一款高性能的 NoSQL 系列的非关系型数据库。

Redis 和我们熟悉的类似的 MySQL 数据库不太一样,或者说主要体现在这里几个方面:

数据存储方式数据关联关系数据存储位置
MySQL存在表中,表格的一行代表一条数据数据之间有关联关系,比如说“外键”数据存储在硬盘上
Redis存储的是一个个 key-value 键值对数据之前没有关联关系数据存储在内存中

我们使用 docker 来简单体验下 redis redis-docker

docker run --name some-redis -p 6379:6379 -d redis
# 下面这个命令是官方的例子,我目前不是很熟悉 docker 尝试了几种 network 的值,没跑起来,
# 所以换一种方式,目的是要使用 redis-cli
# docker run -it --network some-network --rm redis redis-cli -h some-redis
docker exec -it some-redis /bin/bash
redis-cli
set username "zhangsan"
get username
# "zhangsan"

8fcafa0b6f604600ddb0781137cb2f1a.png

即我们进入到 some-redis 这个容器中,使用 redis-cli,体验了下存取 username 这个 key。

数据结构

key 都是字符串,我们主要说 value 的数据结构:

  1. string
    1. set <key> <value>
    2. get <key>
    3. del <key>
  2. hash 类似 map(value 只能是字符串)
    1. hset <key> <field> <value>
    2. hget <key> <field>
    3. hdel <key> <field>
    4. hgetall <key>
  3. list 类似 linkedList (value 只能是字符串)
    1. lpush <key> <value> 将元素加入列表左边
    2. rpush <key> <value> 将元素加入列表右边
    3. lrange <key> <start> <end> 范围获取(0 和 -1 的组合可以达到获取所有元素的效果)
    4. lpop <key> 从列表左边弹出一个元素
  4. set (value 只能是字符串)
    1. sadd <key> <value>
    2. smembers <key> 获取所有元素
    3. srem <key> <value>
  5. sortedSet(value 只能是字符串),由于它支持排序,所以有一个 score 的概念,score 是 double 类型的,通过 score 从小到大实现排序。
    1. zadd <key> <score> <value>
    2. zrange <key> <start> <end> 范围获取(0 和 -1 的组合可以达到获取所有元素的效果)
    3. zrem <key> <value>

通用命令

  1. keys *,列出所有 key,* 是正则表达式
  2. type <key> 输出某个 key 的类型
  3. del <key> 删除某个键值对

持久化

之前有提到 Redis 是把数据放在内存中的,那就意味着,运行 Redis 的电脑重启后,数据会丢失,所以我们需要把数据持久化保存到硬盘的方案。

RDB

默认方式,不需要进行配置,在一定的间隔时间内,检测 key 的变化情况,然后持久化数据。

具体的配置参数是在 Redis 的配置文件中进行配置的。

AOF

日志记录的方式,可以记录每一条命令操作。可以每一次命令操作后,持久化数据。

同样是在配置文件中,有一个 appendonly on 的配置项,改为 yes 即可。以及 appendfsync 配置项。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值