05、Redis 源码解析 - 整数集合(intset)
Redis 整数集合(intset) 1. 介绍 整数集合(intset)是集合键底层实现之一。集合键另一实现是值为空的散列表(hash table),虽然使用散列表对集合的加入删除元素,判断元素是否存在等等操作时间复杂度为O(1),但是当...
Redis 整数集合(intset) 1. 介绍 整数集合(intset)是集合键底层实现之一。集合键另一实现是值为空的散列表(hash table),虽然使用散列表对集合的加入删除元素,判断元素是否存在等等操作时间复杂度为O(1),但是当...
Redis 跳跃表(skiplist) 1. 跳跃表(skiplist)介绍 定义:跳跃表是一个有序链表,其中每个节点包含不定数量的链接,节点中的第i个链接构成的单向链表跳过含有少于i个链接的节点。 跳跃表支持平均O(logN),最坏O(N...
公众号:“皇子谈技术”主理人
Redis 字典结构 1. 介绍 字典又称为符号表(symbol table)、关联数组(associative array)或映射(map),是一种用于保存键值对(key-value pair)的抽象数据结构。例如:redis中的所有ke...
Redis 简单动态字符串 1.介绍 Redis兼容传统的C语言字符串类型,但没有直接使用**C语言的传统的字符串(以’\0’结尾的字符数组)表示,而是自己构建了一种名为简单动态字符串(simple dynamic string,SDS)*...
Redis源码剖析—链表结构 1. redis中的链表 在redis中链表的应用非常广泛,例如列表键的底层实现之一就是链表。而且,在redis中的链表结构被实现成为双向链表,因此,在头部和尾部进行的操作就会非常快。 127.0.0.1:63...
一. 问题描述 前两天在帮朋友在CentOS 8.5 安装了最新的MySQL 8.0.27,安装方式为编译安装。 才刚上线2天,就发现CPU长期负载100%,而且不管是高峰期还是低峰期,都是100%。 通过FinalShell查看: 通过t...
一. 问题描述 朋友的数据库应用最近反馈比较慢。 他的需求是首先获取表的一行数据,为了避免并发的冲突,先锁定,然后再更新数据的状态。 二. 解决方案 锁定语句 SELECT id,col1 FROM tab_name WHERE statu...
备注: OS:CentOS 7.9 DB: MySQL 5.7.31 一.问题描述 奇了怪了,MySQL 二进制安装也安装了很多生产实例了,一直没遇到过这个问题,为什么今天安装MySQL出了这么多的问题。 二.解决方案 2.1 增加–lc_...
一.问题描述 今天一个做Java开发的哥们向我咨询了一个问题。 他想把一个300多万条数据数据的表迁移到本地测试环境,他处理的方案是 先通过mysqldump命令将该表做一个备份,然后传输到测试环境,最后执行备份文件。 理想很丰满,现实很骨...
备注: MySQL 5.7.31 一.问题描述 之前帮朋友搭建的MySQL数据库,说是有个表的数据被误删除了,现在需要进行恢复。 二. 解决方案 还好我之前给他安装MySQL数据库的时候,特意做了备份,每天凌晨都会把整库进行备份。 2.1 ...