MongoDB實戰

MongoDB實戰

《MongoDB實戰》是人民郵電出版社2012-10齣版的圖書。

基本介紹

  • 作者:美 Kyle Banker
  • 譯者:丁雪豐
  • ISBN:9787115295071
  • 頁數:244
  • 定價:59.00元
  • 出版社:人民郵電出版社
  • 出版時間:2012-10
  • 裝幀:平裝
  • 原作名:MongoDB in Action
內容介紹,作者介紹,作品目錄,

內容介紹

內容簡介:
MongoDB是為處理大數據而生的一款面向文檔的資料庫,由10gen公司開發和維護。本書作者Kyle Banker曾在該公司負責MongoDB驅動程式的維護,對各方面技術細節都了如指掌,本書也是在大量第一手資料的基礎上形成的,其權威性毋庸置疑。
本書基於MongoDB 2.0+,全面系統地講解了設計、實現、安裝和維護MongoDB的各方面內容。全書分三部分,第一部分從基於文檔的數據與傳統關係型資料庫的差別講起,介紹了MongoDB的基本概念及安裝使用。第二部分是一個實戰式教程,結合示例講解了MongoDB的CRUD操作,以及實現系統安全、靈活和高效的設計原則及模式。第三部分側重資料庫的維護和管理,深入到MongoDB背後的技術細節,給出了對管理員和開發者都極有價值的建議。
本書篇幅適中,內容深淺得當,文字通俗易懂,再配以直觀形象的插圖和貼近實戰的代碼示例,非常適合MongoDB學習者、開發人員及管理員學習參考。
本書內容:
MongoDB介紹及其優劣勢
MongoDB的Shell界面
使用MongoDB的簡單套用
如何通過以文檔為中心的方式看待數據
編寫查詢,以MapReduce方式聚合數據
更新和刪除數據及相關性能考量
尋找和改進慢查詢
MongoDB的複製與分片
MongoDB的監控、備份及恢復

作者介紹

作者介紹:
Kyle Banker 軟體工程師,曾工作於10gen公司,負責維護Ruby及C語言的官方MongoDB驅動、領導MongoDB文檔項目並開發培訓課程,且為客戶提供諮詢、商業支持和培訓;現任職於Snapjoy(為用戶提供默認私有的線上照片備份和自動管理服務)。
譯者介紹:
丁雪豐 一線“攻城師”一枚,InfoQ中文站小編,滿江紅翻譯組核心成員,常年混跡於各種社區,業餘時間寫作、翻譯、漢化軟體,《RESTful Web Services Cookbook中文版》、《Spring攻略》等多部書的譯者。

作品目錄

