美文网首页
MongoDB介绍

MongoDB介绍

作者: 风赼 | 来源:发表于2020-04-25 21:34 被阅读0次

MongoDB是非关系型数据库,也叫文档型数据库,是一种NoSQL的数据库。

作为主流的非关系型数据库(NoSQL)产品,MongoDB 很好的实现了面向对象的思想,在 MongoDB 中每一条记录都是一个 Document 对象。MongoDB 最大的优势在于所有的数据持久操作都无需开发人员手动编写 SQL 语句,直接调用方法就可以轻松实现 CRUD 操作。

主要功能:

面向集合的存储:适合存储对象及 JSON 形式的数据。

动态查询:MongoDB 支持丰富的查询表达式,查询指令使用 JSON 形式的标记,可轻易查询文档中内嵌的对象及数组。

完整的索引支持:包括文档内嵌对象及数组,MongoDB 的查询优化器会分析查询表达式,并生成一个高效的查询计划。

查询监视:MongoDB 包含一个监视工具用于分析数据库操作的性能。

复制及自动故障转移:MongoDB 数据库支持服务器之间的数据复制,支持主从模式及服务器之间的相互复制,复制的主要目标是提供冗余及自动故障转移。

高效的传统存储方式:支持二进制数据及大型对象(如照片或图片)。

自动分片以支持云级别的伸缩性:自动分片功能支持水平的数据库集群,可动态添加额外的机器。

优势和劣势

优势:

1、在适量级的内存的MongoDB的性能是非常迅速的,它将热数据存储在物理内存中,使得热数据的读写变得十分快。

2、MongoDB的高可用和集群架构拥有十分高的扩展性。

3、在副本集中,当主库遇到问题,无法继续提供服务的时候,副本集将选举一个新的主库继续提供服务。

4、MongoDB的Bson和JSon格式的数据十分适合文档格式的存储与查询。

劣势:

1、 不支持事务操作。MongoDB本身没有自带事务机制,若需要在MongoDB中实现事务机制,需通过一个额外的表,从逻辑上自行实现事务。

2、 应用经验少,由于NoSQL兴起时间短,应用经验相比关系型数据库较少。

3、MongoDB占用空间过大。

mongoose

mongoose是mongoDB的一个对象模型工具,是基于node-mongodb-native开发的mongoDB的nodejs驱动,可以在异步的环境下执行。同时它也是针对mongoDB操作的一个对象模型库,封装了mongoDB对文档的一些增删改查等常用方法,让nodejs操作mongoDB数据库变得更加容易。

相关文章

  • 一日一学_Go语言mgo(mongo场景应用)

    本文重点介绍mgo使用,仅简单介绍mongodb。 mongodb特性 mgo简介 mgo 是 mongodb 的...

  • NoSQL三--mongodb(二)

    目录 十一、mongodb分片介绍十二、mongodb分片搭建十三、mongodb分片测试十四、mongodb备份...

  • NoSQL三--mongodb(一)

    目录 一、mongodb介绍二、mongodb安装三、连接mongodb四、mongodb用户管理五、mongod...

  • Python操作三大数据库- MongoDB数据库

    1. MongoDB的介绍 1.1 介绍 了解MongoDB数据库MongoDB数据库与其他NoSQL数据库的区别...

  • MongoDB介绍

    MongoDB介绍 MongoDB是什么? {“name”:”mongo”,”type”:”DB”} MongoD...

  • mongodb介绍

    MongoDB组成 mongodb-org-server: 其中包含了守护进程、关联配置和初始化脚本。mongod...

  • MongoDB介绍

    MongoDB是非关系型数据库,也叫文档型数据库,是一种NoSQL的数据库。作为主流的非关系型数据库(NoSQL)...

  • MongoDB介绍

    转载自:https://www.runoob.com/mongodb/mongodb-databases-docu...

  • 浅谈MongoDB数据库

    浅谈MongoDB数据库 Java操作MongoDB数据库简介MongoDB 介绍数据库安装MongoDB使用Mo...

  • mongodb学习系列(一)

    Mongodb介绍 1.nosql相关介绍 Mongodb是一种数据库,nosql(not only sql),不...

网友评论

      本文标题:MongoDB介绍

      本文链接:https://www.haomeiwen.com/subject/htslwhtx.html