MongoDB 個案研究

NoSQL 概念

Miriam Antona

Software engineer

MongoDB — 概覽

MongoDB 標誌

  • 熱門文件型資料庫
  • BSON(Binary JSON)格式
NoSQL 概念

MongoDB — 功能

  • MongoDB Query Language(MQL
db.users.find({ "address.zipcode" : "10245" })
  • 針對各種程式語言的原生驅動:C#、Java、Python、Scala 等
  • 任何欄位皆可建立索引
  • ACID 交易(原子性、一致性、隔離性、持久性)
  • 查詢支援聯結
NoSQL 概念

MongoDB — 功能

  • 水平擴充
    • 原生分片
    • 新增/移動分片
  • 複寫
    • 最多 50 份資料副本
NoSQL 概念

MongoDB — 產品

  • MongoDB Compass:
    • 免費 GUI
    • 視覺化探索結構、建立查詢…
  • MongoDB Atlas:
    • 雲端服務
    • AWS、Azure、Google Cloud
  • MongoDB Enterprise Advanced:
    • 在自家基礎架構上執行 MongoDB
NoSQL 概念

MongoDB — 產品

  • MongoDB Atlas Lake:
    • 查詢與分析資料
    • AWS S3 與 MongoDB Atlas
    • MQL
  • MongoDB Charts:
    • 資料視覺化
  • Realm Mobile Database:
    • 在 iOS 或 Android 本機儲存資料
NoSQL 概念

MongoDB — 常見用途

  • 單一視圖應用: 金融服務、政府、高科技、零售等
  • 遊戲: 玩家檔案、排行榜等
  • 型錄: 金融服務、政府、高科技、零售等
  • 即時分析
  • 內容管理
  • 物聯網
NoSQL 概念

MongoDB — 客戶

部分 MongoDB 客戶的標誌

NoSQL 概念

Shutterfly 個案研究 — 概覽

  • 線上攝影服務
    • 分享個人化相簿
    • 出版實體照片產品
  • 數百萬名客戶
  • 超過 60 億張影像

Shutterfly 標誌

NoSQL 概念

Shutterfly 個案研究 — 問題與解方

  • 資料量爆發成長
  • Oracle 效能達到極限
  • 應用程式開發耗時
  • 應用程式效能不佳
  • Oracle 成本過高
  • 因此改用 MongoDB
NoSQL 概念

Shutterfly 個案研究 — 成果

  • 效能提升
    • 新增作業 400 ms → 2 ms
  • 水平擴充
  • 彈性結構,開發更快
    • 標籤、留言等實作不再困難
  • 新的查詢模式
  • 降低成本
NoSQL 概念

Shutterfly 個案研究 — 成果

  • 效能提升
    • 新增作業 400 ms → 2 ms
  • 水平擴充
  • 彈性結構,開發更快
    • 標籤、留言等實作不再困難
  • 新的查詢模式
  • 降低成本
1 https://www.mongodb.com/who-uses-mongodb
NoSQL 概念

一起來練習吧!

NoSQL 概念

Preparing Video For Download...