IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> redis6入门与应用一 -> 正文阅读

[大数据]redis6入门与应用一

目录

① set?将键key设定为指定字符串的值

② get 返回key的value

③ keys

1、返回所有键

2、模糊匹配,返回与指定模式相匹配的所用的keys

④ dbsize 返回当前数据库的键的总数

⑤ exists 检查指定key是否存在

⑥ del 删除已经存在的key,不存在的key会被忽略

⑦ expire 设置key的过期时间,key过期后将被清除

⑧ ttl 以秒为单位返回 key 的剩余过期时间

⑨ persist 移除key的过期时间,使key永不过期

⑩ type 返回key所存储值的类型

11、rename 修改key的名称


REmote DIctionary Server(Redis) 是一个由 Salvatore Sanfilippo 写的 key-value 存储系统,是跨平台的非关系型数据库。

Redis 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于内存、分布式、可选持久性的键值对(Key-Value)存储数据库,并提供多种语言的 API。

① set?将键key设定为指定字符串的值

?1)如果key已存在,就直接覆盖原来的值,并且忽略原始类型;

?2)如果key已存在并设置了过期时间,就清除过期时间

?3)? 选项:

  • EX?seconds? ?设置键key的过期时间,单位时秒
  • PX?milliseconds?? 设置键key的过期时间,单位时毫秒
  • NX? 只有键key不存在的时候才会设置key的值
  • XX? 只有键key存在的时候才会设置key的值 ? ? ? ? ? ? ??

时间复杂度:O(1)

格式:set key value [EX seconds] [PX milliseconds] [NX|XX]

返回值:如果SET命令正常执行那么回返回OK,否则如果加了NX?或者?XX选项,但是没有设置条件。那么会返回nil。

② get 返回key的value

时间复杂度:O(1)

格式:get key

返回值:

  • 如果key不存在,返回特殊值nil;
  • 如果keyvalue不是string,就返回错误,因为GET只处理string类型的values;
  • 如果key存在且value是string,返回value值

③ keys

时间复杂度:O(n)

返回值:所有符合条件的key

1、返回所有键

keys *

2、模糊匹配,返回与指定模式相匹配的所用的keys

该命令支持的正则表达式模式如下:

  • “?” 用于匹配任意单个字符。例如:h?llo?匹配?hello,?hallo?和?hxllo等;
  • “*” 用于匹配零个或者多个任意字符。例如:h*llo?匹配?hllo?和?heeeello等;
  • “[]” 通配括号内的某一个字符。例如:h[ae]llo?匹配?hello?和?hallo,?但是不匹配?hillo;
  • “[^]” 匹配除限定字符外的任意字符。例如:h[^e]llo?匹配?hallo,?hbllo, … 但是不匹配?hello;
  • “[-]” 匹配起始于结束之间的连续字符。例如:h[a-c]llo?匹配?hallo、?hbllo、hcllo;

如果你想取消字符的特殊匹配,可以在字符前面加转义字符“\”

④ dbsize 返回当前数据库的键的总数

127.0.0.1:6379> dbsize
(integer) 4

⑤ exists 检查指定key是否存在

时间复杂度:O(1)

格式:exists key [key ...]

返回值:存在返回1,不存在返回0

127.0.0.1:6379> exists name
(integer) 0

127.0.0.1:6379> exists yue
(integer) 1

⑥ del 删除已经存在的key,不存在的key会被忽略

时间复杂度:O(n)将要被删除的key的数量,当删除的key是字符串以外的复杂数据类型时比如List,Set,Hash删除这个key的时间复杂度是O(1)。

格式:del key [key ...]

返回值:被删除key的数量

# 不存在abcc的键,被忽略,返回删除的个数0
127.0.0.1:6379> del abcc
(integer) 0

# 删除1个key
127.0.0.1:6379> del a*b
(integer) 1

# 删除多个key
127.0.0.1:6379> del yue hang
(integer) 2

⑦ expire 设置key的过期时间,key过期后将被清除

时间复杂度:O(1)

格式:expire key seconds

返回值:设置成功返回1,key不存在或不能设置过期时间返回0

# 10秒后过期
127.0.0.1:6379> expire abc 10
(integer) 1

⑧ ttl 以秒为单位返回 key 的剩余过期时间

时间复杂度:O(1)

格式:ttl key

返回值:当 key 不存在时,返回 -2 。 当 key 存在但没有设置剩余生存时间时,返回 -1 。 否则,以秒为单位,返回 key 的剩余生存时间。

# key不存在返回-2
127.0.0.1:6379> ttl aaa
(integer) -2

# key存在,但无剩余过期时间返回-1
127.0.0.1:6379> ttl money
(integer) -1

# key存在且有过期时间,返回以秒为单位的剩余过期时间
127.0.0.1:6379> ttl abc
(integer) 57

⑨ persist 移除key的过期时间,使key永不过期

时间复杂度:O(1)

格式:persist key

返回值:当移除成功返回1,当key不存在或key没有过期时间时返回0

⑩ type 返回key所存储值的类型

时间复杂度:O(1)

格式:type key

返回值:

  1. none? ?key不存在
  2. string? 字符串
  3. list 列表
  4. set 集合
  5. zset 有序集
  6. hash 哈希

11、rename 修改key的名称

时间复杂度:O(1)

格式:rename key newkey

返回值:改名成功时返回ok,失败返回错误。当 key 和 newkey 相同,或者 key 不存在时,返回一个错误。 当 newkey 已经存在时, rename 命令将覆盖旧值。

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-12-07 12:05:45  更:2021-12-07 12:08:10 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 9:16:03-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码