Redis之数据类型
一、概念:
Redis:一个开源、支持网络、基于内存、键值对存储数据库。
特点:它可以支持多种数据类型。
二、数据类型
1)Redis String
具体说明:
一般的普通的k到v一个映射是String到String类型的一个映射,而redis的k到v的映射,其中的Redis可以是任意类型,另外,Redis
keys是采用二进制序列的。
特点:
Redis 的字符串可以支持任意形式的数据,但是它的单次储存量有限,仅512M字节。
启动redis-cli来看看Redis strings数据类型。
$ sudo service redis-server start
$ sudo su
$ cd
$ redis-cli
$ set mykey somevalue
$ get mykey
前三行怎么理解?查看一下linux命令。
一般set命令下key的不可以相同,但是可以在其后面加参数之后就可以相同。
set mykey somevalue nx
set mykey somevalue xx
特点2:
String有加法和减法的功能,incr具有加法具有加法功能,如果加多个则用incrby;类似的还有decr和decrby,这则是减法功能。
>set count
>incr count
>incr count
>incrby count
>set count
>decr count
>decr count
>decrby count
自己再测试一次上面的减法。
>mset a b c
>mget a b c
2)List
key和list列表是相互依存的,当一个空表插入key,则不是空表,反之如果将表删除则key不存在。
>rpush mylist a
>rpush mylist b
>lpush mylist first
>lrange mylist -
push压栈 pop弹栈 range显示
阻塞操作:
它有类似java里面的加锁功能,另外由于它的特性,就应用场景而言,容易想到聊天软件的聊天记录。
3)Redis Hashes
它是字符串的字段和字符串的值的映射。你可以将其存在很多其他的对象存储在一个Redis实例中。
>hmset user: username antirez birthyear verified
>hmset user: username
>hmset user: birthyear
>hmsetall user: 1000
verified 1 是什么意思?
> hincrby user: birthyear
这个hincrby是什么意思?
hincrby: 返回哈希表key中域的值。
参看: http://doc.redisfans.com/hash/hincrby.html
4)无序集合
特点:和java里面的集合类似,具有无序性和互异性,所以它对于元素可以去重,并且也可以合并求交集,找出共同元素。
>sadd myset
>smembers myset
sadd命令:产生无序集合,返回集合的元素的个数。
smembers命令:用于查看集合的元素。
sismember命令:查看集合是否存在,匹配项包含集合名和集合元素。
5)有序集合
zadd命令:用于添加元素,另外每个元素有一个权重的概念,并从高到低地排出来,另外它可以看做是一个无重复的列表。
作用: 有序的元素,快速的存在性测试,快速访问集合的中间元素!
zadd hackers "Alan"
zadd hackers "Blue" 疑问:hackers 和 1940这两个有什么含义? 百度一下。 zadd
zrange hackers -
zrevrange hackers -1
zrange是正序查看 zrevrange是反序查看
可以返回结果相应的记录参数。
zrange hackers - withscores
东西不在学多,重在学进去,当然能够多学点更好,但是最好能学透,如果你花了时间和没花时间一样的话,
则很可惜,就像linux一样,你以前学过,另外,还有java,这个你要注重学习方法,另外也要注意方法。
学完之后要用脑袋总结一下,然后根据脑袋里面的东西进行写博客,你会学得更透,温故知新。
Redis之数据类型的更多相关文章
- Redis常用数据类型介绍、使用场景及其操作命令
Redis常用数据类型介绍.使用场景及其操作命令 本文章同时也在cpper.info发布. Redis目前支持5种数据类型,分别是: 1.String(字符串) 2.List(列表) 3.Hash(字 ...
- Redis笔记(三)Redis的数据类型
前面说过,Redis的一大特性是支持丰富的数据类型, 这为更多的应用场景提供了可能. Redis有五种数据类型,包括string,list,set,sorted set和hash,注意,Redis的数 ...
- Redis常用数据类型
Redis常用数据类型 转载自:http://blog.sina.com.cn/s/blog_7f37ddde0101021q.html Redis最为常用的数据类型主要有以下五种: ●Str ...
- Redis基本数据类型
-------------------Redis基本数据类型------------------- 1.String 字符串 1.概念 1.String 是redis最基本的类 ...
- Redis常用数据类型和事物以及并发
Redis数据类型 基本类型(String int): 如 set key value .get key 等 所有命令都是按照 key value keys * 可以将全部数据列出,其中后面的 &qu ...
- Redis五大数据类型的常用操作
在上一篇博文<centos安装redis>中,已经详细介绍了如何在centos上安装redis,今天主要介绍下Redis五大数据类型及其五大数据类型的相关操作. Redis支持五种数据类型 ...
- redis的数据类型及使用
Redis 数据类型 Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合). String(字符串) st ...
- Redis系列(二):Redis的数据类型及命令操作
原文链接(转载请注明出处):Redis系列(二):Redis的数据类型及命令操作 Redis 中常用命令 Redis 官方的文档是英文版的,当然网上也有大量的中文翻译版,例如:Redis 命令参考.这 ...
- 一、Redis的数据类型
一Redis的数据类型 string:字符串 hash:哈希 list:列表 set:集合 zset:有序集合(sorted set) 1.string(字符串) redis最基本的类型.可以理解成与 ...
- Redis的数据类型及其常用命令
快速入门Redis 首先安装redis: windows下安装redis Linux下安装redis 1. 什么是redis Redis属于nosql(非关系型数据库) 关系型数据库是基于关系表的数据 ...
随机推荐
- ps 等程序的选项的三种风格
unix options bsd options gnu long options unix options, which may be grouped and must be preceded by ...
- 架构-数据库访问-SQL语言进行连接数据库服务器-DAO:DAO
ylbtech-架构-数据库访问-SQL语言进行连接数据库服务器-DAO:DAO DAO(Data Access Object) 数据访问对象是一个面向对象的数据库接口,它显露了 Microsoft ...
- Sqlserver 中间表的操作
去除列名重复 select rtrim(ltrim(a.Bank)) as Country, count(*) as Total from T_BASE_OWNER a left join T_BAS ...
- VMware 接入 Openstack — 使用 Openstack 创建 vCenter 虚拟机
目录 目录 软件环境 前言 Openstack 接口驱动 使用 KVM 在 Compute Node 上创建虚拟机的流程 使用 VCDirver 在 vCenter 上创建虚拟机的流程 配置 vCen ...
- ELK Stack 企业级日志收集平台
ELK Stack介绍 大型项目,多产品线的日志收集 ,分析平台 为什么用ELK? 1.开发人员排查问题,服务器上查看权限 2.项目多,服务器多,日志类型多 ELK 架构介绍 数据源--->lo ...
- Python高效率遍历文件夹寻找重复文件
前言 为什么要写这篇文章呢...主要还是业务中有个需求,遍历一个将近200w数据的文件夹,大部分还都是视频文件那种,但是这玩意用的次数还不多,做文件夹index也不是很ok,所以写了一个脚本来处理这个 ...
- Caffe深度学习计算框架
Caffe | Deep Learning Framework是一个清晰而高效的深度学习框架,其作者是博士毕业于UC Berkeley的 Yangqing Jia,目前在Google工作.Caffe是 ...
- 如何统计序列中元素的频度---Python数据结构与算法相关问题与解决技巧
实际案例: 1. 某随机序列 [12,5,6,4,6,5,5,7]中,找到出现次数最高的3个元素,它们出现的次数是多少? 2. 对于某英文文章的单词,进行词频统计,找到出现次数最高的10个单词,它们出 ...
- 详解微信小程序支付流程
转发博主 https://blog.csdn.net/qq_38378384/article/details/80882980 花了几天把小程序的支付模块接口写了一下,可能有着公众号开发的一点经验,没 ...
- python+selenium的WebElement对象操作
webelement对象操作 webelement对象是selenium中所有元素的父类,也就是webelement对象拥有的方法,其它元素对象都会有: 只是不同的对象在调用特定方法时,效果是不一样的 ...