摘要: 无疑,作为key-value的nosql存储工具,redis中最核心的数据结构便是dict本身了。 哈希表作为查找效率 O(1)的数据结构,本身也存在着一些局限性,如hash算法的选择,怎样做到元素在桶内的均匀分布,及当哈希表内元素数量增多时,如果处理随着增加的碰撞,碰撞如果较深,会严重影响哈希表的效率redis中的dict便是hash实现的一个很好的范例,dict的实现中最巧妙地细节便是采用了类似双buffer的hash扩容方式,及缓慢的哈希表转移算法。1. 哈希表扩容方式【双buffer的hash表结构】1 typedef struct dict {2 dictType *type... 阅读全文
posted @ 2012-09-03 17:58 ~嘉言懿行~~我是煲仔饭~~ 阅读(700) 评论(0) 推荐(0) 编辑