本文目录导航:
redis数据类型和运行场景
Redis是以后比拟抢手的NOSQL系统之一,它是一个开源的经常使用ANSI c言语编写的key-value存储系统(区别于MySQL的二维表格的方式存储。
),Redis数据都是缓存在计算机内存中并且它会周期性的把降级的数据写入磁盘或许把修正操作写入追加的记载文件,成功数据的耐久化。
谈到存储数据,那么肯定要触及到关系的数据类型,redis重要有以下数据类型: 形容:string 是 redis 最基本的类型,你可以了解成与 Memcached 如出一辙的类型,一个 key 对应一个 value。
value其实不只是String,也可以是数字。
string 类型是二进制安保的。
意思是 redis 的 string 可以蕴含任何数据。
比如jpg图片或许序列化的对象。
string 类型是 Redis 最基本的数据类型,string 类型的值最大能存储 512MB。
罕用命令:get、set、incr、decr、mget等。
运行场景:规key-value缓存运行。
惯例计数: 点赞数, 粉丝数。
形容: hash 是一个键值(key => value)对汇合。
Redis hash 是一个 string 类型的 field 和 value 的映射表,hash 特意适宜用于存储对象。
罕用命令:hget,hset,hgetall 等。
运行场景:存储局部变卦数据,如商品信息等。
形容:list 列表是繁难的字符串列表,依照拔出顺序排序。
你可以减少一个元素到列表的头部(左边)或许尾部(左边)。
列表最多可存储 232 - 1 元素 (, 每个列表可存储40多亿)。
罕用命令:lpush(减少左边元素),rpush,lpop(移除左边第一个元素),rpop,lrange(失掉列表片段,LRANGE key start stop)等。
运行场景:信息队列,关注列表,粉丝列表等都可以用Redis的list结构来成功。
形容: set是string类型的无序汇合。
汇合是经过hashtable成功的,概念和数学中个的汇合基本相似,可以交加,并集,差集等等,set中的元素是没有顺序的。
所以减少,删除,查找的复杂度都是O(1)。
罕用命令:sadd,spop,smembers,sunion 等。
运行场景:交加,并集,差集(微博中,可以将一个用户一切的关注人存在一个汇合中,将其一切粉丝存在一个汇合。
Redis还为汇合提供了求交加、并集、差集等操作,可以十分繁难的成功如独特关注、独特喜好、二度朋友等配置,对下面的一切汇合操作,你还可以经常使用不同的命令选用将结果前往给客户端还是存集到一个新的汇合中) 形容:zset 和 set 一样也是string类型元素的汇合,且不准许重复的成员。
不同是可以打分(排序) 罕用命令:zadd,zrange,zrem,zcard等 运行场景:排行榜,带权重的信息队列 形容:Bitmaps这个“数据结构”可以成功对位的操作。
把数据结构加上引号重要由于: Bitmaps自身不是一种数据结构, 实践上它就是字符串 , 然而它可以对字符串的位启动操作。
Bitmaps独自提供了一套命令, 所以在Redis中经常使用Bitmaps和经常使用字符串的方法不太相反。
可以把Bitmaps构想成一个以位为单位的数组, 数组的每个单元只能存储0和1, 数组的下标在Bitmaps中叫做偏移量。
其实大少数Bitmaps的运行场景可以用其余数据类型来成功,用Bitmaps重要是存储空间占用特意少 罕用命令:getbit key offset;setbit key offset value 运行场景:统计用户访问,统计电影某天的的播放量 形容:Redis 在 2.8.9 版本减少了 HyperLogLog 结构。
Redis HyperLogLog 是用来做基数统计的算法,HyperLogLog 的好处是,在输入元素的数量或许体积十分十分大时,计算基数所需的空间总是固定 的、并且是很小的。
在 Redis 外面,每个 HyperLogLog 键只有要破费 12 KB 内存,就可以计算凑近 2^64 个不同元素的基 数。
这和计算基数时,元素越多消耗内存就越多的汇合构成显明对比。
然而,由于 HyperLogLog 只会依据输入元历来计算基数,而不会贮存输入元素自身,所以 HyperLogLog 不能像汇合那样,前往输入的各个元素。
这类数据结构的基本大的思绪就是经常使用统计概率上的算法,就义数据的精准性来节俭内存的占用空间及优化关系操作的性能 罕用命令:pfadd, pfcount,pfmerge 运行场景:统计网站的每日UV 形容:GEO配置在Redis3.2版本提供,支持存储天文位置信息用来成功诸如左近位置、摇一摇这类依赖于天文位置信息的配置的数据类型为zset. 罕用命令:geoadd,geopos, geodist 运行场景:左近位置、摇一摇 参考列表:Redis五种数据类型及运行场景
redis的五种数据类型
redis的五种数据类型区分是:string、hash、list、set、zset。
一、string
string是redis最基本的类型,你可以了解成与Memcached如出一辙的类型,一个key对应一个value。
string类型是二进制安保的。
意思是redis的string可以蕴含任何数据。
比如jpg图片或许序列化的对象。
string类型是Redis最基本的数据类型,string类型的值最大能存储512MB。
二、hash
Redishash是一个键值(key=>value)对汇合。
Redishash是一个string类型的field和value的映射表,hash特意适宜用于存储对象。
HMSET,HGET命令,HMSET设置了两个field=>value对,HGET失掉对应field对应的value。
三、list
列表是繁难的字符串列表,依照拔出顺序排序。
可以减少一个元素到列表的头部(左边)或许尾部(左边)。
列表最多可存储232—1元素(,每个列表可存储40多亿)。
lpush设置值,lrange取值。
四、set
redis的set是string的无序汇合。
汇合经过哈希表成功。
减少一个string元素到key对应的set汇合中,用sadd命令。
前往1示意成功,0示意在汇合中已存在,前往失误示意key对应的set不存在。
检查用smembers命令。
五、zset
redis的zset和set一样也是string类型元素的汇合,且不准许重复的成员。
不同的是每个元素都会关联一个double类型的分数。
redis正是经过火数来为汇合中的成员启动从小到大的排序。
zset的成员是惟一的,但分数(score)却可以重复。
如何检查redis中的数据
1、首先双击关上电脑桌面上的Redis Desktop Manager运行程序的快捷方式。
2、关上软件之后,并点击左上角的【衔接到Redis主机】。
3、关上新增主机窗口,输入称号、地址、明码(假设Redis主机须要明码)后测试衔接并保留。
4、保留好之后,在左侧关上刚刚减少好的衔接,假设衔接反常就可以看到Redis主机的数据了。
可以经过该工具减少修正删除数据。