MongoDB基礎、運維與性能優化

王金柱

  • 出版商: 清華大學
  • 出版日期: 2025-04-01
  • 售價: $534
  • 語言: 簡體中文
  • ISBN: 7302684782
  • ISBN-13: 9787302684787
  • 相關分類: NoSQLMongoDB
  • 下單後立即進貨 (約4週~6週)

  • MongoDB基礎、運維與性能優化-preview-1
  • MongoDB基礎、運維與性能優化-preview-2
  • MongoDB基礎、運維與性能優化-preview-3
MongoDB基礎、運維與性能優化-preview-1

商品描述

"MongoDB數據庫與傳統的關系數據庫不同,是一種面向文檔的、介於非關系數據庫和關系數據庫之間的數據庫。《MongoDB基礎、運維與性能優化》幫助讀者掌握MongoDB 8數據庫及其相關技術棧的開發知識,涵蓋MongoDB 8數據庫應用開發的要點。《MongoDB基礎、運維與性能優化》配套PPT課件。 《MongoDB基礎、運維與性能優化》共分15章,內容包括MongoDB數據庫基礎知識、系統安裝與環境搭建、可視化工具的使用、Shell工具的使用、基礎操作、聚合、數據模型、時間序列、事務、索引、副本集、分片、存儲、安全以及性能優化。 《MongoDB基礎、運維與性能優化》內容翔實、代碼精練、重點突出、實例豐富,能夠幫助初學者快速掌握MongoDB數據庫運維和開發方法,對提高Web應用開發人員的技術水平也有非常積極的指導作用。《MongoDB基礎、運維與性能優化》也適用於高等院校或高職高專院校學習MongoDB相關課程的學生。"

目錄大綱

目    錄

 

第1章  MongoDB簡介 1

1.1  MongoDB概述 1

1.2  MongoDB的發展歷史 4

1.3  MongoDB的優缺點 8

1.3.1  MongoDB的優點 8

1.3.2  MongoDB的缺點 9

1.4  常用概念 10

1.5  數據類型 11

1.6  本章小結 12

第2章  MongoDB的安裝 13

2.1  在Windows系統上安裝MongoDB 13

2.1.1  安裝MongoDB 13

2.1.2  配置環境變量 20

2.1.3  其他安裝形式 21

2.1.4  常見問題和註意事項 21

2.2  在Linux系統上安裝MongoDB 22

2.2.1  使用yum方式安裝MongoDB 22

2.2.2  卸載MongoDB 25

2.2.3  使用其他方式安裝MongoDB 26

2.2.4  常見錯誤和註意事項 27

2.3  本章小結 27

第3章  MongoDB可視化管理工具 28

3.1  MongoDB Compass 28

3.1.1  MongoDB Compass的特點 28

3.1.2  MongoDB Compass的安裝與更新 29

3.1.3  MongoDB Compass的使用 30

3.1.4  註意事項 33

3.2  Navicat Premium 33

3.2.1  Navicat Premium的功能特點 34

3.2.2  Navicat Premium的安裝 35

3.2.3  Navicat Premium的使用 37

3.3  NoSQLBooster for MongoDB 40

3.3.1  NoSQLBooster for MongoDB的功能特點及使用場景 40

3.3.2  NoSQLBooster for MongoDB的安裝 41

3.3.3  NoSQLBooster for MongoDB的使用 42

3.4  本章小結 48

第4章  MongoDB Shell(mongosh) 49

4.1  MongoDB Shell的安裝 49

4.1.1  在Windows系統上安裝MongoDB Shell 50

4.1.2  在Linux系統上安裝MongoDB Shell 52

4.2  MongoDB Shell的配置 53

4.2.1  使用命令編輯器 53

4.2.2  配置設置 54

4.2.3  自定義mongosh提示 56

4.2.4  配置遠程數據搜集 58

4.3  MongoDB Shell的運行命令 58

4.4  使用MongoDB Shell進行簡單操作 59

4.4.1  新增 60

4.4.2  查詢 61

4.4.3  修改 63

4.4.4  刪除 66

4.5  客戶端字段級加密 67

4.6  腳本 69

4.6.1  運行JavaScript腳本 69

4.6.2  運行配置文件中的代碼 71

4.7  本章小結 73

第5章  數據庫操作 74

5.1  基礎操作 74

5.1.1  操作數據庫 74

5.1.2  操作集合或視圖 78

5.1.3  操作文檔 86

5.2  文本搜索 86

5.3  地理空間查詢 88

5.3.1  GeoJSON對象 88

5.3.2  傳統坐標對 89

5.3.3  2dsphere索引 89

5.3.4  2d索引 95

5.4  常用的操作符 97

5.4.1  查詢和投影操作符 97

5.4.2  更新操作符 100

5.4.3  聚合管道操作符 102

5.4.4  查詢修飾符 103

5.5  本章小結 104

第6章  聚合 105

6.1  聚合方法 105

6.2  聚合管道 106

6.2.1  管道和階段 107

6.2.2  管道操作符 107

6.2.3  管道表達式與表達式操作符 108

6.2.4  聚合操作 117

6.3  本章小結 124

第7章  數據模型 125

7.1  數據建模介紹 125

7.2  架構設計流程 126

7.2.1  確定工作負載 126

7.2.2  映射模式關系 127

7.2.3  應用設計模式 128

