MongoDB基本概念和介绍
MongoDB 是一个开源的、基于分布式文件存储的NoSQL数据库,由 C++ 编写。
 它的主要特点是:
- 使用**面向文档(Document-Oriented)**的存储方式,不是传统的表格行列模式。
 - 存储的数据格式是BSON(类似 JSON 的二进制格式)。
 - 支持非常灵活的数据模型,每条数据(文档)可以拥有不同的字段和结构。
 - 支持高性能、高可扩展性(水平扩展/分片)。
 - 提供强大的查询功能(支持索引、聚合、全文搜索等)。
 
常用于需要快速开发、灵活变化的数据结构、海量数据存储场景,比如:内容管理系统、电商后台、社交应用等。
MongoDB中的三个重要概念
在MongoDB中,最重要的三个基本概念是:
1. 数据库(Database)
- MongoDB 可以在同一个服务器上存储多个数据库。
 - 每个数据库有自己独立的权限、存储空间。
 - 类似于传统关系型数据库中的“数据库”的概念。
 - 例子:
school数据库存储学校相关的数据。 
命令示例:
use school(如果 school 数据库不存在,这条命令也会在插入数据时自动创建它)
2. 集合(Collection)
- 集合就是数据库中的表的概念。
 - 一个数据库可以包含多个集合。
 - 集合中存储的是文档,而且同一集合内的文档结构可以不同(不像传统数据库要求每行必须符合一个固定表结构)。
 - 例子:在 
school数据库中,可以有一个集合students存储学生数据,一个集合teachers存储教师数据。 
命令示例:
db.createCollection("students")(实际上直接插入数据时集合也可以自动创建)
3. 文档(Document)
- 文档是 MongoDB 中数据的最小单位,相当于关系型数据库中的“一行数据”。
 - 文档的格式是BSON(Binary JSON),但看起来就是JSON对象的形式。
 - 文档由**字段(key-value对)**组成。
 - 每个文档默认都会有一个唯一的 
_id字段,作为主键。 
文档示例:
{
  "_id": ObjectId("6634c789b6c69efb873ea111"),
  "name": "Alice",
  "age": 20,
  "major": "Computer Science"
}插入文档示例:
db.students.insertOne({
  name: "Alice",
  age: 20,
  major: "Computer Science"
})总结一下:
概念  | 类比传统数据库  | 说明  | 
数据库  | Database  | 存放集合的容器  | 
集合  | Table(表)  | 存放文档的集合体  | 
文档  | Row(行)  | 具体的数据记录,灵活多变  | 
                










