首页 > 数据治理 > 数据治理 > [Redis] 浅谈Redis内的几种资料类型
面试被洗脸,发现对Redis的了解不够深,只好来恶补一下,这篇只会先简单介绍各个资料类型,command的部分会在之后的文章介绍
Key
在Redis内的Key是二进位安全的,任何可以转换成binary的都可以做为key,例如纯字串“abc” 又或是JPG档
针对Key有几个建议的规则
不要太长,例如用1024字元作为一个key
不要太短,较短的key虽然可以节省一些空间,但是缺乏可读性反而会造成其他问题,例如使用a1 a2 a3 作为key
使用相同pattern的命名模式
key最大的大小为512MB
1. String
在redis中最简单的类型,就是储存一个字串,同样的值的大小限制为512MB,储存结果会是key-value 一对一的对应
2. List
基本上就是值为String的Linked lists,没有顺序,允许重复,在操作上可以选择从前面取得资料或是从后面取得资料
3. Set
没有排序的string集合,且不允许重复,内部是透过Hash Table实现,故新增、删除、查询的复杂度都是O(1)
4. Sorted Set
与set相似,但再新增时多了一个“score” 需要指定,sorted set 会依据每一笔资料的score来做排序
5. Hash
Hash的使用有点像是在操作物件,新增一笔资料(hash),并且可以为他加入多个属性(property)
6. BitMap
对string的另一种操作,set时有两个参数,第一个为bit number,类似于在二进位中指定的2的平方数,第二个参数则是值,BitMap的优点在可以有较小的储存空间
以下为例,command执行后储存的内容分别为
> 1
> 11
> 011
> 1011
最后一个command “bitcount” 可以回传值为1的数量,故这边会得到3
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69979777/viewspace-2716087/ ,如需转载,请注明出处,否则将追究法律责任。