目    錄
第一部分  入門指南
第1章  為現代Web而生的資料庫 2
1.1  生於雲端 3
1.2  MongoDB的主要特性 4
1.2.1  文檔數據模型 4
1.2.2  即時查詢 6
1.2.3  二級索引 7
1.2.4  複製 8
1.2.5  速度和持久性 9
1.2.6  資料庫擴展 10
1.3  MongoDB的核心伺服器和工具 11
1.3.1  核心伺服器 11
1.3.2  JavaScript Shell 12
1.3.3  資料庫驅動 12
1.3.4  命令行工具 13
1.4  為什麼選擇MongoDB 13
1.4.1  MongoDB與其他資料庫的對比 14
1.4.2  使用場景和生產部署 16
1.5  提示與局限 18
1.6  小結 18
第2章  MongoDB JavaScript Shell 19
2.1  深入MongoDB Shell 19
2.1.1  啟動Shell 20
2.1.2  插入與查詢 20
2.1.3  更新文檔 22
2.1.4  刪除數據 23
2.2  創建索引並查詢 24
2.2.1  創建一個大集合 24
2.2.2  索引與explain() 25
2.3  基本管理 27
2.3.1  獲取資料庫信息 27
2.3.2  命令工作原理 29
2.4  獲得幫助 30
2.5  小結 31
第3章  使用MongoDB編寫程式 32
3.1  通過Ruby使用MongoDB 32
3.1.1  安裝與連線 33
3.1.2  用Ruby插入文檔 34
3.1.3  查詢與游標 34
3.1.4  更新與刪除 35
3.1.5  資料庫命令 36
3.2  驅動是如何工作的 37
3.2.1  對象ID生成 37
3.2.2  BSON 38
3.2.3  網路傳輸 40
3.3  構建簡單的應用程式 41
3.3.1  配置 41
3.3.2  收集數據 42
3.3.3  查看歸檔 43
3.4  小結 46
第二部分  MongoDB與應用程式開發
第4章  面向文檔的數據 48
4.1  Schema設計原則 48
4.2  設計電子商務數據模型 49
4.2.1  產品與分類 50
4.2.2  用戶與訂單 53
4.2.3  評論 55
4.3  具體細節:資料庫、集合與文檔 56
4.3.1  資料庫 56
4.3.2  集合 58
4.3.3  文檔與插入 61
4.4  小結 65
第5章  查詢與聚合 66
5.1  電子商務查詢 66
5.1.1  產品、分類與評論 66
5.1.2  用戶與訂單 68
5.2  MongoDB查詢語言 70
5.2.1  查詢選擇器 70
5.2.2  查詢選項 78
5.3  聚合指令 79
5.3.1  根據用戶對評論進行分組 79
5.3.2  根據地域對訂單套用MapReduce 81
5.4  詳解聚合 82
5.4.1  max()與min() 82
5.4.2  distinct 83
5.4.3  group 83
5.4.4  map-reduce 84
5.5  小結 86
第6章  更新、原子操作與刪除 87
6.1  文檔更新入門 87
6.2  電子商務數據模型中的更新 89
6.2.1  產品與分類 90
6.2.2  評論 93
6.2.3  訂單 94
6.3  原子文檔處理 96
6.3.1  訂單狀態變遷 97
6.3.2  庫存管理 98
6.4  具體細節:MongoDB的更新與刪除 101
6.4.1  更新類型與選項 101
6.4.2  更新操作符 103
6.4.3  findAndModify命令 106
6.4.4  刪除 106
6.4.5  並發性、原子性與隔離性 107
6.4.6  更新性能說明 107
6.5  小結 109
第三部分  精通MongoDB
第7章  索引與查詢最佳化 112
7.1  索引理論 112
7.1.1  思想實驗 112
7.1.2  核心索引概念 115
7.1.3  B樹 118
7.2  索引實踐 119
7.2.1  索引類型 119
7.2.2  索引管理 121
7.3  查詢最佳化 125
7.3.1  識別慢查詢 125
7.3.2  分析慢查詢 127
7.3.3  查詢模式 133
7.4  小結 134
第8章  複製 135
8.1  複製概述 135
8.1.1  為什麼複製很重要 135
8.1.2  複製的使用場景 136
8.2  副本集 137
8.2.1  配置 137
8.2.2  複製的工作原理 141
8.2.3  管理 146
8.3  主從複製 152
8.4  驅動與複製 152
8.4.1  連線與故障轉移 153
8.4.2  寫關注 154
8.4.3  讀擴展 155
8.4.4  標籤 156
8.5  小結 158
第9章  分片 159
9.1  分片概述 159
9.1.1  何謂分片 160
9.1.2  分片的工作原理 161
9.2  示例分片集群 164
9.2.1  配置 164
9.2.2  寫入分片集群 168
9.3  分片集群的查詢與索引 173
9.3.1  分片查詢類型 173
9.3.2  索引 177
9.4  選擇分片鍵 178
9.4.1  低效的分片鍵 178
9.4.2  理想的分片鍵 179
9.5  生產環境中的分片 180
9.5.1  部署與配置 180
9.5.2  管理 184
9.6  小結 188
第10章  部署與管理 189
10.1  部署 189
10.1.1  部署環境 189
10.1.2  伺服器配置 193
10.1.3  數據的導入與導出 194
10.1.4  安全 195
10.2  監控與診斷 197
10.2.1  日誌 197
10.2.2  監控工具 198
10.2.3  外部監控應用程式 201
10.2.4  診斷工具(mongosniff、bsondump) 201
10.3  維護 202
10.3.1  備份與恢復 202
10.3.2  壓緊與修復 204
10.3.3  升級 205
10.4  性能調優 205
10.4.1  為提升性能檢查索引和查詢 206
10.4.2  添加記憶體 206
10.4.3  提升磁碟性能 207
10.4.4  水平擴展 207
10.4.5  尋求專業幫助 207
10.5  小結 208
附錄A  安裝 209
附錄B  設計模式 216
附錄C  二進制數據與GridFS 226
附錄D  在PHP、Java與C++中使用MongoDB 232
附錄E  空間索引 240

相關詞條

熱門詞條

聯絡我們