1. NoSQL (Not Only SQL):
NoSQL数据库,即非关系型数据库,适用于处理大规模数据存储。与传统的关系型数据库不同,NoSQL数据库具有更高的灵活性和可扩展性,能够高效地处理海量数据。
2. MongoDB:
MongoDB 是用 C++ 编写的开源分布式文件存储数据库系统。它将数据存储为文档形式,数据结构由键值对组成。MongoDB 的文档类似于 JSON 对象,支持嵌套文档、数组及文档数组。
3. MongoDB 基本概念:
参考如下表格:
实例参考:
- 数据库
命令示例:show dbs
: 显示所有数据库的列表> show dbs
local 0.078G
test 0.078G
db
: 显示当前数据库对象或集合> db
test
>
use
: 切换到指定的数据库> use local
switched to db local
> db
local
>
数据库名称规则:
- 不能是空字符串
- 不得含有空格(' ')、.、$、/、\ 和 \0(空字符)
- 应该全部小写
- 最多64个字节
特殊数据库:
- admin: 系统管理数据库,用户添加到此数据库后自动继承所有数据库权限。一些特殊的服务器端命令只能从该数据库运行,如列出所有数据库或关闭服务器。
- local: 本地数据库,不会被复制,用于存储限于本地单台服务器的任意集合。
- config: 分片设置时使用的配置数据库,用于保存分片相关信息。
- 文档
文档是由键值对(即BSON)组成的。
RDBMS 与 MongoDB 对应术语:
注意事项:
(1) 文档中的键值对有序。
(2) MongoDB 区分类型和大小写。
(3) MongoDB 文档不能有重复的键。
(4) 文档的键为字符串。
文档键命名规范:
(1) 键不能含有空字符。
(2) . 和 $ 有特殊意义,仅在特定情况下使用。
(3) 以下划线开头的键是保留的。
- 集合
集合是 MongoDB 中文档的逻辑分组,类似于关系数据库中的表。
合法集合名:
- 集合名不能是空字符串。
- 集合名不能含有空字符,空字符表示集合名的结尾。
- 集合名不能以 "system." 开头,这是为系统集合保留的前缀。
- 用户创建的集合名字不能含有保留字符。
- 元数据
数据库信息存储在集合中,使用系统命名空间:dbname.system.*
- MongoDB 数据类型
以上是对 MongoDB 基本概念的简要介绍。