深入學習MongoDB
基本資料
- 原書名: Scaling MongoDB
- 原出版社: O'Reilly
- 作者: (美)Kristina Chodorow [作譯者介紹]
- 譯者: 巨成 程顯峰
- 叢書名: 圖靈程式設計叢書
- 出版社:人民郵電出版社
- ISBN:9787115272119
- 上架時間:2012-1-11
- 出版日期:2012 年3月
http://product.china-pub.com/199004
內容簡介 《深入學習mongodb》分兩部分,分別對應o’reilly 公司出版的scaling mongodb 和50 tips and tricks formongodb developers 兩本書的內容。第一部分全面講解了有關建立和使用叢集的內容,不僅從應用開發人員的角度講解了mongodb 的使用,而且從營運方面介紹了叢集的管理。其中內容包括通過分區設定mongodb 叢集,分區的工作原理,查詢和更新資料,操作、監控和備份組群,錯誤處理。第二部分依次從應用設計、實現、最佳化、資料安全和管理方面介紹了使用mongodb構建應用的技巧,內容包括範式化與反範式化的利弊權衡,複製組的故障恢複等。
《深入學習mongodb》適合所有mongodb 使用者閱讀參考。
目錄《深入學習mongodb》
mongodb 擴充技術
第1 章 歡迎來到分散式運算的世界 1
第2 章 理解分區 5
2.1 分割資料 7
2.1.1 分配資料 8
2.1.2 如何建立塊 11
2.2 平衡 14
2.3 mongos 17
2.4 設定管理員 18
2.5 叢集的構造 18
第3 章 建立叢集 21
3.1 選擇片鍵 23
3.1.1 小基數片鍵 23
3.1.2 升序片鍵 25
3.1.3 隨機片鍵 26
3.1.4 好片鍵 27
3.2 新老集合分區 29
3.2.1 快速起步 29
3.2.2 設定管理員 29 .3.2.3 mongos 30
3.2.4 分區 31
3.2.5 資料庫和集合 32
3.3 增減容量 33
3.3.1 移除分區 34
3.3.2 修改分區中的伺服器 35
第4 章 使用叢集 37
4.1 查詢 39
4.2 為什麼會這樣 39
4.2.1 計數 39
4.2.2 唯一索引 40
4.2.3 更新 41
4.3 mapreduce 42
第5 章 管理 43
5.1 使用命令列 45
5.1.1 瞭解概況 45
5.1.2 配置集合 46
5.1.3 應該串連什麼 47
5.2 監控 47
5.2.1 mongostat 48
5.2.2 web 管理介面 48
5.3 備份 49
5.4 關於架構的建議 50
5.4.1 建立應急網站 50
5.4.2 挖護城河 50
5.5 錯誤處理 51
5.5.1 分區停機 51
5.5.2 多數分區停機 51
5.5.3 設定管理員停機 52
5.5.4 mongos 進程死掉 52
5.5.5 其他注意事項 53
第6 章 學習資源 55
mongodb 開發技巧50 例
第1 章 應用設計技巧 65
1.1 技巧1:速度和完整性的折中 67
1.1.1 樣本:網上購物車 68
1.1.2 考慮因素 69
1.2 技巧2:適應未來的資料要範式化 70
1.3 技巧3:盡量單個查詢擷取資料 71
1.3.1 樣本:部落格 71
1.3.2 樣本:相簿 72
1.4 技巧4:嵌入關聯資料 72
1.5 技巧5:嵌入時間點資料 73
1.6 技巧6:不要嵌入不斷增加的資料 73
1.7 技巧7:預填充資料 73
1.8 技巧8:儘可能預先分配空間 74
1.9 技巧9:用數組存放要匿名訪問的內嵌資料 75
1.10 技巧10:文檔要自給自足 77
1.11 技巧11:優先使用$ 操作符 79
1.11.1 深入瞭解 79
1.11.2 提高效能 79
1.12 技巧12:隨時彙總 80
1.13 技巧13:編寫代碼處理資料完整性問題 80
第2 章 實現技巧 83
2.1 技巧14:使用正確的類型 85
2.2 技巧15:用簡單唯一的id 替換_id 85
2.3 技巧16:不要用文檔做_id 86
2.4 技巧17:不要用資料庫引用 86
2.5 技巧18:不要用gridfs 處理小的位元據 87
2.6 技巧19:處理“無縫”故障切換 88
2.7 技巧20:處理複製組失效及故障恢複 88
第3 章 最佳化技巧 89
3.1 技巧21:儘可能減少磁碟訪問 91
3.2 技巧22:使用索引減少記憶體佔用 92
3.3 技巧23:不要到處使用索引 94
3.4 技巧24:索引覆蓋查詢 95
3.5 技巧25:使用複合索引加快多個查詢 95
3.6 技巧26:通過建立分級文檔加速掃描 96
3.7 技巧27:and 型查詢要點 98
3.8 技巧28:or 型查詢要點 98
第4 章 資料安全性和一致性 101
4.1 技巧29:單機做日誌,多機則複製 103
4.2 技巧30:堅持使用複製或日誌, 或兩者兼用 104
4.3 技巧31:不要信任repair 恢複的資料 105
4.4 技巧32:getlasterror 105
4.5 技巧33:開發過程中一定要使用安全寫入 106
4.6 技巧34:使用w 參數 106
4.7 技巧35:一定要給w 設定逾時 107
4.8 技巧36:不要每次寫入都調用fsync 108
4.9 技巧37:崩潰之後正常啟動 108
4.10 技巧38:持久性伺服器的瞬時備份 108
第5 章 管理技巧 109
5.1 技巧39:手工清理塊集合 111
5.2 技巧40:用repair 壓縮資料庫 111
5.3 技巧41:不要改變複製群組成員投票的權值 112
5.4 技巧42:無活躍節點時可重設複製組 113
5.5 技巧43:不必指定--shardsvr 和--configsvr 參數 115
5.6 技巧44:開發時才用--notablescan 115
5.7 技巧45:學習javascript 116
5.8 技巧46:在shell 中管理所有伺服器和資料庫 116
5.9 技巧47:獲得協助 117
5.10 技巧48:建立開機檔案 118
5.11 技巧49:自訂函數 119
5.12 技巧50:使用單個串連讀取自身寫入 120