7.3  模型設計模式 130

7.3.1  分組數據 130

7.3.2  文檔和模式版本控制 136

7.4  數據一致性 143

7.4.1  用例描述 143

7.4.2  強制執行事務的數據一致性 144

7.4.3  通過嵌入實現數據一致性 146

7.5  模式驗證 148

7.5.1  模式驗證使用場景 148

7.5.2  指定JSON schema驗證 149

7.5.3  指定允許的字段值 151

7.5.4  使用查詢運算符指定驗證 152

7.5.5  指定現有文檔的驗證級別 153

7.5.5  指定現有文檔的驗證級別 156

7.5.6  選擇如何處理無效文檔 159

7.6  本章小結 161

第8章  時間序列 162

8.1  時間序列介紹 162

8.2  創建和查詢時間序列集合 163

8.2.1  創建時間序列集合 163

8.2.2  在時間序列集合中插入測量值 164

8.2.3  查詢時間序列集合 165

8.2.4  在時間序列集合上運行聚合 165

8.3  列出數據庫中的時間序列集合 166

8.4  設置時間序列集合的自動刪除 167

8.5  設置時間序列數據的粒度 168

8.6  向時間序列集合添加從節點索引 170

8.6.1  創建二級索引 170

8.6.2  使用二級索引提高排序性能 171

8.6.3  時間序列集合的最新數據點查詢 172

8.7  本章小結 173

第9章  事務 174

9.1  事務基礎原理 174

9.2  驅動程序API 176

9.2.1  回調API 176

9.2.2  核心API 177

9.2.3  事務錯誤處理 178

9.3  事務與操作 180

9.3.1  事務操作基礎 180

9.3.2  在事務中創建集合和索引 180

9.3.3  計數、限制性與去重操作 181

9.4  讀取偏好與讀寫關註 181

9.4.1  事務和讀取偏好 181

9.4.2  事務和讀關註 182

9.4.3  事務和寫關註 182

9.5  本章小結 183

第10章  索引 184

10.1  索引介紹 184

10.2  創建索引 185

10.3  指定索引名稱 186

10.4  刪除索引 187

10.5  單字段索引 188

10.6  對嵌入式文檔創建索引 189

10.7  復合索引 190

10.7.1  復合索引介紹 190

10.7.2  創建復合索引 191

10.7.3  復合索引排序順序 192

10.8  多鍵索引 193

10.8.1  多鍵索引介紹 193

10.8.2  在數組字段上創建索引 195

10.8.3  為數組中的嵌入字段創建索引 196

10.8.4  多鍵索引邊界 198

10.8.5  多鍵索引的復合邊界 199

10.9  通配符索引 203

10.9.1  通配符索引介紹 203

10.9.2  對單個字段創建通配符索引 204

10.9.3  在通配符索引中包含或排除字段 205

10.9.4  對所有字段創建通配符索引 207

10.10  本章小結 209

第11章  副本集 210

11.1  副本集介紹 210

11.2  異步復制 212

11.3  自動故障轉移 212

11.4  讀取操作 213

11.4.1  讀取偏好 213

11.4.2  數據可見性 214

11.4.3  鏡像讀 214

11.5  操作日誌 215

11.5.1  操作日誌基礎 215

11.5.2  操作日誌大小 215

11.5.3  最短操作日誌保留期 216

11.5.4  可能需要更大操作日誌的工作負載 216

11.5.5  操作日誌狀態 217

11.6  本章小結 217

第12章  分片 218

12.1  分片基礎 218

12.1.1  分片介紹 218

12.1.2  分片鍵介紹 219

12.1.3  分片的優點 219

12.2  分片集群 220

12.2.1  分片集群的組成 220

12.2.2  生產配置 220

12.2.3  開發配置 221

12.3  分片鍵的應用 222

12.3.1  分片鍵索引 222

12.3.2  將集合分片 223

12.3.3  選擇分片鍵 223

12.3.4  更改分片鍵 226

12.3.5  對集合重新分片 226

12.4  本章小結 229

第13章  存儲 230

13.1  存儲介紹 230

13.2  WiredTiger存儲引擎 231

13.2.1  WiredTiger存儲引擎介紹 231

13.2.2  事務(讀寫)並發 231

13.2.3  文檔級並發性 231

13.2.4  快照和檢查點 232

13.2.5  日誌與壓縮 232

13.2.6  內存使用 233

13.3  日誌 233

13.3.1  日誌和WiredTiger存儲引擎 233

13.3.2  日誌記錄進程 234

13.3.3  Journal Files 234

13.3.4  日誌和內存存儲引擎 235

13.4  本章小結 235

第14章  安全性 236

14.1  安全性介紹 236

14.2  基於SCRAM的身份驗證 237

14.2.1  SCRAM機制 237

14.2.2  使用SCRAM對客戶端進行身份驗證 238

14.3  基於x.509的身份驗證 240

14.3.1  x.509機制 240

14.3.2  使用x.509對客戶端進行身份驗證 240

14.4  加密 242

14.4.1  加密方法 242

14.4.2  選擇正在使用的加密方法 242

14.4.3  靜態加密 243

14.4.4  TLS/SSL 244

14.5  本章小結 244

第15章  性能優化 245

15.1  性能優化概述 245

15.2  索引優化 246

15.3  查詢優化 247

15.4  資源管理優化 248

15.5  本章小結 248