当前位置: 首页 > ai >正文

redis的hash表如何扩容

随着哈希表1的数据增多,会触发rehash,创建哈希表2,一般比哈希表1大两倍,然后逐渐把哈希表1的数据迁移到哈希表2,迁移完成后哈希表1的空间被释放,然后把哈希表2命名为哈希表1。

然而在数据迁移时,如果采用一次性迁移可能会因数据量过大出现抖动,影响性能,所以redis采用了渐进式rehash,即迁移工作分多次完成。过程如下:

  • 给「哈希表2」分配空间;
  • 在rehash进行期间,每次哈希表进行增删改查时,Redis除了会执行对应的操作之外,还会顺序将「哈希表1」中索引位置上的所有key-value迁移到「哈希表2」上;
  • 随着处理客户端发起的哈希表操作请求数量越多,最终在某个时间点会把「哈希表1」的所有key-value迁移到「哈希表2」,从而完成rehash操作。

扩容期间如果有读请求,会先在表1查,查不到再去表2查。

http://www.xdnf.cn/news/19994.html

相关文章:

  • Web与Nginx网站服务
  • 2025数学建模国赛高教社杯A题思路代码文章助攻
  • 【CS32L015C8T6】配置单片机PWM输出(内附完整代码及注释)
  • rh134第二章复习总结
  • 0904 类的继承
  • 【前端:Html】--5.进阶:APIs
  • 遇享会—金湾读书会—第四期—你好,陌生人——20250823
  • 【FPGA】单总线——DS18B20
  • 单向链表的一些基本操作(Java)
  • Python可视化93阅兵武器进化
  • Git常用命令大全:高效开发必备
  • 基于SpringBoot的家政保洁预约系统【2026最新】
  • CSDN 与 掘金 高效学习指南
  • 微信支付--在线支付实战,引入Swagger,定义统一结果,创建并连接数据库
  • [Linux] Linux标准块设备驱动详解:从原理到实现
  • 2025年数学建模国赛E题超详细解题思路
  • 【读书笔记】《好奇心》
  • Spring Cloud LoadBalancer 核心原理
  • 开关电源——只需这三个阶段,从电源小白到维修大神
  • 什么是基于AI的智能RPA?
  • 传统装修行业数字化转型:如何通过GEO工具实现300%业绩增长?
  • QT面经(含相关知识)
  • 【面试题】如何构造排序模型训练数据?解决正负样本不均?
  • 机器学习中决策树
  • LeetCode 48 - 旋转图像算法详解(全网最优雅的Java算法
  • 安全与效率兼得:工业控制系统如何借力数字孪生实现双赢?
  • CPTS-Manager ADCS ESC7利用
  • HTML图片标签及路径详解
  • 代码随想录训练营第三十一天|LeetCode56.合并区间、LeetCode738.单调递增的数字
  • freertos下printf(“hello\r\n“)和printf(“hello %d\r\n“,i)任务堆栈消耗有何区别