有两种类型的  底层中的一个是,这是结构较小时使用的编码方法。这是在文章p3名单中引入的,这是redis的基础数据结构。本文主要解释了另一种实现方式,词典,词典,词典,这是结构较大时使用的一种编码方法。
  这里即将开始尸体的语言。作为常用的数据结构,语言内部不可用。因此,开发人员设计和开发了它们的结构如下:
  每个属性含义如下:
  从上面可以看出,它本质上是哈希表的简单包装。定义如下所示:
  每个属性含义如下:
&EMSP的示意图; 如下所示:
  上面提到的是,数据的真实存储的结构是一个数组,结构定义如下:
  它的示意图如下所示:
  最后,整个结构图引用了“重新设计和实现”中的图,如下所示:
  以上是不在状态的字典。总体上有两个哈希表存储数据,另一个存储数据为空,用于州的数据存储。
  当哈希表中的元素数量逐渐增加时,此时产生的概率逐渐增加。由于使用拉链方法,随着元素的增加,链接列表将变得越来越长,这将导致搜索搜索效率降低。相反,当元素继续减少时,元素占据率就越少。由于内存的最终使用,目前需要收缩操作。
  现在,在扩展和收缩方面,您是否想到了熟悉该系列的东西?是的,这是负载因子。负载因子通常用于描述当前填充的程度。在字典中,大小负责因子=哈希表中的节点/哈希表的数量,即:::
  在扩张和收缩的三个规则中:
  其中,扩张和收缩的数量具有某些规则:
  与中间类似,将发生它的扩展或收缩,并且该过程将发生。  简而言之,这是创建一个新的哈希表,一次进行所有当前节点,然后复制到新哈希表的相应位置,然后释放了原始表格,保留了新的表格引号,此过程是时间复杂性的操作。  对于单线线程,很难承受时间复杂的操作。因此,其过程不同。该过程如下:
  以上是逐步的重新恢复过程,但是在此过程中将存在两个明显的问题。
&EMSP的设计师; 在设计时考虑了这两个问题。对于第一个问题,有一个计时器来确定它是否不时完成。如果未完成,请继续。定时功能如下:
  对于第二个问题,对于添加操作,新数据将直接添加到上面,以便只能保证或不保证上层数字的数量。对于删除,更改和查询操作,将直接执行,尤其是这三个操作将涉及查询。当查询不可用时,它将找到它。键值配对。
优点:采用思想划分,将操作分散到哈希表的操作和计时器功能中,并避免集中度带来的性能压力
缺点:在此过程中,需要保存两个表,并且内存稍大,如果服务器充满了内存,则可能会导致很多放弃;
  为什么您需要考虑扩展时的影响,而您需要它?
REDIS在-Depth冒险中:核心原则和应用程序实践
REDIS系列(6)基础数据结构的字典
REHASH分析Redis Hash表
REDIS数据的五种数据结构的底层