Redis的五大数据类型

redis的数据都是以key/value存储,所以说,五大类型指的是value的数据类型

String

字符串,作为redis的最基本数据类型

redis中的string类型是二进制安全,即它可以保存任何数据,比如一张图片序列化为一段二进制字符串

redis的string类型大小上限是512M

List

简单有序字符串列表,安装插入的顺序排序。

在redis中,我们可以选择性是从list的同步还是尾部插入元素。在获取list里面的元素的时候,

也可以选择性是从头部还是尾部弹出元素

Hash

类似于java中Map,键值对集合。很适合存储java中的对象

Set

无序的字符串列表,set中的元素不允许重复值

ZSet

和set一样是字符串的集合,不同的是zset中每个元素会关联一个double类型的分数,zset中元素是唯一的,

但是每个元素关联的分数允许重复


Redis的key相关命令

set

表示插入一条记录

>set key value
ok

del

删除一个存在的key

127.0.0.1:6379> del name
(integer) 1

1表示数据删除成功,影响的条目

dump

可以序列化指定的key,并返回系列后的值

exists

判断一个指定的key是否存在

127.0.0.1:6379> exists name
(integer) 1
127.0.0.1:6379> exists age
(integer) 0

1表示存在一个,0表示不存在

expire

可以给key设置有效期,有效期之后,key会销毁

单位以秒计

127.0.0.1:6379> expire name 10
(integer) 1

ttl

查看一个key的剩余有效期

127.0.0.1:6379> ttl name
(integer) 42
127.0.0.1:6379>

返回值就是剩余秒数,如果是-1,说明给key没有过期时间,如果是-2,说明这个key已经不存在了

persist

移出给定key的有效期

127.0.0.1:6379> ttl name
(integer) 93
127.0.0.1:6379> persist name
(integer) 1
127.0.0.1:6379> ttl name
(integer) -1

pexpire

设置过期时间,毫秒单位

pttl

获取过期时间,单位是毫秒

keys

获取满足条件的所有key

127.0.0.1:6379> keys na*
1) "name2"
2) "name"

注意,返回的不是key的值,而是key的名字

type

获取给定的key存储的数据类型

127.0.0.1:6379> type name
string

rename

修改key的名称

127.0.0.1:6379> rename name username
OK
127.0.0.1:6379> get name
(nil)
127.0.0.1:6379> get username
"jack"
127.0.0.1:6379>

randomkey

随机返回一个key

127.0.0.1:6379> randomkey
"test15035"

返回的是key的名称

flushall

清除某个db中的所有key


