node为什么用mongodb? - 网站

node为什么用mongodb?

分类:Node.js常见问题 · 发布时间:2019-09-06 16:33 · 阅读:2602

node使用mongodb的原因:mongodb是一个高性能、无模式、文档性,目前nosql中最热门的数据库;这个数据库具有格式自由、强大的查询语句,基本覆盖sql语言所有能力、支持二进制数据及大型对象(文件)的高效存储等特点。

MongoDB数据库介绍:

MongoDB:是一个数据库 ,高性能、无模式、文档性,目前nosql中最热门的数据库,开源产品,基于c++开发。是nosql数据库中功能最丰富,最像关系数据库的。

MongoDB特性:

 面向集合文档的存储:适合存储Bson(json的扩展)形式的数据;

 格式自由,数据格式不固定,生产环境下修改结构都可以不影响程序运行;

 强大的查询语句,面向对象的查询语言,基本覆盖sql语言所有能力;

 完整的索引支持,支持查询计划;

 支持复制和自动故障转移;

支持二进制数据及大型对象(文件)的高效存储;

 使用分片集群提升系统扩展性;

 使用内存映射存储引擎,把磁盘的IO操作转换成为内存的操作;

MongoDB的不足:

 MongoDB对事物的支持较弱: 高度事务性系统,例如银行、财务等系统不适合。

 涉及到复杂 的、高度优化的查询方式:传统的商业智能应用,特定问题的数据分析,多数据实体关联等不适合;

 数据结构相对固定,使用关系型数据库更好合理,使用sql进行查询统计更加便利的 时候等不适合;

通过上面的分析知道什么情况下使用MongoDB比较合理。下面来分析一下MongoDB在数据安全,灾备,集群容错上做了哪些努力。

第一:Mongodb会不会数据丢失?

1 (2).jpg-600

可见:在不开启journal日志时是有可能导致数据丢失的(在60s之间或还没有到达2G时服务器宕机),但在开启了journal日志时数据是不会丢失的,Journal 日志类似于关系数据库中的事务日志。Journaling能够使MongoDB数据库由 于意外故障后快速恢复。

MongoDB2.4版本后默认开启了Journaling日志功 能,mongod实例每次启动时都会检查journal日志文件看是否需要恢复。

由于提交 journal日志会产生写入阻塞,所以它对写入的操作有性能影响,但对于读没有影响。 在生产环境中开启Journaling是很有必要的。

第二:MongoDB安全性如何?

MongoDB提供了各种数据库角色和登录验证,不同角色具有不同的操作权限,类似于关系型数据库。如:

2.jpg-600

想要了解更多前端知识,可访问 前端开发学习!!

标签:
node

相关文章

如何设置 nodejs 的环境变量

在前端开发过程中,我们需要对 application 运行的环境进行设置,一般会包括开发环境development,生产环境production,每个环境可以对应不同的一些配置,例如不同环境下请求的地址...

谈谈Node.js与JavaScript的差异

Javascript是一种web前端语言,主要用于web开发中,由浏览器解析执行。Node.js是一个可以快速构建网络服务及应用的平台,是用Javascript语言构建的服务平台。

npm install安装报错怎么解决?

解决方法:1、报“operation not permitted”错误,通过“npm i 包名 --no-optional”解决;2、报“Missing: chromedriver”错误,表示没有安装chromedriver,安装一下即可。

怎么使用npm下载vue.js?

使用npm下载vue.js的方法:1、安装node.js和npm;2、安装cnpm;3、使用命令cnpm install -g vue-cli来安装即可。

vue.js和node.js是什么关系?

vue.js和node.js并没有关系,vue.js是前端框架,算是js的三大框架之一吧,node.js是后端开发语言,同php、java、c#一样的。但是他们可以配合使用。

返回分类 返回首页