听老歌 发表于 2012-02-16 18:14

redis源码分析-如何rehash

redis源码分析-如何rehash







hash table是一种高效的数据结构,被广泛的用在key-value存储中,Redis的dict其实就是一个典型的hash table实现。

rehash是在hash table的大小不能满足需求,造成过多hash碰撞后需要进行的扩容hash table的操作,其实通常的做法确实是建立一个额外的hash table,将原来的hash table中的数据在新的数据中进行重新输入,从而生成新的hash表。

本文是对Redis rehash操作的一个源码级讲解,redis的 rehash包括了lazy rehashing和active rehashing两种方式

•lazy rehashing:在每次对dict进行操作的时候执行一个slot的rehash
•active rehashing:每100ms里面使用1ms时间进行rehash。
详细讲解讲看原文。

原文链接:《redis源码分析-如何rehash》

小忻黑夜 发表于 2012-02-17 22:59

谢谢分享
页: [1]
查看完整版本: redis源码分析-如何rehash