MongoDB入门:非关系型数据库的优势与特点

需积分: 49 61 下载量 178 浏览量 更新于2024-08-15 收藏 2.26MB PPT 举报
MongoDB 数据类型是其作为非关系型数据库管理系统(NoSQL)的重要组成部分,这些类型决定了如何在 MongoDB 中存储和处理数据。以下是对 MongoDB 数据类型的详细解释: 1. `null` 类型:代表空值或未定义的对象,如 `{"x": null}`。 2. 布尔值(Boolean):用于存储真或假的值,如 `{"x": true}` 或 `{"x": false}`。 3. 32位整数:MongoDB 在 Shell 中并不直接支持这种类型,它会被自动转换为64位浮点数。 4. 64位整数:同样,Shell 不直接支持,会转换为64位浮点数。 5. 64位浮点数(Double):这是 Shell 中最常见的数字类型,如 `{"x": 3.14, "y": 3}`。 6. 字符串(String):以 UTF-8 编码的文本,如 `{"foo": "bar"}`。 7. 符号类型(Symbol):MongoDB Shell 不支持此类型,会将其自动转换为字符串。 8. 对象 ID(ObjectId):12 字节的唯一标识符,用于每个文档,例如 `{"id": ObjectId()}。 9. 日期(Date):以自 Unix 纪元以来的毫秒数表示,如 `{"date": new Date()}`。 NoSQL 数据库,如 MongoDB,提供了一种不同于传统关系型数据库的解决方案。它们主要关注于非结构化和半结构化数据的存储,适合大数据、高并发和实时查询等场景。MongoDB 的优势在于其可伸缩性、高速读写性能和灵活的数据模型,适合那些数据模型随时间变化的应用。然而,它不支持 SQL 查询,特性和成熟度相对较低,这可能对某些应用造成不便。 MongoDB 的核心概念包括文档、集合和数据库。文档是 MongoDB 中存储数据的基本单位,类似 JSON 对象,可以包含嵌套的文档和数组。集合是文档的集合,相当于关系数据库中的表。每个数据库可以有多个集合,并有自己的权限设置。MongoDB 还提供了丰富的索引支持、复制和故障恢复功能,以及高效的 BSON 存储格式,这是一种二进制化的 JSON 格式,适用于存储大型对象。 在使用 MongoDB 时,开发者可以利用其内置的 JavaScript shell 进行交互式操作,进行数据查询、更新和管理任务。此外,`_id` 键是每个文档的唯一标识,确保了集合内的文档唯一性,类似关系数据库的主键。 MongoDB 是一种针对现代应用程序设计的高性能、灵活的数据库解决方案,尤其适用于处理大量非结构化数据。尽管它缺乏传统 SQL 支持,但其在数据存储和处理方面的优势使其成为许多开发者的首选。

为什么会这样[user_mongo@nosql01 replicaset]$ cd /opt [user_mongo@nosql01 opt]$ ll total 0 drwxr-xr-x. 3 root root 25 Mar 16 17:08 servers drwxr-xr-x. 2 root root 51 Mar 16 17:10 software [user_mongo@nosql01 opt]$ tar -zxvf /opt/software/mongodb-linux-x86_64-rhel70-4.4.12.tgz -C /opt/servers/mongodb_demo/replicaset/ mongodb-linux-x86_64-rhel70-4.4.12/LICENSE-Community.txt tar: mongodb-linux-x86_64-rhel70-4.4.12: Cannot mkdir: Permission denied tar: mongodb-linux-x86_64-rhel70-4.4.12/LICENSE-Community.txt: Cannot open: No such file or directory mongodb-linux-x86_64-rhel70-4.4.12/MPL-2 tar: mongodb-linux-x86_64-rhel70-4.4.12: Cannot mkdir: Permission denied tar: mongodb-linux-x86_64-rhel70-4.4.12/MPL-2: Cannot open: No such file or directory mongodb-linux-x86_64-rhel70-4.4.12/README tar: mongodb-linux-x86_64-rhel70-4.4.12: Cannot mkdir: Permission denied tar: mongodb-linux-x86_64-rhel70-4.4.12/README: Cannot open: No such file or directory mongodb-linux-x86_64-rhel70-4.4.12/THIRD-PARTY-NOTICES tar: mongodb-linux-x86_64-rhel70-4.4.12: Cannot mkdir: Permission denied tar: mongodb-linux-x86_64-rhel70-4.4.12/THIRD-PARTY-NOTICES: Cannot open: No such file or directory mongodb-linux-x86_64-rhel70-4.4.12/bin/install_compass tar: mongodb-linux-x86_64-rhel70-4.4.12: Cannot mkdir: Permission denied tar: mongodb-linux-x86_64-rhel70-4.4.12/bin/install_compass: Cannot open: No such file or directory mongodb-linux-x86_64-rhel70-4.4.12/bin/mongo tar: mongodb-linux-x86_64-rhel70-4.4.12: Cannot mkdir: Permission denied tar: mongodb-linux-x86_64-rhel70-4.4.12/bin/mongo: Cannot open: No such file or directory mongodb-linux-x86_64-rhel70-4.4.12/bin/mongod tar: mongodb-linux-x86_64-rhel70-4.4.12: Cannot mkdir: Permission denied tar: mongodb-linux-x86_64-rhel70-4.4.12/bin/mongod: Cannot open: No such file or directory mongodb-linux-x86_64-rhel70-4.4.12/bin/mongos tar: mongodb-linux-x86_64-rhel70-4.4.12: Cannot mkdir: Permission denied tar: mongodb-linux-x86_64-rhel70-4.4.12/bin/mongos: Cannot open: No such file or directory tar: Exiting with failure status due to previous errors [user_mongo@nosql01 opt]$ tar -zcvf /opt/software/mongodb-linux-x86_64-rhel70-4.4.12.tgz -C /opt/servers/mongodb_demo/replicaset/ tar: Cowardly refusing to create an empty archive Try `tar --help' or `tar --usage' for more information.

2023-06-01 上传