加入收藏 | 设为首页 | 会员中心 | 我要投稿 济南站长网 (https://www.0531zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

Redis概念以及底层数据结构

发布时间:2019-04-18 12:15:24 所属栏目:MySql教程 来源:佚名
导读:副标题#e# Redis 简介 REmote DIctionary Server(Redis) 是一个由SalvatoreSanfilippo写的key-value存储系统。 Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。 它通

hashtable的是由dict这个结构来实现的, dict是一个字典,其中的指针dicht ht[2] 指向了两个哈希表

  1. typedef struct dict {  
  2. dictType *type;  
  3. void *privdata;  
  4. dictht ht[2];  
  5. long rehashidx; /* rehashing not in progress if rehashidx == -1 */  
  6. int iterators; /* number of iterators currently running */  
  7. } dict;  
  8. typedef struct dictht {  
  9. dictEntry **table;  
  10. unsigned long size;  
  11. unsigned long sizemask;  
  12. unsigned long used;  
  13. } dictht;  

dicht[0] 是用于真正存放数据,dicht[1]一般在哈希表元素过多进行rehash的时候用于中转数据。

dictht中的table用语真正存放元素了,每个key/value对用一个dictEntry表示,放在dictEntry数组中。

  • 集合对象

集合对象的编码可以是intset或者hashtable

(编辑:济南站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读