Redis学习之缓存数据类型
Redis缓存数据类型有5种,分别是String(字符串)、List(列表)、Hash(哈希)、Set(无序,不重复集合)、ZSet(sorted set:有序,不重复集合)。
String(字符串)
string类型是redis最近的类型,一个key对应一个value。
Redis中的String类型是二进制安全的,可以包含任何数据。例如序列化的对象或者图片。
String类型一个键最大能存储 512M。
Redis中对String类型的赋值命令是SET,取值命令是GET。
实例:
通过set命令,加入key为myKey,对应的值为testString的缓存数据
List(列表)
Redis列表类型是简单的字符串列表,按照插入的顺序排序。
每个List最多可存储 232 - 1 个元素(40多亿)。
Redis中List类型通过lpush命令赋值,通过lrange命令取值。
实例:
key值为test-list,存入的value值分别为Java、PHP、C++。
Hash(哈希)
Redis的hash是一个键值对集合,特别适合用于存储对象。
每个hash最多可存储 232 - 1 个元素(40多亿)。
Redis中的hash类型通过HMSET命令赋值,HEGTALL命令取值。
实例:
key值时user,对应的value值是里面的键值对集合。
Set(无序,不重复集合)
Redis的set是没有顺序和不重复的集合类型,String类型的无序集合。
通过sadd命令添加元素到集合,smembers命令获取集合。
集合中最大的成员数为 232 - 1 个(40多亿)。
实例:
用sadd命令添加缓存数据,若添加成功,则放回1。若返回0,则代表添加失败,例如value值重复。
上面的实例中C++被添加了两次,set是不重复集合,元素的唯一性,第二次添加会被忽略。
ZSet(有序,不重复集合)
Redis中的zset集合有顺序但里面元素不会重复,String类型的有序集合。
zset每个元素都会绑定一个double类型的数值,集合按照该数值升序排序,数值可以重复,但value值不可以重复。
通过zadd命令添加元素到集合,如果元素在集合中已经存在,则更新对应的double类型数值。通过ZRANGEBYSCORE命令获取zset集合元素。
实例:
keys * 命令
通过keys * 命令查找缓存中所有的key值。
实例:
Redis学习之缓存数据类型的更多相关文章
- Redis学习笔记1-Redis数据类型
Redis数据类型 Redis支持5种数据类型,它们描述如下: Strings - 字符串 字符串是 Redis 最基本的数据类型.Redis 字符串是二进制安全的,也就是说,一个 Redis 字符串 ...
- Redis学习手册(Set数据类型)
一.概述: 在Redis中,我们可以将Set类型看作为没有排序的字符集合,和List类型一样,我们也可以在该类型的数据值上执行添加.删除或判断某一元素是否存在等操作.需要说明的是,这些操作的时间复杂度 ...
- Redis学习之二 数据类型和相关命令
原文:https://www.cnblogs.com/lonelyxmas/p/9073928.html 如果还不懂安装的,请看 Windows环境下安装Redis Redis一共支持五种数据类型 1 ...
- Redis 学习-安装、数据类型与 API 理解、Java 客户端
本博客是在学习<Redis从入门到高可用,分布式实践>教程时的笔记. 同时参考: https://www.cnblogs.com/jiang910/p/10020048.html 一.Re ...
- Redis学习手册(Sorted-Sets数据类型)
一.概述: Sorted-Sets和Sets类型极为相似,它们都是字符串的集合,都不允许重复的成员出现在一个Set中.它们之间的主要差别是Sorted-Sets中的每一个成员都会有一个分数(score ...
- Redis学习手册(List数据类型)
一.概述: 在Redis中,List类型是按照插入顺序排序的字符串链表.和数据结构中的普通链表一样,我们可以在其头部(left)和尾部(right)添加新的元素.在插入时,如果该键并不存在,Redis ...
- Redis学习手册(Hashes数据类型)
一.概述: 我们可以将Redis中的Hashes类型看成具有String Key和String Value的map容器.所以该类型非常适合于存储值对象的信息.如Username.Password和Ag ...
- Redis学习手册(String数据类型)
一.概述: 字符串类型是Redis中最为基础的数据存储类型,它在Redis中是二进制安全的,这便意味着该类型可以接受任何格式的数据,如JPEG图像数据或Json对象描述信息等.在Redis中字符串类型 ...
- Redis学习之路(006)- Redis学习手册(Hashes数据类型)
一.概述: 我们可以将Redis中的Hashes类型看成具有String Key和String Value的map容器.所以该类型非常适合于存储值对象的信息.如Username.Password和Ag ...
随机推荐
- vue2 核心概念
一.vue变量 所有的 vue变量 ,必须在data:中有注册(哪怕内容是空,相当于声明这个是变量,是vue变量而不是js变量).这里的变量也可以运算.(注意:所有的框架一定要注意js变量和框架的变量 ...
- XSS的原理分析与解剖(第二篇)
0×01 前言: 上节(http://www.freebuf.com/articles/web/40520.html)已经说明了xss的原理及不同环境的构造方法.本期来说说XSS的分类及挖掘方法. 当 ...
- Linux初上手!
虚拟机Virtual Box装的Kali Linux,是Debian的发行版本,安装过程不说了,不是硬盘安装也没什么说的,由于是新手所以只有两个分区,一个[/]和一个[swap] 装好之后是xwind ...
- (转)Ubuntu下用eclipse cdt编写多线程程序的简单设置
在Ubuntu下用eclipse cdt编写了一个多线程程序,但是总是出现pthread_create函数未定义! 查找了下原因,原来是要对eclipse进行一些简单的设置: 右键单击项目->P ...
- maven学习整理-进阶知识
在maven的阶知识主要学习的是maven在eclipse中的使用.依赖相关的问题.继承(父子工程).统一版本管理.聚合等相关知识 1.maven在eclipse中的使用 由上篇基础知识学习到怎样下载 ...
- Android逆向之smali语法宝典
0x01.前言 Android采用的是java语言进行开发,但是Android系统有自己的虚拟机Dalvik,代码编译最终不是采用的java的class,而是使用的smali.我们反编译得到的代码,j ...
- 机器学习技法笔记:Homework #8 kNN&RBF&k-Means相关习题
原文地址:https://www.jianshu.com/p/1db700f866ee 问题描述 程序实现 # kNN_RBFN.py # coding:utf-8 import numpy as n ...
- nginx配置跨域
location / { if ($request_method = 'OPTIONS') {add_header 'Access-Control-Allow-Origin' '*' always;a ...
- centos7下jenkins升级
systemctl stop jenkins cd cd /usr/lib/jenkins/ mv jenkins.war jenkins.war.bac rz #上传下载好的最新jinkens.wa ...
- 13、如何拆分含有多种分隔符的字符串 14、如何判断字符串a是否以字符串b开头或结尾 15、如何调整字符串中文本的格式 16、如何将多个小字符串拼接成一个大的字符串
13.如何拆分含有多种分隔符的字符串 import re s = "23:41:2314\1234#sdf\23;" print(re.split(r'[#:\;]+',s)) ...