文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

比较 MongoDB 与 MySQL 以及性能测试

2023-09-03 16:44

关注

MySQL与MongoDB都是开源的常用数据库,但是MySQL是传统的关系型数据库,MongoDB则是非关系型数据库(另称文档型数据库),是一种NoSQL的数据库。它们各有各的优点,关键是看用在什么地方。所以我们所熟知的那些SQL语句就不适用于MongoDB了,因为SQL语句是关系型数据库的标准语言。

关于 MongoDB,优点如下:

• MongoDB 的结构更灵活,因为它是一个文档型的 NoSQL 数据库,允许用户添加和删除数据库字段,而不必改变整个数据库结构;

• MongoDB 提供了高性能,无缝的扩展性和扩展性,可以很容易地横向扩展数据库,从而改善存储能力和处理能力;

• MongoDB 可以处理大量动态数据,因为文档可以包含不同类型的数据;

• MongoDB 支持高级功能,包括索引,聚合管道和分片,以提供强大的查询功能;

• MongoDB 支持一些新的特性,如内存限制,自动缓存,可插拔式存储引擎等;

• MongoDB 支持大量编程语言,这样能够更轻松地与现有代码集成;

当然,MongoDB 也有一些缺点,比如,它不能执行复杂的关系查询,缺乏一些高级的数据库特性,比如主从复制,事务等等。

相比之下,MySQL 的优点是:

• MySQL 支持原始 SQL 语句,支持复杂的查询,因此能够处理复杂的数据;

• MySQL 支持强大的回滚管理,这样可以避免不需要的或):错误的更改;

• MySQL 支持外部键,这样可以有效地关联两个表;

• MySQL 支持复杂的视图结构,可以从不同的表中提取数据;

• MySQL 拥有极佳的社区支持,有快速的解决方案;

• MySQL 轻便,拥有低延迟,因此可以处理大量数据;

但是,MySQL 也有一些缺点,它无法处理非关系型数据,它的数据结构也非常死板,对动态数据的处理也做得不够好。

接下来我们比较2个数据库的性能水平:

1. 百万、千万级别的下不同查询量不同并发量的压测结果

数据库表中记录数总量在百万、千万级别的压测数据及结果如表所示:

2. 亿级别的下不同查询量不同并发量的压测结果

数据库表中记录数总量在亿级别的压测数据及结果如表所示:

压测结果分析:

1)当每次查询数据量在500条时,无论表中数据总量千万或者亿级别,Mysql和MongoDB在100线程并发的情况下查询性能相当,表现良好,平均响应时间在500ms以内,TPS在230左右。

2)当每次查询数据量在5000条时,表中数据总量为千万级别时,MongoDB在50线程并发情况下查询性能不及Mysql 的一半,100线程并发情况查询性能都很差,平均响应时间在4500ms左右,表中数据总量为亿级别时,在50个及以上的并发情况下,MongoDB和Mysql性能都较差。

在本案例简单数据模型下的时间范围内的等值查询应用场景下,MongoDB在高并发条件下的大数据量查询性能并没有比Mysql更好。另外还有一点需要注意的是,在本案例中,数据总量由百万级别到千万级别再到亿级别的变化过程中,对于查询性能的影响都不是很大,但对于查询数据量的数倍增长却十分敏感,所以在考量数据库查询性能的时候,也要重点考量应用的单次查询量的需求。

所以具体使用Mysql还是MongoDB,需要根据自己的业务场景做出相应的选择。

附带Mysql和MongoDB的学习教程,有需要的同学可以去看看:

Mysql:我们身边有哪些数据库 - 数据库入门 - Mysql - 小牛知识库

Mongodb: NoSQL是什么 - MongoDB教程 - MongoDB - 小牛知识库

来源地址:https://blog.csdn.net/liuyx1031/article/details/130892168

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