dict
特点
1.默认hash算法是SipHash
2.最频繁的数据结构
3.key value的实现
4.set的实现
5.zset的value和score的实现
内部结构
- 两个hashTable 组成(相当于java中的hashMap)组成
rehash
大字典rehash耗时比较长的,
redis 小布快跑 一次搬迁一点,各种命令和定时任务支持的.
hash攻击
hash算法有一定的偏向性,使其冲突进入同一个链表.
扩容条件(重点)
正常情况:元素数量超过一维数组的长度 就会扩容一个数据,长度是原数组的两倍.
特殊情况:bsave的时候,只有元素数量超过了一维数组的五倍才会强制扩容.
缩容条件
元素的长度低于一维数组长度的百分之10.
网友评论