首页技术文章正文

mysql和mongoDB有什么区别?

更新时间:2021-05-10 来源:黑马程序员 浏览量:

1577370495235_学IT就到黑马程序员.gif

MySQL

1、关系型数据库

2、在不同的引擎上有不同的存储方式

3、查询语句是使用传统的sql语句,拥有较为成熟的体系,成熟度很高

4、开源数据库的份额在不断增加,mysql的份额页在持续增长

5、缺点就是在海量数据处理的时候效率会显著变慢

MongoDB

非关系型数据库(Nosql),属于文档型数据库。先解释一下文档的数据库,即可以存放xml、json、bson(即Binary-JSON)类型系那个的数据。这些数据具备自述性(selfdescribing),呈现分层的树状数据结构。数据结构由键值(key=>value)对组成MongoDB 是由C++语言编写的,主要是在为WEB应用提供可扩展的高性能数据存储解决方案。

存储方式:虚拟内存+持久化

查询语句:是独特的Mongodb的查询方式

适合场景:事件的记录,内容管理或者博客平台等等

架构特点:可以通过副本集,以及分片来实现高可用

数据处理:数据是存储在硬盘上的,只不过需要经常读取的数据会被加载到内存中,将数据存储在物理内存中,从而达到高速读写
成熟度与广泛度:新兴数据库,成熟度较低,Nosql数据库中最为接近关系型数据库,比较 完善的DB之一,适用人群不断在增长


MongoDB的优势

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

2、高扩展。

3、自身的Failover机制。

4、json的存储格式。

5、内置GridFS,支持大容量的存储。

6、内置Sharding,分片简单。

7、海量数据下,性能优越。

8、支持自动故障恢复(复制集)。


MongoDB的缺陷

1、不支持事务操作

2、占用空间过大。

3、MongoDB没有如MySQL那样成熟的维护工具。

4、无法进行关联表查询,不适用于关系多的数据。

5、复杂聚合操作通过mapreduce创建,速度慢

6、模式自由,自由灵活的文件存储格式带来的数据错误

7、MongoDB没有如MySQL那样成熟的维护工具,这对于开发和IT运营都是个值得注意的地方


猜你喜欢:

python爬虫用什么数据库好?Mysql和Mongdb哪个有优势?

pymysql如何链接Mysql数据库?

MySQL和MariaDB有什么区别?

黑马程序员前端培训课程

分享到:
在线咨询 我要报名
和我们在线交谈!