2 min read

MongoDB 整理

目前主流的方式為以下兩點:

  • 副本模式
  • 分片模式


副本模式(Replica Set)

  • 分為 服務節點(Replica Set Members) 以及 選舉管理節點(Primary Node)
  • 所有節點都擁有同樣的數據副本
  • 集群擴容不方便,當需要新增數據量時,需要添加新的節點來擴容

分片模式(Sharding)

透過hash 將數據分別儲存在不同的node 上面,擴容時只要新增機器即可

  • 每個分片都會擁有一份自己的副本


自架設

  1. 硬體配置不足 
    - 記憶體、CPU、硬碟空間評估錯誤
  2. 安全設定不完善
    - 預設無身份驗證
  3. 備份機制缺失
    - 未規劃定期備份策略
  4. 效能調優不足
    - 索引使用不當
  5. 網路配置錯誤 
    - 防火牆設定問題
  6. 叢集規劃不當
    - 副本集與分片配置錯誤
  7. 監控系統未建立
    - 缺乏問題預警機制

會面臨的挑戰如下

  • 效能最佳化困難 - 需對資料庫架構深入了解
  • 高可用性保障 - 需建立穩定的副本集機制
  • 資料一致性維護 - 分散式系統資料同步問題
  • 安全威脅防範 - 需熟悉網路與資料庫安全
  • 故障恢復能力 - 需具備系統修復經驗

若不考慮上述,只運行單一節點,可參考以下配置。

Mongodb 透過Docker 部署 並開啟事務功能及如何創建帳號
Mongodb 透過Docker 部署 並開啟事務功能

參考來源

高可用mongodb集群(分片+副本):规划及部署

MongoDB 副本集与分片集群对比