Redis的五大数据类型以及key的相关操作命令的更多相关文章

  1. 解析Redis操作五大数据类型常用命令

    摘要:分享经常用到一些命令和使用场景总结,以及对Redis中五大数据类型如何使用cmd命令行的形式进行操作的方法. 本文分享自华为云社区<Redis操作五大数据类型常用命令解析>,作者:灰 ...

  2. redis之五大数据类型

    redis之五大数据类型 redis redis的两种链接方式 简单链接 1234 import redisconn = redis.Redis(host='10.0.0.200',port=6379 ...

  3. Redis(三)--- Redis的五大数据类型的底层实现

    1.简介 Redis的五大数据类型也称五大数据对象:前面介绍过6大数据结构,Redis并没有直接使用这些结构来实现键值对数据库,而是使用这些结构构建了一个对象系统redisObject:这个对象系统包 ...

  4. 面试官:讲讲Redis的五大数据类型?如何使用?(内含完整测试源码)

    写在前面 最近面试跳槽的小伙伴有点多,给我反馈的面试情况更是千差万别,不过很多小伙伴反馈说:面试中的大部分问题都能够在我的公众号[冰河技术]中找到答案,面试过程还是挺轻松的,最终也是轻松的拿到了Off ...

  5. Redis详解(五)------ redis的五大数据类型实现原理

    前面两篇博客,第一篇介绍了五大数据类型的基本用法,第二篇介绍了Redis底层的六种数据结构.在Redis中,并没有直接使用这些数据结构来实现键值对数据库,而是基于这些数据结构创建了一个对象系统,这些对 ...

  6. Redis五种数据类型-设置key的过期时间

    1.redis命令客户端 [root@localhost bin]# ./redis-cli 127.0.0.1:6379> #是否运行着 127.0.0.1:6379> ping PON ...

  7. redis之五大数据类型介绍

    目录 redis五大数据类型 1. string(字符串) 特点: 格式: 基本操作: 2. hash(哈希) 特点: 格式: 基本操作 3. list(列表) 特点 格式 基本操作 4. set(集 ...

  8. Redis 详解 (五) redis的五大数据类型实现原理

    目录 1.对象的类型与编码 ①.type属性 ②.encoding 属性和 *prt 指针 2.字符串对象 3.列表对象 4.哈希对象 5.集合对象 6.有序集合对象 7.五大数据类型的应用场景 8. ...

  9. Redis 详解 (三) redis的五大数据类型详细用法

    目录 1.string 数据类型 2.hash 数据类型 3.list 数据类型 4.set 数据类型 5.zset 数据类型 6.系统相关命令 7.key 相关命令 我们说 Redis 相对于 Me ...

随机推荐

  1. linux 使用 FIO 测试磁盘的iops

    原文链接:https://www.iteye.com/blog/elf8848-2168876 一,FIO安装wget http://brick.kernel.dk/snaps/fio-2.2.5.t ...

  2. pandas电子表格的读取(pandas中的read_excel)

    上面那篇文章中,初步介绍了一个文本文件的读取:接下来介绍另外一种常见的本地数据格式,那就是Excel电子表格,如果读者在学习或者工作中需要使用Python分析某个Excel表格数据,改如何完成第一个的 ...

  3. 玩转Spring——Spring IOC/DI

    什么是IOCioc :Inversion of Control,即控制反转. 它不是一种技术,而是一种设计思想,即java程序中获取对象的方式发生反转,由最初的new方式创建,转变成由第三方框架创建. ...

  4. 区块链入门到实战(21)之以太坊(Ethereum) – 分布式应用(DApp)

    作用:用户交互 分布式应用(DApp)是运行在区块链之上的应用程序,支持区块链网络中用户之间的交互. DApp(decentralized application)的后端代码运行在区块链网络上,这个可 ...

  5. js实现树级递归,通过js生成tree树形菜单(递归算法)

    方法封装: /** * 数据转换为树形(递归),示例:toTreeByRecursion(source, 'id', 'parentId', null, 'children') * @param {A ...

  6. 不要再问我 in,exists 走不走索引了

    微信搜『烟雨星空』,获取最新好文. 前言 最近,有一个业务需求,给我一份数据 A ,把它在数据库 B 中存在,而又比 A 多出的部分算出来.由于数据比较杂乱,我这里简化模型. 然后就会发现,我去,这不 ...

  7. Toast 响应点击事件

    import java.lang.reflect.Field; import android.content.Context; import android.util.Log; import andr ...

  8. 【C#】静态构造方法与静态变量

    扯下闲篇先,本来今天预计整理下委托.事件.Lamada的笔记,然后再把单例模式的懒汉.饿汉模式看完. 在看到懒汉的双重加锁设计时,向同桌贩卖了下该设计的优点,结果反被同桌的一个问题难倒了~! 一. 有 ...

  9. directives 自定义指令

    钩子函数 一个指令定义对象可以提供如下几个钩子函数 (均为可选): bind:只调用一次,指令第一次绑定到元素时调用.在这里可以进行一次性的初始化设置.基本数据类型如果发生改变,不会触发,但是引用数据 ...

  10. Activiti7 提交任务

    package com.itheima.activiti; import org.activiti.engine.ProcessEngine; import org.activiti.engine.P ...