MongoDB权威指南 内容简介
上一版广受好评,新版本在此基础上大幅扩充,内容更加全面、深入mongodb项目组成员倾力打造mongodb基础知识、进阶内容、高级管理任务一应俱全
MongoDB权威指南 本书特色
与传统的关系型数据库不同,mongodb是一种面向文档的数据库。《mongodb权威指南(第2版)》这一版共分为六部分,涵盖开发、管理以及部署的各个方面。**部分展示mongodb基础知识、核心概念。第二部分介绍使用mongodb进行开发,包括索引的概念以及各种特殊索引和集合的用法等。第三部分讲述复制,包括副本集的相关概念、创建方法,与应用程序的交互等。第四部讨论分片,包括分片的配置,片键的选择,集群的管理。第五部分阐述创建索引、移动和压缩数据等管理任务,以及mongodb的持久数据存储。*后一部分集中说明服务器管理。
《mongodb权威指南(第2版)》适合数据库开发和管理人员阅读。
MongoDB权威指南 目录
序
前言
**部分mongodb介绍
第1章mongodb简介
1.1易于使用
1.2易于扩展
1.3丰富的功能
1.4卓越的性能
1.5小结
第2章mongodb基础知识
2.1文档
2.2集合
2.2.1动态模式
2.2.2命名
2.3数据库
2.4启动mongodb
2.5mongodb shell简介
2.5.1运行shell
2.5.2mongodb客户端
2.5.3shell中的基本操作
2.6数据类型
2.6.1基本数据类型
2.6.2日期
2.6.3数组
2.6.4内嵌文档
2.6.5_id和objectid
2.7使用mongodb shell
2.7.1shell小贴士
2.7.2使用shell执行脚本
2.7.3创建.mongorc.js文件
2.7.4定制shell提示
2.7.5编辑复合变量
2.7.6集合命名注意事项
第3章创建、更新和删除文档
3.1插入并保存文档
3.1.1批量插入
3.1.2插入校验
3.2删除文档
3.3更新文档
3.3.1文档替换
3.3.2使用修改器
3.3.3upsert
3.3.4更新多个文档
3.3.5返回被更新的文档
3.4写入安全机制
第4章查询
4.1find简介
4.1.1指定需要返回的键
4.1.2限制
4.2查询条件
4.2.1查询条件
4.2.2or查询
4.2.3$not
4.2.4条件语义
4.3特定类型的查询
4.3.1null
4.3.2正则表达式
4.3.3查询数组
4.3.4查询内嵌文档
4.4$where查询
4.5游标
4.5.1limit、skip和sort
4.5.2避免使用skip略过大量结果
4.5.3高级查询选项
4.5.4获取一致结果
4.5.5游标生命周期
4.6数据库命令
第二部分设计应用
第5章索引
5.1索引简介
5.1.1复合索引简介
5.1.2使用复合索引
5.1.3$操作符如何使用索引
5.1.4索引对象和数组
5.1.5索引基数
5.2使用explain()和hint()
5.3何时不应该使用索引
5.4索引类型
5.4.1唯一索引
5.4.2稀疏索引
5.5索引管理
5.5.1标识索引
5.5.2修改索引
第6章特殊的索引和集合
6.1固定集合
6.1.1创建固定集合
6.1.2自然排序
6.1.3循环游标
6.1.4没有_id索引的集合
6.2ttl索引
6.3全文本索引
6.3.1搜索语法
6.3.2优化全文本搜索
6.3.3在其他语言中搜索
6.4地理空间索引
6.4.1地理空间查询的类型
6.4.2复合地理空间索引
6.4.32d索引
6.5使用gridfs存储文件
6.5.1gridfs入门
6.5.2在mongodb驱动程序中使用gridfs
6.5.3揭开gridfs的面纱
第7章聚合
7.1聚合框架
7.2管道操作符
7.2.1$match
7.2.2$project
7.2.3$group
7.2.4$unwind
7.2.5$sort
7.2.6$limit
7.2.7$skip
7.2.8使用管道
7.3mapreduce
7.3.1示例1:找出集合中的所有键
7.3.2示例2:网页分类
7.3.3mongodb和mapreduce
7.4聚合命令
7.4.1count
7.4.2distinct
7.4.3group
第8章应用程序设计
8.1范式化与反范式化
8.1.1数据表示的例子
8.1.2基数
8.1.3好友、粉丝,以及其他的麻烦事项
8.2优化数据操作
8.2.1优化文档增长
8.2.2删除旧数据
8.3数据库和集合的设计
8.4一致性管理
8.5模式迁移
8.6不适合使用mongodb的场景
第三部分复制
第9章创建副本集
9.1复制简介
9.2建立副本集
9.3配置副本集
9.3.1rs辅助函数
9.3.2网络注意事项
9.4修改副本集配置
9.5设计副本集
9.6成员配置选项
9.6.1选举仲裁者
9.6.2优先级
9.6.3隐藏成员
9.6.4延迟备份节点
9.6.5创建索引
第10章副本集的组成
10.1同步
10.1.1初始化同步
10.1.2处理陈旧数据
10.2心跳
10.3选举
10.4回滚
第11章从应用程序连接副本集
11.1客户端到副本集的连接
11.2等待写入复制
11.2.1可能导致错误的原因
11.2.2"w"的其他值
11.3自定义复制保证规则
11.3.1保证复制到每个数据中心的一台服务器上
11.3.2保证写操作被复制到可见节点中的“大多数”
11.3.3创建其他规则
11.4将读请求发送到备份节点
11.4.1出于一致性考虑
11.4.2出于负载的考虑
11.4.3何时可以从备份节点读取数据
第12章管理
12.1以单机模式启动成员
12.2副本集配置
12.2.1创建副本集
12.2.2修改副本集成员
12.2.3创建比较大的副本集
12.2.4强制重新配置
12.3修改成员状态
12.3.1把主节点变为备份节点
12.3.2阻止选举
12.3.3使用维护模式
12.4监控复制
12.4.1获取状态
12.4.2复制图谱
12.4.3复制循环
12.4.4禁用复制链
12.4.5计算延迟
12.4.6调整oplog大小
12.4.7从延迟备份节点中恢复
12.4.8创建索引
12.4.9在预算有限的情况下进行复制
12.4.10主节点如何跟踪延迟
12.5主从模式
12.5.1从主从模式切换到副本集模式
12.5.2让副本集模仿主从模式的行为
第四部分分片
第13章分片
13.1分片简介
13.2理解集群的组件
13.3快速建立一个简单的集群
第14章配置分片
14.1何时分片
14.2启动服务器
14.2.1配置服务器
14.2.2mongos进程
14.2.3将副本集转换为分片
14.2.4增加集群容量
14.2.5数据分片
14.3mongodb如何追踪集群数据
14.3.1块范围
14.3.2拆分块
14.4均衡器
第15章选择片键
15.1检查使用情况
15.2数据分发
15.2.1升序片键
15.2.2随机分发的片键
15.2.3 基于位置的片键
15.3片键策略
15.3.1散列片键
15.3.2gridfs的散列片键
15.3.3流水策略
15.3.4多热点
15.4片键规则和指导方针
15.4.1片键限制
15.4.2片键的势
15.5控制数据分发
15.5.1对多个数据库和集合使用一个集群
15.5.2手动分片
第16章分片管理
16.1检查集群状态
16.1.1使用sh.status查看集群摘要信息
16.1.2检查配置信息
16.2查看网络连接
16.2.1查看连接统计
16.2.2限制连接数量
16.3服务器管理
16.3.1添加服务器
16.3.2修改分片的服务器
16.3.3删除分片
16.3.4修改配置服务器
16.4数据均衡
16.4.1均衡器
16.4.2修改块大小
16.4.3移动块
16.4.4特大块
16.4.5刷新配置
第五部分应用管理
第17章了解应用的动态
17.1了解正在进行的操作
17.1.1寻找有问题的操作
17.1.2终止操作的执行
17.1.3假象
17.1.4避免幽灵操作
17.2使用系统分析器
17.3计算空间消耗
17.3.1文档
17.3.2集合
17.3.3数据库
17.4使用mongotop和monogostat
第18章数据管理
18.1配置身份验证
18.1.1身份验证基本原理
18.1.2配置身份验证
18.1.3身份验证的工作原理
18.2建立和删除索引
18.2.1在独立的服务器上建立索引
18.2.2在副本集上建立索引
18.2.3在分片集群上建立索引
18.2.4删除索引
18.2.5注意内存溢出杀手
18.3预热数据
18.3.1将数据库移至内存
18.3.2将集合移至内存
18.3.3自定义预热
18.4压缩数据
18.5移动集合
18.6预分配数据文件
第19章持久性
19.1日记系统的用途
19.1.1批量提交写入操作
19.1.2设定提交时间间隔
19.2关闭日记系统
19.2.1替换数据文件
19.2.2修复数据文件
19.2.3关于mongod.lock文件
19.2.4隐蔽的异常退出
19.3mongodb无法保证的事项
19.4检验数据损坏
19.5副本集中的持久性
第六部分服务器管理
第20章启动和停止mongodb
20.1从命令行启动
20.2停止mongodb
20.3安全性
20.3.1数据加密
20.3.2ssl安全连接
20.4日志
第21章监控mongodb
21.1监控内存使用状况
21.1.1有关电脑内存的介绍
21.1.2跟踪监测内存使用状况
21.1.3跟踪监测缺页中断
21.1.4减少索引树的脱靶次数
21.1.5io延迟
21.1.6跟踪监测后台刷新平均时间
21.2计算工作集的大小
21.3跟踪监测性能状况
21.4监控副本集
第22章备份
22.1对服务器进行备份
22.1.1文件系统快照
22.1.2复制数据文件
22.1.3使用mongodump
22.2对副本集进行备份
22.3对分片集群进行备份
22.3.1备份和恢复整个集群
22.3.2备份和恢复单独的分片
22.4使用mongooplog进行增量备份
第23章部署mongodb
23.1设计系统结构
23.1.1选择存储介质
23.1.2推荐的raid配置
23.1.3cpu
23.1.4选择操作系统
23.1.5交换空间
23.1.6文件系统
23.2虚拟化
23.2.1禁止内存过度分配
23.2.2神秘的内存
23.2.3处理网络磁盘的io问题
23.2.4使用非网络磁盘
23.3系统配置
23.3.1禁用numa
23.3.2更智能地预读取数据
23.3.3禁用大内存页面
23.3.4选择一种磁盘调度算法
23.3.5不要记录访问时间
23.3.6修改限制
23.4网络配置
23.5系统管理
23.5.1时钟同步
23.5.2oom killer
23.5.3关闭定期任务
附录a安装mongodb
附录b深入mongodb
%
MongoDB权威指南 相关资料
上一版评论
“如同mongodb本身一样,本书简明扼要、通俗易懂。所有想一探mongodb究竟的人都需要这本不可或缺的参考手册。”《高性能mysql》作者jeremy zawodny
%
MongoDB权威指南 作者简介
Kristina Chodorow谷歌软件工程师,曾有5年是MongoDB项目的核心成员。她领导了MongoDB的副本集开发,并编写了PHP和Perl驱动程序。
MongoDB权威指南 相关资料
上一版评论
“如同mongodb本身一样,本书简明扼要、通俗易懂。所有想一探mongodb究竟的人都需要这本不可或缺的参考手册。”《高性能mysql》作者jeremy zawodny
MongoDB权威指南 作者简介
Kristina Chodorow谷歌软件工程师,曾有5年是MongoDB项目的核心成员。她领导了MongoDB的副本集开发,并编写了PHP和Perl驱动程序。