2.Redis的数据类型

Redis 数据类型

Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。

String(字符串)

string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value。

string类型是二进制安全的。意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象 。

string类型是Redis最基本的数据类型,一个键最大能存储512MB。

127.0.0.1:6379> set name ‘kevin‘
OK
127.0.0.1:6379> get name
"kevin"

在以上实例中我们使用了 Redis 的 SET 和 GET 命令。键为 name,对应的值为 kevin。

注意:一个键最大能存储512MB。

Hash(哈希)

Redis hash 是一个键值(key=>value)对集合。

Redis hash是一个string类型的field和value的映射表,hash特别适合用于存储对象。

hmset 可以设置hash存储.

hmget 可以读取多个值.

hget 只能读取一个值

127.0.0.1:6379> hmset helloworld hello ‘hello‘ world ‘world‘
OK
127.0.0.1:6379> hmget helloworld hello
1) "hello"
127.0.0.1:6379> hget helloworld hello
"hello"
127.0.0.1:6379> hmget helloworld hello world
1) "hello"
2) "world"

以上实例中 hash 数据类型存储了‘hello world‘。 实例中我们使用了 Redis hmset, hmget,hget 命令,helloworld 为键值。

每个 hash 可以存储 232 -1 键值对(40多亿)。

List(列表)

Redis 列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)。

下面展示我们用一个list来储存老师的学生们,以及找出学生们:

127.0.0.1:6379> lpush students jack //添加一个学生jack
(integer) 1
127.0.0.1:6379> lpush students kevin nick zoe zick grace //添加多个学生
(integer) 6
127.0.0.1:6379> lrange students 1 3 //取出1-3个学生.可以发现index从0开始
1) "zick"
2) "zoe"
3) "nick"

列表最多可存储 232 - 1 元素 (4294967295, 每个列表可存储40多亿)。

Set(集合)

Redis的Set是string类型的无序集合。

集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。

127.0.0.1:6379> sadd teachers jack
(integer) 1
127.0.0.1:6379> sadd teachers jack //jack已经添加过 所以被忽略
(integer) 0
127.0.0.1:6379> sadd teachers jack kevin wang.liu
(integer) 2
127.0.0.1:6379> smembers teachers //
1) "kevin"
2) "wang.liu"
3) "jack"

集合中最大的成员数为 232 - 1(4294967295, 每个集合可存储40多亿个成员)。

zset(sorted set:有序集合)

Redis zset 和 set 一样也是string类型元素的集合,且不允许重复的成员。

不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。

zset的成员是唯一的,但分数(score)却可以重复。

127.0.0.1:6379> zadd nums 0 j1
(integer) 1
127.0.0.1:6379> zadd nums 0 j1 //此时会更新j1的分数
(integer) 0
127.0.0.1:6379> zadd nums 1 j1
(integer) 0
127.0.0.1:6379> zadd nums 2 j2
(integer) 1
127.0.0.1:6379> zadd nums 4 j3
(integer) 1
127.0.0.1:6379>  ZRANGEBYSCORE nums 0 1000
1) "j1"
2) "j2"
3) "j3"

原文地址:https://www.cnblogs.com/wtbtbd/p/8450349.html

时间: 2024-07-31 08:51:18

2.Redis的数据类型的相关文章

Nosql技术--redis系列--redis的数据类型 及相应的命令--String类型

1:redis的官方网站地址是:http://www.redis.com 在线redis命令运行测试地址:http://try.redis.io/ 2:redis的数据类型有5种:String .Hash .Set.List.SortedSet String 类型 1)String是二进制安全的 (1):set 表示设置key和value eg :> set name lusy ok >get name lusy 注意:redis中同一个name对应的value是一样的 (2)setnx:设置

Redis基本数据类型

-------------------Redis基本数据类型------------------- 1.String 字符串 1.概念 1.String 是redis最基本的类型,value 不仅可以是 String,也可以是数字:使用 Strings 类型,可以完全实现目前 Memcached 的功能,并且效率更高.还可以享受 Redis 的定时持久化(可以选择 RDB 模式或者 AOF 模式):string类型是二进制安全的.意思是redis的string可以包含任何数据,比如jpg图片或者

