商品详情
书名:MongoDB*指南:第3版
定*:129.8
ISBN:9787**5576538
作者:香农·布拉德肖等
版次:第2版
出版时间:202*-**
内容提要:
与传统的关系数据库*同,MongoDB是*种面向文档的数据库。本书这*版共分为6个*分,涵盖开发、管理以及*署等各个方面。这*版对TTL和聚合管道等新*性进行了讲解,还增加了配置MongoDB的章节,涵盖面向文档的存储方式及利用MongoDB的*模式数据模型处理文档、集合和多个数据库,以及监控、*性和身份验证、备份和修复、水平扩展MongoDB数据库等多方面的内容。
作者简介:
香农·布拉德肖(Shannon Bradshaw)是MongoDB公司培训*门副总裁,负责管理MongoDB*业认证项目提供的培训产品。 约恩·布拉齐尔(Eoin Brazil)是MongoDB公司*级课程工程师,*力于开发与MongoDB相关的在线培训产品。 克里斯蒂娜·霍多罗夫(Kristina Chodorow)是软件工程师,曾深度参与MongoDB的内核开发工作。她*导了MongoDB副本集功能的开发并编写了PHP和Perl的驱动程序。 【译者介绍】 牟天垒,架构师,MongoDB官方认证双证持有者,MongoDB官方中文社区核心成员,MongoDB生态工具Tapdata*始工程师,*力于实时数据服务理念的实现。 *明辉,本科*读于同济大学,从事*栈开发多年,参与过数个*业项目,也对开源社区有所贡献,现*职于微软(亚洲)互联网工程院。
目录:
前言 xvii
第 **分 MongoDB入门
第 * 章 MongoDB简介 3
*.* 易于使用 3
*.2 易于扩展 3
*.3 功能丰富 4
*.4 性能*越 5
*.5 设计理念 5
第 2 章 入门指南 6
2.* 文档 6
2.2 集合 7
2.2.* 动态模式 7
2.2.2 命名 8
2.3 数据库 8
2.4 启动MongoDB 9
2.5 MongoDB shell介绍 *0
2.5.* 运行shell *0
2.5.2 MongoDB客户端 **
2.5.3 shell中的基本操作 *2
2.6 数据类型 *4
2.6.* 基本数据类型 *4
2.6.2 日期 *5
2.6.3 数组 *6
2.6.4 内嵌文档 *6
2.6.5 ObjectId和_id *7
2.7 使用MongoDB shell *8
2.7.* shell使用技巧 *9
2.7.2 使用shell执行脚本 *9
2.7.3 *建.mongorc.js文件 2*
2.7.4 定制shell提示信息 22
2.7.5 编辑复杂变量 23
2.7.6 *便使用的集合名称 23
第 3 章 *建、更新和删除文档 25
3.* 插入文档 25
3.*.* insertMany 25
3.*.2 插入校验 28
3.*.3 插入 28
3.2 删除文档 28
3.3 更新文档 30
3.3.* 文档替换 30
3.3.2 使用更新运算符 3*
3.3.3 upsert 40
3.3.4 更新多个文档 42
3.3.5 返回被更新的文档 42
第 4 章 查询 45
4.* find简介 45
4.*.* *要返回的键 46
4.*.2 限制 46
4.2 查询条件 47
4.2.* 查询条件 47
4.2.2 OR查询 47
4.2.3 $not 48
4.3 *定类型的查询 48
4.3.* null 49
4.3.2 正则表达式 49
4.3.3 查询数组 50
4.3.4 查询内嵌文档 54
4.4 $where查询 55
4.5 游标 56
4.5.* limit、skip和sort 57
4.5.2 避*略过大量结果 58
4.5.3 游标生命周期 59
第二*分 设计应用程序
第 5 章 索引 63
5.* 索引简介 63
5.*.* *建索引 65
5.*.2 复合索引简介 68
5.*.3 MongoDB如何选择索引 7*
5.*.4 使用复合索引 72
5.*.5 $运算符如何使用索引 88
5.*.6 索引对象和数组 97
5.*.7 索引基数 99
5.2 explain输出 99
5.3 何时*使用索引 *06
5.4 索引类型 *07
5.4.* 唯*索引 *07
5.4.2 *分索引 *09
5.5 索引管理 **0
5.5.* 标识索引 ***
5.5.2 修改索引 ***
第 6 章 *殊的索引和集合类型 **2
6.* 地理空间索引 **2
6.*.* 地理空间查询的类型 **3
6.*.2 使用地理空间索引 **4
6.*.3 复合地理空间索引 *20
6.*.4 2d索引 *2*
6.2 *文搜索索引 *23
6.2.* *建文本索引 *23
6.2.2 文本查询 *24
6.2.3 *化*文本搜索 *26
6.2.4 在其他语言中搜索 *26
6.3 固定集合 *27
6.3.* *建固定集合 *29
6.3.2 可追加游标 *29
6.4 TTL索引 *30
6.5 使用GridFS存储文件 *30
6.5.* GridFS入门:mongofiles *3*
6.5.2 在MongoDB驱动程序中使用GridFS *3*
6.5.3 GridFS的底层机制 *32
第 7 章 聚合框架 *34
7.* 管道、*段和可调参数 *34
7.2 *段入门:常见操作 *36
7.3 表达式 *40
7.4 $project *40
7.5 $unwind *45
7.6 数组表达式 *5*
7.7 累加器 *55
7.8 分组简介 57
7.8.* 分组*段中的_id字段 *6*
7.8.2 分组与投射 *63
7.9 将聚合管道结果写入集合中 *66
第 8 章 事务 *67
8.* 事务简介 *67
8.2 如何使用事务 *68
8.3 对应用程序的事务限制进行调* *7*
第 9 章 应用程序设计 *73
9.* 模式设计注意事项 *73
9.2 范式化与反范式化 *76
9.2.* 数据表示的示例 *76
9.2.2 基数 *80
9.2.3 好友、粉丝以及其他麻烦事项 *80
9.3 *化数据操作 *82
9.4 数据库和集合的设计 *83
9.5 **性管理 *83
9.6 模式迁移 *84
9.7 模式管理 *85
9.8 *适合使用MongoDB的场景 *85
第三*分 复制
第 *0 章 *建副本集 *89
*0.* 复制简介 *89
*0.2 建立副本集(*) *90
*0.3 网络注意事项 *9*
*0.4 *注意事项 *9*
*0.5 建立副本集(二) *9*
*0.6 观察副本集 *94
*0.7 更改副本集配置 *99
*0.8 如何设计副本集 20*
*0.9 成员配置选项 203
*0.9.* *先级 204
*0.9.2 隐藏成员 204
*0.9.3 选举仲裁者 205
*0.9.4 *建索引 206
第 ** 章 副本集的组成 207
**.* 同步 207
**.*.* 初始化同步 209
**.*.2 复制 2*0
**.*.3 处理过时数据 2*0
**.2 心跳 2*0
**.3 选举 2*2
**.4 回滚 2*2
第 *2 章 从应用程序连接副本集 2*6
*2.* 客户端到副本集的连接行为 2*6
*2.2 在写入时等待复制 2*8
*2.3 自定义复制*证规则 2*9
*2.3.* *证复制到每个数据中心的*台服务器上 2*9
*2.3.2 *证写操作被复制到大多数非隐藏节点 220
*2.3.3 *建其他*证规则 22*
*2.4 将读请求发送到从节点 22*
*2.4.* **性考虑 222
*2.4.2 负载考虑 222
*2.4.3 由从节点读取数据的场景 223
第 *3 章 管理 224
*3.* 以单机模式启动成员 224
*3.2 副本集配置 225
*3.2.* *建副本集 225
*3.2.2 更改副本集成员 225
*3.2.3 *建比较大的副本集 226
*3.2.4 强制重新配置 226
*3.3 控制成员状态 227
*3.3.* 把主节点变为从节点 227
*3.3.2 阻止选举 227
*3.4 监控复制 228
*3.4.* 获取状态 228
*3.4.2 可视化复制图谱 23*
*3.4.3 复制循环 232
*3.4.4 禁用复制链 232
*3.4.5 计算延迟 233
*3.4.6 调整oplog大小 234
*3.4.7 *建索引 234
*3.4.8 在预算有限的情况下进行复制 235
第四*分 分片
第 *4 章 分片简介 239
*4.* 什么是分片 239
*4.2 理解集群组件 240
*4.3 在单机集群上进行分片 24*
第 *5 章 配置分片 250
*5.* 何时分片 250
*5.2 启动服务器 25*
*5.2.* 配置服务器 25*
*5.2.2 mongos进程 252
*5.2.3 将副本集转换为分片 252
*5.2.4 增加集群容量 256
*5.2.5 数据分片 256
*5.3 MongoDB如何追踪集群数据 256
*5.3.* 块范围 257
*5.3.2 拆分块 259
*5.4 均衡器 26*
*5.5 排序规则 26*
*5.6 变更流 26*
第 *6 章 选择片键 263
*6.* 评估使用情况 263
*6.2 描绘分发情况 264
*6.2.* *序片键 264
*6.2.2 随机分发的片键 266
*6.2.3 基于位置的片键 267
*6.3 片键策略 268
*6.3.* 哈希片键 268
*6.3.2 GridFS的哈希片键 270
*6.3.3 消*水管策略 270
*6.3.4 多热点 27*
*6.4 片键规则和指导方针 273
*6.4.* 片键的限制 273
*6.4.2 片键的基数 273
*6.5 控制数据分发 273
*6.5.* 对多个数据库和集合使用*个集群 273
*6.5.2 手动分片 275
第 *7 章 分片管理 276
*7.* 查看当前状态 276
*7.*.* 使用sh.status()查看摘要信息 276
*7.*.2 查看配置信息 278
*7.2 跟踪网络连接 283
*7.2.* 获取连接统计 284
*7.2.2 限制连接数量 289
*7.3 服务器管理 290
*7.3.* 添加服务器 29*
*7.3.2 修改分片中的服务器 29*
*7.3.3 删除分片 29*
*7.4 数据均衡 294
*7.4.* 均衡器 294
*7.4.2 修改块的大小 295
*7.4.3 移动块 296
*7.4.4 *大块 298
*7.4.5 刷新配置 300
第五*分 应用程序管理
第 *8 章 了解应用程序的动态 303
*8.* 查看当前操作 303
*8.*.* 寻找有问题的操作 306
*8.*.2 *止操作 306
*8.*.3 假象 307
*8.*.4 *止幻象操作 307
*8.2 使用系统分析器 307
*8.3 计算大小 3*0
*8.3.* 文档 3*0
*8.3.2 集合 3**
*8.3.3 数据库 3*5
*8.4 使用mongotop和mongostat 3*6
第 *9 章 MongoDB*介绍 3*8
*9.* MongoDB的身份验证和授权 3*8
*9.*.* 身份验证机制 3*8
*9.*.2 授权 3*9
*9.*.3 使用x.509证书对成员和客户端进行身份验证 320
*9.2 MongoDB的认证和传输层加密教程 323
*9.2.* 建立CA 323
*9.2.2 生成并签名成员证书 327
*9.2.3 生成并签名客户端证书 328
*9.2.4 在*启用身份验证和授权的情况下启动副本集 328
*9.2.5 *建admin用户 329
*9.2.6 启用身份验证和授权并重新启动副本集 330
第 20 章 持久性 332
20.* 使用日志机制的成员级别持久性 332
20.2 使用写关注的集群级别持久性 333
20.2.* writeConcern的w和wtimeout选项 334
20.2.2 writeConcern的j(日志)选项 334
20.3 使用读关注的集群级别持久性 335
20.4 使用写关注的事务持久性 335
20.5 MongoDB*能*证什么 336
20.6 检查数据损坏 336
第六*分 服务器端管理
第 2* 章 在生产环境中设置MongoDB 34*
2*.* 从命令行启动 34*
2*.2 停止MongoDB 345
2*.3 *性 346
2*.3.* 数据加密 347
2*.3.2 SSL连接 347
2*.4 日志 348
第 22 章 监控MongoDB 349
22.* 监控内存使用情况 349
22.*.* 计算机内存简介 349
22.*.2 跟踪内存使用情况 350
22.*.3 跟踪缺页错误 35*
22.*.4 I/O 等待 352
22.2 计算工作集的大小 352
22.3 跟踪性能情况 354
22.4 跟踪剩余空间 355
22.5 监控复制情况 356
第 23 章 备份 359
23.* 备份方法 359
23.2 对服务器进行备份 360
23.2.* 文件系统快照 360
23.2.2 复制数据文件 363
23.2.3 使用mongodump 364
23.3 副本集的*殊注意事项 366
23.4 分片集群的*殊注意事项 366
23.4.* 备份和恢复整个集群 367
23.4.2 备份和恢复单个分片 367
第 24 章 *署MongoDB 368
24.* 系统设计 368
24.*.* 选择存储介质 368
24.*.2 推荐的RAID配置 369
24.*.3 CPU 370
24.*.4 操作系统 370
24.*.5 交换空间 370
2*.*.6 文件系统 37*
24.2 虚拟化 37*
24.2.* 内存过度分配 37*
24.2.2 *秘的内存 37*
24.2.3 处理网络磁盘的I/O 问题 372
24.2.4 使用非网络磁盘 373
24.3 配置系统设置 373
24.3.* 关闭NUMA 373
24.3.2 设置预读 375
24.3.3 禁用透明大内存页(THP) 375
24.3.4 选择磁盘调度算法 376
24.3.5 禁用访问时间跟踪 376
24.3.6 修改限制 377
24.4 网络配置 378
24.5 系统管理 379
24.5.* 时钟同步 379
24.5.2 OOM killer 379
24.5.3 关闭定期任务 379
附录A 安装MongoDB 380
附录B 深入MongoDB 384
- 人民邮电出版社有限公司 (微信公众号认证)
- 人民邮电出版社微店,为您提供最全面,最专业的一站式购书服务
- 扫描二维码,访问我们的微信店铺
- 随时随地的购物、客服咨询、查询订单和物流...