美文网首页
Redis 中的数据结构(字典)

Redis 中的数据结构(字典)

作者: 加油_汤姆叔叔 | 来源:发表于2019-05-29 21:00 被阅读0次

Redis中有一种数据结构叫字典,又称Map,是一种用于保存键值对的抽象数据结构。表现为一个key对应一个value,同时每一个key都是独一无二的。在Redis中对数据库进行的增删改查操作就是建立在字典上面。同时哈希键也是基于字典实现的。

实现方式:

使用哈希表作为底层实现。一个哈希表中有多个哈希表节点,而每一个哈希表节点就保存了字典中的一个键值对。

结构包含:

1. 类型特定函数

2. 私有数据

3. 哈希表

4. rehash索引

从这张表中可以看出字典是由多个哈希表组成,ht[0],ht[1]就是两个哈希节点。

其他操作:

1. 字典中的某一个哈希表出现哈希冲突时解决冲突的方式以及扩容时进行的rehash方式同hashmap一致。当哈希表的负载因子小于0.1时候自动开始收缩工作。

2. 每个字典带有两张哈希表(就是上文中提到的ht[0],ht[1]),一个平时使用,另一个仅在进行rehash(渐进式rehash)时使用。

相关文章

  • redis-字典

    redis所使用的C语言并没有内置丰富的数据结构,因而redis实现了很多数据结构,本文主要介绍字典。 字典又叫映...

  • Redis数据结构--字典

    字典是Redis的重要数据结构,Redis的数据库就是使用字典作为底层实现的。代码位于dict.h和dict.c中...

  • Redis源码剖析 - Redis内置数据结构之字典dict

    哈希表在C++中对应的是map数据结构,但在Redis中称作dict(字典)。Redis只是用了几个简单的结构体和...

  • redis底层数据组织方式

    底层数据结构 redis底层数据结构有:字典、双端链表、压缩链表、整数集合、跳跃表和字典、整数集合、embstr ...

  • redis数据结构(三):字典 dict

    redis的字典使用哈希表作为底层实现。hash表的数据结构 hash表节点数据结构 这里看到链表了吧。redis...

  • redis基本数据结构

    redis 基本数据结构. redis的基本数据结构主要有: SDS动态字符串,链表,字典,哈希表,跳跃表,整数集...

  • redis字典源码简单分析

    字典是redis底层数据结构之一,在dict.c中实现,下面分析下他的实现。 一.简介 redis的dict仍然是...

  • Redis 总结

    [TOC] 一、Redis 基础常问 1.1、Redis 有哪些数据结构 基础:字符串String、字典Hash、...

  • Redis面试相关

    1.Redis中的数据结构 答:字符串String、字典Hash、列表List、集合Set、有序集合SortedS...

  • Redis知识梳理——数据结构

    Redis共有5中主要的数据结构 1,String字符串 2,List 列表 3,dict字典 4,set 集合 ...

网友评论

      本文标题:Redis 中的数据结构(字典)

      本文链接:https://www.haomeiwen.com/subject/vbeutctx.html