MongoDB 简介
MongoDB 是一种 NoSQL(非关系型)数据库,采用 文档存储 方式,数据以 BSON(二进制 JSON) 格式存储。它的设计目标是 高性能、灵活性和可扩展性,适用于海量数据处理和高并发应用。
MongoDB 的主要特点
- 文档存储(Document-Oriented)
- 数据以 JSON/BSON 格式 存储,类似对象,直观易读。
- 适用于存储结构化和半结构化数据,如用户信息、文章、产品等。
- 灵活的 Schema(Schema-less)
- 无需预定义表结构,可以随时新增字段,适应快速变化的业务需求。
- 适合 敏捷开发 和 迭代式开发。
- 高扩展性(Scalability)
- 支持分片(Sharding),可以横向扩展,适用于大规模数据存储。
- 自动负载均衡,支持分布式部署。
- 强大的查询功能
- 支持 CRUD 操作(增删改查)。
- 支持 索引(Indexes),提升查询性能。
- 聚合框架(Aggregation Framework),用于复杂的数据处理。
- 高性能
- 通过 内存映射(Memory-Mapped) 提高读写性能。
- 适合海量数据处理,如日志、数据分析、实时数据处理等。
- 多种数据类型
- 支持 字符串、数值、数组、对象、布尔值、时间戳、地理位置等 数据类型。
- 广泛的语言支持
- 提供 Python、Java、Node.js、C#、Go、PHP 等多种官方驱动,适用于不同应用开发。
MongoDB vs 传统关系型数据库(RDBMS)
| 特性 | MongoDB (NoSQL) | MySQL / Oracle (SQL) |
|---|---|---|
| 数据存储 | 文档(JSON/BSON) | 表、行、列 |
| 结构 | Schema-less(无固定模式) | Schema-based(固定模式) |
| 扩展方式 | 水平扩展(Sharding) | 垂直扩展(Scale-up) |
| 事务支持 | 多文档事务(4.0 以后支持) | 强事务支持(ACID) |
| 查询方式 | JSON 查询、索引、聚合 | SQL 查询 |
| 适用场景 | 大数据、高并发、实时应用 | 财务、传统业务系统 |
MongoDB 适用场景
- Web & 移动应用(如用户数据、评论、博客、社交平台)
- 实时数据分析(如日志、事件流处理)
- 物联网(IoT)(如传感器数据存储)
- 游戏开发(如玩家信息、道具存储)
- 电子商务(如订单管理、产品信息)
MongoDB 安装与基础操作
如果你准备开始实战,可以先安装 MongoDB 并尝试基本命令:
- 安装 MongoDB:
- 官方安装指南
- Windows/macOS/Linux 皆可安装
- 启动 MongoDB
mongod
默认端口是 27017。
- 进入 MongoDB Shell
mongosh
- 基本操作
# 创建数据库
use myDatabase
# 创建集合(类似 SQL 表)
db.createCollection("users")
# 插入数据
db.users.insertOne({ name: "Alice", age: 25 })
# 查询数据
db.users.find()
官网参考地址
MongoDB 官网地址:https://www.mongodb.com/
MongoDB 官方英文文档:https://docs.mongodb.com/manual/
MongoDB 各平台下载地址:https://www.mongodb.com/try/download/community
更多详细内容,请关注其他相关文章!