MongoDB 案例研究

NoSQL 概念

Miriam Antona

Software engineer

MongoDB - 概览

MongoDB 标志

  • 流行的文档数据库
  • BSON(Binary JSON)格式
NoSQL 概念

MongoDB - 功能

  • MongoDB 查询语言(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...