Redis常用数据类型介绍、使用场景及其操作命令

Redis常用数据类型介绍.使用场景及其操作命令 本文章同时也在cpper.info发布. Redis目前支持5种数据类型,分别是: 1.String(字符串) 2.List(列表) 3.Hash(字典) 4.Set(集合) 5.Sorted Set(有序集合) 下面就分别介绍这五种数据类型及其相应的操作命令. 1. String(字符串) String是简单的 key-value 键值对,value 不仅可以是 String,也可以是数字.String在redis内部存储默认就是一个字符串,被

Redis五大数据类型的常用操作

在上一篇博文<centos安装redis>中,已经详细介绍了如何在centos上安装redis,今天主要介绍下Redis五大数据类型及其五大数据类型的相关操作. Redis支持五种数据类型:String(字符串),Hash(哈希),List(列表),Set(集合)及Zset(sorted set:有序集合). 原文地址:https://www.cnblogs.com/toutou/p/redis_data_type.html

redis常用数据类型对应的数据结构

redis的数据类型都是通过多种数据结构来实现,主要是出于时间和空间的考虑,当数据量小的时候通过数组下标访问最快,占用内存最小[压缩列表是数组的变种,允许存储的数据大小不同] 因为数组需要占用连续的内存空间,所以当数据量大的时候,就需要使用链表,同时为了保证速度又需要和数组结合,也就有了散列表. 1.字符串 2.列表(list):支持存储一组数据,这种数据类型对应两种实现方法,一种是压缩列表,另一种是双向循环链表 压缩列表:数据集比较少的时候,采用压缩列表 redis自己设计的一种存储结构,类似

数据结构与算法简记--redis常用数据类型对应的数据结构

Redis常用数据类型对应的数据结构 Redis数据库 Redis 是一种键值(Key-Value)数据库.相对于关系型数据库(比如 MySQL),也被叫作非关系型数据库. 常用的数据类型: 字符串.列表.字典.集合.有序集合. 列表(list) 支持存储一组数据.两种实现方法: 压缩列表(ziplist) 双向循环链表 压缩列表 数据量比较小的时候采用压缩列表的方式实现: 列表中保存的单个数据(有可能是字符串类型的)小于 64 字节: 列表中数据个数少于 512 个. 非基础数据结构,类似数组

Redis(六)-数据类型

Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合). String(字符串) string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value. string类型是二进制安全的.意思是redis的string可以包含任何数据.比如jpg图片或者序列化的对象 . string类型是Redis最基本的数据类型,一个键最大能存储512MB. 实例 redis

Redis学习笔记(二) ---- PHP操作Redis各数据类型

Redis 一.使用PHP操作Redis存储系统中的各类数据类型方法 1.String(字符串)操作 1 <?php 2 3 // 1. 实例化 4 $redis = new Redis; 5 6 // 2. 连接 redis 7 $redis->connect('localhost',6379); 8 9 // 3. 选择数据库 10 $redis->select(15); 11 12 // 字符串类型 13 // 添加数据 14 $redis->set('name','张三')

Redis的数据类型之String

Redis主要支持的数据类型有5种:String ,Hash ,List ,Set ,和 Sorted Set. Redis数据类型String string类型在redis中是最常见的类型,value存储最大数据量为512M,可以存放json数据,图像数据等等. 下面跟着敲Redis命令操作String类型数据的代码吧. redis数据写命令Set,相当于数据插入 redis 127.0.0.1:6379> set name zlh --返回值: ok,说明插入成功.如果当前name存在值则覆

《Redis入门指南(第二版)》读书思考总结之Redis五大数据类型

热身:系统级命令 1. 获得符合规则的键名列表 KEYS pattern 模式匹配 产品的缓存:product+"."+....;  => keys product* 订单的缓存:order+"."+...;    => keys order* 使用 KEYS *能获得Redis中的所有键 提示:KEYS命令需要遍历Redis中的所有键,当键的数量较多时会影响性能,不建议在生产环境中使用.Redis不区分命令大小写. 2. 判断一个键是否存在 EXIST