数据库技术丛书 Redis5设计与源码分析PDF电子书下载
- 电子书积分:14 积分如何计算积分?
- 作 者:(中国)陈雷
- 出 版 社:北京:机械工业出版社
- 出版年份:2019
- ISBN:9787111632788
- 页数:417 页
第1章 引言 1
1.1 Redis简介 1
1.2 Redis 5.0的新特性 2
1.3 Redis源码概述 3
1.4 Redis安装与调试 4
1.5 本章小结 6
第2章 简单动态字符串 7
2.1 数据结构 7
2.2 基本操作 11
2.2.1 创建字符串 11
2.2.2 释放字符串 12
2.2.3 拼接字符串 12
2.2.4 其余API 15
2.3 本章小结 15
第3章 跳跃表 17
3.1 简介 17
3.2 跳跃表节点与结构 19
3.2.1 跳跃表节点 19
3.2.2 跳跃表结构 20
3.3 基本操作 20
3.3.1 创建跳跃表 21
3.3.2 插入节点 22
3.3.3 删除节点 28
3.3.4 删除跳跃表 30
3.4 跳跃表的应用 31
3.5 本章小结 32
第4章 压缩列表 33
4.1 压缩列表的存储结构 33
4.2 结构体 35
4.3 基本操作 37
4.3.1 创建压缩列表 37
4.3.2 插入元素 38
4.3.3 删除元素 42
4.3.4 遍历压缩列表 44
4.4 连锁更新 44
4.5 本章小结 45
第5章 字典 47
5.1 基本概念 47
5.1.1 数组 48
5.1.2 Hash函数 49
5.1.3 Hash冲突 51
5.2 Redis字典的实现 52
5.3 基本操作 55
5.3.1 字典初始化 55
5.3.2 添加元素 56
5.3.3 查找元素 60
5.3.4 修改元素 61
5.3.5 删除元素 61
5.4 字典的遍历 62
5.4.1 迭代器遍历 62
5.4.2 间断遍历 65
5.5 API列表 70
5.6 本章小结 71
第6章 整数集合 72
6.1 数据存储 72
6.2 基本操作 75
6.2.1 查询元素 75
6.2.2 添加元素 78
6.2.3 删除元素 82
6.2.4 常用API 83
6.3 本章小结 85
第7章 quicklist的实现 86
7.1 quicklist简介 86
7.2 数据存储 87
7.3 数据压缩 91
7.3.1 压缩 92
7.3.2 解压缩 93
7.4 基本操作 94
7.4.1 初始化 94
7.4.2 添加元素 95
7.4.3 删除元素 96
7.4.4 更改元素 98
7.4.5 查找元素 99
7.4.6 常用API 100
7.5 本章小结 101
第8章 Stream 102
8.1 Stream简介 102
8.1.1 Stream底层结构listpack 103
8.1.2 Stream底层结构Rax简介 104
8.1.3 Stream结构 108
8.2 Stream底层结构listpack的实现 112
8.2.1 初始化 112
8.2.2 增删改操作 112
8.2.3 遍历操作 113
8.2.4 读取元素 113
8.3 Stream底层结构Rax的实现 114
8.3.1 初始化 114
8.3.2 查找元素 114
8.3.3 添加元素 116
8.3.4 删除元素 118
8.3.5 遍历元素 120
8.4 Stream结构的实现 123
8.4.1 初始化 124
8.4.2 添加元素 124
8.4.3 删除元素 125
8.4.4 查找元素 128
8.4.5 遍历 129
8.5 本章小结 131
第9章 命令处理生命周期 132
9.1 基本知识 132
9.1.1 对象结构体robj 132
9.1.2 客户端结构体client 136
9.1.3 服务端结构体redisServer 138
9.1.4 命令结构体redisCommand 139
9.1.5 事件处理 141
9.2 server启动过程 149
9.2.1 server初始化 149
9.2.2 启动监听 152
9.3 命令处理过程 155
9.3.1 命令解析 156
9.3.2 命令调用 159
9.3.3 返回结果 161
9.4 本章小结 163
第10章 键相关命令的实现 164
10.1 对象结构体和数据库结构体回顾 164
10.1.1 对象结构体redisObject 164
10.1.2 数据库结构体redisDb 166
10.2 查看键信息 166
10.2.1 查看键属性 166
10.2.2 查看键类型 169
10.2.3 查看键过期时间 170
10.3 设置键信息 171
10.3.1 设置键过期时间 171
10.3.2 删除键过期时间 172
10.3.3 重命名键 173
10.3.4 修改键最后访问 173
10.4 查找键 174
10.4.1 判断键是否存在 174
10.4.2 查找符合模式的键 175
10.4.3 遍历键 176
10.4.4 随机取键 177
10.5 操作键 178
10.5.1 删除键 178
10.5.2 序列化/反序列化键 182
10.5.3 移动键 183
10.5.4 键排序 185
10.6 本章小结 187
第11章 字符串相关命令的实现 188
11.1 相关命令介绍 188
11.2 设置字符串 189
11.2.1 set命令 189
11.2.2 mset命令 195
11.3 修改字符串 196
11.3.1 append命令 196
11.3.2 setrange命令 197
11.3.3 计数器命令 197
11.4 字符串获取 199
11.4.1 get命令 199
11.4.2 getset命令 199
11.4.3 getrange命令 199
11.4.4 strlen命令 200
11.4.5 mget命令 201
11.5 字符串位操作 201
11.5.1 setbit命令 201
11.5.2 getbit命令 203
11.5.3 bitpos命令 203
11.5.4 bitcount命令 205
11.5.5 bitop命令 208
11.5.6 bitfield命令 209
11.6 本章小结 212
第12章 散列表相关命令的实现 213
12.1 简介 213
12.1.1 底层存储 213
12.1.2 底层存储转换 215
12.1.3 接口说明 215
12.2 设置命令 216
12.3 读取命令 217
12.3.1 hexists命令 218
12.3.2 hget/hmget命令 218
12.3.3 hkeys/hvals/hgetall命令 219
12.3.4 hlen命令 220
12.3.5 hscan命令 220
12.4 删除命令 221
12.5 自增命令 222
12.6 本章小结 224
第13章 列表相关命令的实现 225
13.1 相关命令介绍 225
13.1.1 命令列表 225
13.1.2 栈和队列命令列表 226
13.2 push/pop相关命令 228
13.2.1 push类命令的实现 228
13.2.2 pop类命令的实现 229
13.2.3 阻塞push/pop类命令的实现 230
13.3 获取列表数据 234
13.3.1 获取单个元素 234
13.3.2 获取多个元素 235
13.3.3 获取列表长度 236
13.4 操作列表 236
13.4.1 设置元素 237
13.4.2 插入元素 237
13.4.3 删除元素 238
13.4.4 裁剪列表 239
13.5 本章小结 240
第14章 集合相关命令的实现 241
14.1 相关命令介绍 241
14.2 集合运算 254
14.2.1 交集 254
14.2.2 并集 258
14.2.3 差集 260
14.3 本章小结 263
第15章 有序集合相关命令的实现 264
15.1 相关命令介绍 264
15.2 基本操作 272
15.2.1 添加成员 272
15.2.2 删除成员 275
15.2.3 基数统计 276
15.2.4 数量计算 277
15.2.5 计数器 279
15.2.6 获取排名 279
15.2.7 获取分值 279
15.2.8 遍历 280
15.3 批量操作 280
15.3.1 范围查找 280
15.3.2 范围删除 283
15.4 集合运算 284
15.5 本章小结 284
第16章 GEO相关命令 285
16.1 基础知识 285
16.2 命令实现 288
16.2.1 使用geoadd添加坐标 288
16.2.2 计算坐标的geohash 291
16.2.3 使用geopos查询位置经纬度 292
16.2.4 使用geodist计算两点距离 295
16.2.5 使用georadius/georadius-bymembe查询范围内元素 295
16.3 本章小结 297
第17章 HyperLogLog相关命令的实现 298
17.1 基本原理 298
17.1.1 算法演进 299
17.1.2 线性计数算法 299
17.1.3 对数计数算法 300
17.1.4 自适应计数算法 302
17.1.5 超对数计数算法 302
17.2 HLL Redis实现 302
17.2.1 HLL头对象 303
17.2.2 稀疏编码 304
17.2.3 密集编码 306
17.2.4 内部编码 308
17.2.5 编码转换 309
17.3 命令实现 310
17.3.1 添加基数 310
17.3.2 近似基数 311
17.3.3 合并基数 313
17.4 本章小结 314
第18章 数据流相关命令的实现 315
18.1 相关命令介绍 315
18.2 基本操作命令原理分析 323
18.2.1 添加消息 323
18.2.2 删除消息 325
18.2.3 范围查找 326
18.2.4 获取队列信息 327
18.2.5 长度统计 327
18.2.6 剪切消息 328
18.3 分组命令原理分析 328
18.3.1 分组管理 328
18.3.2 消费消息 330
18.3.3 响应消息 331
18.3.4 获取未响应消息列表 331
18.3.5 修改指定未响应消息归属 331
18.4 本章小结 332
第19章 其他命令 333
19.1 事务 333
19.1.1 事务简介 333
19.1.2 事务命令实现 334
19.2 发布-订阅命令实现 339
19.3 Lua脚本 345
19.3.1 初始化Lua环境 345
19.3.2 在Lua中调用Redis命令 347
19.3.3 Redis和Lua数据类型转换 349
19.3.4 命令实现 351
19.4 本章小结 356
第20章 持久化 357
20.1 RDB 358
20.1.1 RDB执行流程 358
20.1.2 RDB文件结构 359
20.2 AOF 367
20.2.1 AOF执行流程 368
20.2.2 AOF重写 369
20.3 RDB与AOF相关配置指令 372
20.4 本章小结 374
第21章 主从复制 375
21.1 主从复制功能实现 375
21.2 主从复制源码基础 378
21.3 slaver源码分析 382
21.4 master源码分析 388
21.5 本章小结 391
第22章 哨兵和集群 392
22.1 哨兵 392
22.1.1 哨兵简介 393
22.1.2 代码流程 394
22.1.3 主从切换 396
22.1.4 常用命令 399
22.2 集群 400
22.2.1 集群简介 401
22.2.2 代码流程 402
22.2.3 主从切换 404
22.2.4 副本漂移 406
22.2.5 分片迁移 407
22.2.6 通信数据包类型 409
22.3 本章小结 415
- 《水面舰艇编队作战运筹分析》谭安胜著 2009
- 《SQL与关系数据库理论》(美)戴特(C.J.Date) 2019
- 《分析化学》陈怀侠主编 2019
- 《《走近科学》精选丛书 中国UFO悬案调查》郭之文 2019
- 《数据库技术与应用 Access 2010 微课版 第2版》刘卫国主编 2020
- 《新编历史小丛书 祖逖北伐》何兹全著 2019
- 《影响葡萄和葡萄酒中酚类特征的因素分析》朱磊 2019
- 《国际经典影像诊断学丛书 消化影像诊断学 原著第3版》王振常,蒋涛,李宏军,杨正汉译;(美)迈克尔·P.费德勒 2019
- 《本草古籍辑注丛书 第1辑 《食疗本草》辑校》(唐)孟诜撰;(唐)张鼎增补;尚志钧辑校 2019
- 《仪器分析技术 第2版》曹国庆 2018
- 《国学经典诵读》(中国)严琼燕 2019
- 《思维导图 超好用英语单词书》(中国)王若琳 2019
- 《东北民歌文化研究及艺术探析》(中国)杨清波 2019
- 《中国当代乡土小说文库 本乡本土》(中国)刘玉堂 2019
- 《两京烟云》陈诗泳,赖秀俞责任编辑;(中国)千慧 2019
- 《HTML5从入门到精通 第3版》(中国)明日科技 2019
- 《MBA大师.2020年MBAMPAMPAcc管理类联考专用辅导教材 数学考点精讲》(中国)董璞 2019
- 《莼江曲谱 2 中国昆曲博物馆藏稀见昆剧手抄曲谱汇编之一》郭腊梅主编;孙伊婷副主编;孙文明,孙伊婷编委;中国昆曲博物馆编 2018
- 《中国制造业绿色供应链发展研究报告》中国电子信息产业发展研究院 2019
- 《2013数学奥林匹克试题集锦 走向IMO》2013年IMO中国国家集训队教练组编 2013
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《高等教育双机械基础课程系列教材 高等学校教材 机械设计课程设计手册 第5版》吴宗泽,罗圣国,高志,李威 2018
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《中国十大出版家》王震,贺越明著 1991
- 《近代民营出版机构的英语函授教育 以“商务、中华、开明”函授学校为个案 1915年-1946年版》丁伟 2017
- 《新工业时代 世界级工业家张毓强和他的“新石头记”》秦朔 2019
- 《智能制造高技能人才培养规划丛书 ABB工业机器人虚拟仿真教程》(中国)工控帮教研组 2019
- 《AutoCAD机械设计实例精解 2019中文版》北京兆迪科技有限公司编著 2019