注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络数据库MongoDB性能调优实战

MongoDB性能调优实战

MongoDB性能调优实战

定 价:¥89.00

作 者: [澳]盖伊·哈里森,[澳]迈克尔·哈里森
出版社: 机械工业出版社
丛编项:
标 签: 暂缺

购买这本书可以去


ISBN: 9787111716167 出版时间: 2022-11-01 包装: 平装-胶订
开本: 16开 页数: 字数:  

内容简介

  本书分为以下几个主要部分:第 1-3 章介绍方法和技术。在这些章节中,我们描述了一种性能调优方法。还提供了一些关于 MongoDB 架构和 MongoDB 提供的用于调查、监控和诊断 MongoDB 性能的工具的背景知识。第 4 章和第 5 章介绍应用程序和数据库设计。第 6-10 章介绍应用程序代码的优化。第 11-14 章讨论MongoDB 服务器及其运行硬件的优化。

作者简介

  刘强,拥有十多年大数据与推荐系统相关实战经验。目前是电视猫大数据与人工智能团队负责人。入职公司后一手组建了大数据与人工智能团队,从零开始搭建公司的大数据平台,将数据分析、数据可视化、推荐系统、搜索等大数据及AI能力应用于公司业务中。目前,公司近30%的流量来源于推荐和搜索。创建了“数据与智能”社区(包括同名的微信公众号、视频号、知乎、B站等自媒体平台号),聚焦于数据分析、大数据、推荐系统、机器学习、人工智能等领域。

图书目录

译者序
前言
致谢
审校者简介
第一部分 方法和工具
第1章性能调优方法 2
1.1 警示故事 2
1.2 对症性能调优 3
1.3 系统性能调优 3
1.3.1 数据库请求剖析 3
1.3.2 MongoDB数据库的层次 4
1.4 小化应用程序工作负载 5
1.5 减少物理IO 6
1.6 优化磁盘IO 6
1.7 集群调优 7
1.8 小结 7
第2章MongoDB架构与概念 8
2.1 MongoDB文档模型 8
2.1.1 JSON 9
2.1.2 二进制JSON 9
2.1.3 集合 9
2.1.4 MongoDB schema 9
2.2 MongoDB协议 12
2.2.1 有线协议 12
2.2.2 MongoDB驱动程序 12
2.3 MongoDB命令 13
2.3.1 查找命令 13
2.3.2 聚合命令 14
2.3.3 数据操作命令 15
2.4 一致性机制 15
2.4.1 读取策略与写入策略 15
2.4.2 事务 16
2.5 查询优化 16
2.6 MongoDB架构 17
2.6.1 mongod 17
2.6.2 存储引擎 17
2.6.3 副本集 18
2.6.4 分片 19
2.6.5 分片机制 19
2.6.6 集群平衡 20
2.7 小结 20
第3章行业工具 21
3.1 explain() 21
3.1.1 开始使用explain() 22
3.1.2 替代计划 24
3.1.3 执行统计信息 25
3.1.4 使用explain()来调优查询 26
3.1.5 可视化解释函数的使用方法 28
3.2 查询剖析器 29
3.2.1 system.prof?ile集合 30
3.2.2 分析剖析数据 31
3.3 使用MongoDB日志进行调优 33
3.4 服务器统计信息 35
3.5 检查当前操作 38
3.6 操作系统监控 41
3.7 MongoDB Compass 42
3.8 小结 43
第二部分 应用程序与数据库设计
第4章schema建模 46
4.1 指导原则 46
4.2 链接与嵌入 47
4.2.1 案例研究 47
4.2.2 获取客户的所有数据 50
4.2.3 获取所有未结订单 51
4.2.4 热门产品 52
4.2.5 插入新订单 53
4.2.6 更新产品 54
4.2.7 删除客户 54
4.2.8 案例研究总结 55
4.3 高级模式 56
4.3.1 子集化 56
4.3.2 垂直分区 58
4.3.3 属性模式 58
4.4 小结 60
第5章索引 61
5.1 B树索引 61
5.1.1 索引选择性 62
5.1.2 唯一索引 63
5.1.3 索引扫描 63
5.1.4 不区分大小写的搜索 64
5.2 复合索引 65
5.2.1 复合索引性能 66
5.2.2 复合索引键顺序 66
5.2.3 复合索引指南 67
5.2.4 覆盖索引 67
5.3 索引合并 68
5.4 局部索引和稀疏索引 68
5.4.1 局部索引 69
5.4.2 稀疏索引 69
5.5 使用索引进行排序和连接 70
5.5.1 排序 70
5.5.2 连接 70
5.6 索引开销 70
5.7 文本索引 73
5.8 地理空间索引 78
5.8.1 地理空间索引性能 81
5.8.2 地理空间索引限制 81
5.9 小结 82
第三部分 MongoDB代码调优
第6章查询调优 84
6.1 缓存结果 84
6.2 优化网络往返 86
6.2.1 投影 86
6.2.2 批处理 87
6.2.3 在代码中避免过多的
 网络往返 88
6.2.4 批量插入 90
6.2.5 应用程序架构 90
6.3 选择索引与选择扫描 90
6.4 优化排序操作 93
6.5 选择或创建正确的索引 95
6.6 过滤策略 97
6.6.1 不等条件 97
6.6.2 范围查询 99
6.6.3 $OR或$IN操作 100
6.6.4 数组查询 101
6.6.5 正则表达式 102
6.6.6 $exists查询 103
6.7 优化集合扫描 105
6.8 小结 105
第7章调优和利用聚合管道 106
7.1 调优聚合管道 106
7.1.1 优化聚合排序 109
7.1.2 自动管道优化 111
7.2 优化多集合连接 113
7.2.1 连接顺序 115
7.2.2 优化图查找 116
7.3 聚合内存利用 118
7.4 在聚合管道中排序 119
7.4.1 索引聚合排序 119
7.4.2 磁盘排序 121
7.5 优化视图 122
7.6 小结 126
第8章插入、更新和删除 127
8.1 基础知识 127
8.1.1 过滤器优化 127
8.1.2 解释数据操作语句 128
8.1.3 索引开销 128
8.1.4 找到未使用的索引 129
8.1.5 写入策略 130
8.2 插入 130
8.2.1 批处理 130
8.2.2 克隆数据 132
8.2.3 从文件加载 134
8.3 更新 134
8.3.1 动态值批量更新 134
8.3.2 multi:true标志 135
8.3.3 upsert 136
8.3.4 使用$merge的批量upsert 137
8.4 删除 138
8.5 小结 138
第9章事务 139
9.1 事务理论 139
9.2 MongoDB事务 140
9.2.1 事务限制 141
9.2.2 TransientTransactionError 141
9.2.3 MongoDB驱动程序中的事务 143
9.2.4TransientTransactionError对
性能的影响 145
9.3 事务优化 146
9.3.1 避免事务 146
9.3.2 操作顺序 148
9.3.3 对热文档分区 149
9.4 小结 150
第10章服务器监控 152
10.1 主机级监控 152
10.1.1 网络 153
10.1.2 CPU 155
10.1.3 内存 156
10.1.4 磁盘IO 156
10.2 MongoDB服务器监控 156
10.2.1 Compass 156
10.2.2 Free Monitoring服务 157
10.2.3 Ops Manager 158
10.2.4 MongoDB Atlas 158
10.2.5 第三方监控工具 160
10.3 小结 160
第四部分 服务器调优
第11章内存调优 162
11.1 MongoDB内存架构 162
11.1.1 主机内

本目录推荐