內容簡介
與傳統的關係型數據庫不同,MongoDB是一種麵嚮文檔的數據庫。《MongoDB權威指南(第2版)》這一版共分為六部分,涵蓋開發、管理以及部署的各個方麵。第一部分展示MongoDB基礎知識、核心概念。第二部分介紹使用MongoDB進行開發,包括索引的概念以及各種特殊索引和集閤的用法等。第三部分講述復製,包括副本集的相關概念、創建方法,與應用程序的交互等。第四部討論分片,包括分片的配置,片鍵的選擇,集群的管理。第五部分闡述創建索引、移動和壓縮數據等管理任務,以及MongoDB的持久數據存儲。最後一部分集中說明服務器管理。
《MongoDB權威指南(第2版)》適閤數據庫開發和管理人員閱讀。
媒體評論
上一版評論
“如同MongoDB本身一樣,本書簡明扼要、通俗易懂。所有想一探MongoDB究竟的人都需要這本不可或缺的參考手冊。”《高性能MySQL》作者Jeremy Zawodny
作者推薦
上一版廣受好評,新版本在此基礎上大幅擴充,內容更加全麵、深入
MongoDB項目組成員傾力打造 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.5 MongoDB shell簡介
2.5.1 運行shell
2.5.2 MongoDB客戶端
2.5.3 shell中的基本操作
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.1 shell小貼士
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.3 upsert
3.3.4 更新多個文檔
3.3.5 返迴被更新的文檔
3.4 寫入安全機製
第4章 查詢
4.1 find簡介
4.1.1 指定需要返迴的鍵
4.1.2 限製
4.2 查詢條件
4.2.1 查詢條件
4.2.2 OR查詢
4.2.3 $not
4.2.4 條件語義
4.3 特定類型的查詢
4.3.1 null
4.3.2 正則錶達式
4.3.3 查詢數組
4.3.4 查詢內嵌文檔
4.4 $where查詢
4.5 遊標
4.5.1 limit、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.2 TTL索引
6.3 全文本索引
6.3.1 搜索語法
6.3.2 優化全文本搜索
6.3.3 在其他語言中搜索
6.4 地理空間索引
6.4.1 地理空間查詢的類型
6.4.2 復閤地理空間索引
6.4.3 2d索引
6.5 使用GridFS存儲文件
6.5.1 GridFS入門
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.3 MapReduce
7.3.1 示例1:找齣集閤中的所有鍵
7.3.2 示例2:網頁分類
7.3.3 MongoDB和MapReduce
7.4 聚閤命令
7.4.1 count
7.4.2 distinct
7.4.3 group
第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.1 rs輔助函數
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.2 mongos進程
14.2.3 將副本集轉換為分片
14.2.4 增加集群容量
14.2.5 數據分片
14.3 MongoDB如何追蹤集群數據
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.2 GridFS的散列片鍵
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.3 MongoDB無法保證的事項
19.4 檢驗數據損壞
19.5 副本集中的持久性
第六部分 服務器管理
第20章 啓動和停止MongoDB
20.1 從命令行啓動
20.2 停止MongoDB
20.3 安全性
20.3.1 數據加密
20.3.2 SSL安全連接
20.4 日誌
第21章 監控MongoDB
21.1 監控內存使用狀況
21.1.1 有關電腦內存的介紹
21.1.2 跟蹤監測內存使用狀況
21.1.3 跟蹤監測缺頁中斷
21.1.4 減少索引樹的脫靶次數
21.1.5 IO延遲
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.3 CPU
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.2 OOM Killer
23.5.3 關閉定期任務
附錄A 安裝MongoDB
附錄B 深入MongoDB
MongoDB權威指南(第2版) epub pdf mobi txt 電子書 下載 2024
MongoDB權威指南(第2版) 下載 epub mobi pdf txt 電子書