`

深入浅出MongoDB(一):认识MongoDB

阅读更多

MongoDB 简介

MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的,语法有点类似 Javascript 面向对象的查询语言,它是一个面向集合的、模式自由的文档型数据库。

面向集合( Collenction-Orented

意思是数据被分组存储在数据集中, 被称为一个集合( Collenction) 。每个集合在数据库中

都有一个唯一的标识名,并且可以包含无限数目的文档。集合的概念类似关系型数据库

RDBMS )里的表( table ),不同的是它不需要定义任何模式( schema)

模式自由( schema-free)

意味着对于存储在 MongoDB 数据库中的文件,我们不需要知道它的任何结构定义。提了这么多次 " 无模式 " " 模式自由 " ,它到是个什么概念呢?例如,下面两个记录可以存在于同一个集合里面:

{"name" : "mongo"}

{"age" : 25}

文档型

意思是我们存储的数据是键 - 值对的集合 , 键是字符串 , 值可以是数据类型集合里的任意类型 , 包括数组和文档 . 我们把这个数据格式称作“ BSON ”即“ Binary Serialized dOcumentNotation. ”每一个文档相当于关系数据库中的一条记录。

MongoDB 特征

MongoDB 的特点是高性能、易部署、易使用,存储数据非常方便,主要特征有:

面向集合存储,易于存储对象类型的数据

模式自由

支持动态查询

支持完全索引,包含内部对象

支持复制和故障恢复

使用高效的二进制数据存储,包括大型对象(如视频等)

自动处理碎片,以支持云计算层次的扩展性

支持 Python PHP Ruby Java C C# Javascript Perl C++ 语言的驱动程序,社区中也提供了对 Erlang .NET 等平台的驱动程序

文件存储格式为 BSON (一种 JSON 的扩展)

MongoDB 适用场景

持久化缓存层

高效的实时性

用于对象及 JSON 数据的存储

高伸缩性的场景

大尺寸、低价值的数据存储

MongoDB 不适用场景

要求高度事务性的系统

传统的商业智能应用

复杂的表查询

本文链接:http://www.656463.com/portal.php?mod=view&aid=75 ,转载请注明出处

下一节: MongoDB 的安装与使用

分享到:
评论

相关推荐

    深入浅出MongoDB应用实战集群及系统架构

    MongoDB是一种非常流行的开源文档数据库,它采用了NoSQL(非关系型数据库)技术,可以提供高性能、高可用性和易扩展性。MongoDB非常适合处理大规模数据和复杂的数据类型。由于其灵活性和高效性,在Web应用、大数据...

    深入浅出MongoDB应用实战开发视频教学

    深入浅出MongoDB应用实战开发视频教学,里面包含笔记和资料

    windows版本 mongodb shell:mongosh-2.2.6-win32-x64.zip

    windows版本 mongodb shell:mongosh-2.2.6-win32-x64.zip mongodb shell :https://www.mongodb.com/try/download/shell mongodb相关官网下载地址: mongodb社区版:...

    MongoDB实战:MongoDB in Action

    "MongoDB实战:MongoDB in Action"是一本专为开发者和数据库管理员设计的书籍,旨在深入理解和应用MongoDB。这本书分为中英文两个版本,为读者提供了全面的学习资源。 1. **文档型数据库**:MongoDB是NoSQL数据库的...

    mongodb资源:MongoDB的基于DAO的基本操作

    mongodb资源:MongoDB的基于DAO的基本操作

    深入学习MongoDB:Scaling MongoDB && 50 Tips and Tricks for MongoDB Developers

    深入学习MongoDB:Scaling MongoDB && 50 Tips and Tricks for MongoDB Developers深入学习MongoDB中文版Scaling MongoDB英文版50 Tips and Tricks for MongoDB Developers英文版高清完整目录3本打包合集

    MongoDB数据库:MongoDB基本CRUD操作PDF

    它是一款基于分布式文件存储的开源数据库系统,设计用于处理大量数据并提供高性能的数据访问。MongoDB的名称来源于“humongous”,意指巨大的,这反映了其处理大规模数据的能力。自发布以来,MongoDB迅速获得了广泛...

    MongoDB GridFS:管理大型文件存储的高效方案

    2. **集合**:MongoDB中的文档被组织在集合(Collections)中,类似于关系数据库中的表,但它们不需要有一个固定的模式。 3. **高性能**:MongoDB优化了读写操作,提供了高性能的数据访问,特别是在处理大量的读写...

    MongoDB权威指南:MongoDB:The Definitive Guide

    MongoDB是一种流行的开源文档型数据库,它以其灵活性、可扩展性和高性能在现代数据存储解决方案中占据了一席之地。《MongoDB权威指南》是学习和掌握MongoDB的重要参考资料,该书涵盖了MongoDB的基础知识到高级应用,...

    如何备份和恢复MongoDB数据库:数据安全的最佳实践

    2. **集合**:MongoDB中的文档被组织在集合(Collections)中,类似于关系数据库中的表,但它们不需要有一个固定的模式。 3. **高性能**:MongoDB优化了读写操作,提供了高性能的数据访问,特别是在处理大量的读写...

    org.mongodb.spark:mongo-spark-connector_2.11:1.1.0

    mongodb-spark官方连接器,运行spark-submit --packages org.mongodb.spark:mongo-spark-connector_2.11:1.1.0可以自动下载,国内网络不容易下载成功,解压后保存到~/.ivy2目录下即可。

    Windows上安装MongoDB:完整步骤详解.pdf

    1. 连接MongoDB:输入`mongo.exe`命令,连接到本地MongoDB服务。 2. 创建数据库:使用`use <database_name>`命令,如`use testdb`,创建一个名为"testdb"的数据库。 3. 插入数据:在选定的数据库中,使用`db....

    MongoDB: The Definitive Guide

    MongoDB: The Definitive Guide MongoDB is a powerful, flexible, and scalable general­purpose database. It combines the ability to scale out with features such as secondary indexes, range queries, ...

    解决Linux上MongoDB启动脚本错误---env: /etc/init.d/mongodb : no such file or directory

    - 启动MongoDB:`sudo systemctl start mongodb` - 设置开机启动:`sudo systemctl enable mongodb` 6. **手动创建启动脚本** 如果系统确实不支持Init.d,但需要使用旧的启动方式,可以手动创建一个启动脚本。这...

    如何安装MongoDB 如何使用MongoDB

    本课程是一套关于MongoDB应用开发的实战性教程,名为《深入浅出MongoDB应用实战开发(基础、开发指南、系统管理、集群及系统架构)》,教程侧重于讲解MongoDB的常用特性及高级特性,从实际开发的角度出发对MongoDB...

    深入云计算:MongoDB管理与开发实战详解 源代码

    本资源“深入云计算:MongoDB管理与开发实战详解 源代码”旨在为开发者和管理员提供全面的MongoDB知识,通过源代码实例帮助读者深入理解其核心概念和实践技巧。 在云计算领域,MongoDB常作为NoSQL数据库解决方案,...

    Big.Data.NoSQL.Architecting.MongoDB.epub

    Getting Started with Installation and coding with Mongo Shell 5: MongoDB Explained 6: Administering MongoDB 7: MongoDB Use Cases and How To’s – Know How To’s for using MongoDB to its best. ...

    MongoDB进阶与实战:微服务整合、性能优化、架构管理.docx

    2. 生命周期管理:MongoDB 可以用于管理应用程序的生命周期,包括数据存储、查询和分析等。 3. 大数据处理:MongoDB 可以用于处理大规模的数据,包括数据存储、处理和分析等。 MongoDB 是一种功能强大且灵活的...

    nodejs+mongodb搭建简单博客

    在本文中,我们将深入探讨如何使用Node.js和MongoDB搭建一个简单的博客系统。在这个过程中,我们还将介绍模版引擎Jade(现在被称为Pug)以及前端框架Bootstrap的应用。这些都是现代Web开发中的关键组件,让我们逐一...

    mongodb的c++连接接口

    1. **MongoDB C++ 驱动**:MongoDB 的 C++ 驱动程序是一个官方支持的客户端库,它允许 C++ 应用程序与 MongoDB 服务器通信。这个驱动程序提供了一套完整的 API,用于执行 CRUD(创建、读取、更新、删除)操作,以及...

Global site tag (gtag.js) - Google Analytics