MongoDB和mysql的区别对比分析

一 什么是MongoDB MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写,是一个开源数据库系统。旨在为 WEB 应用提供可扩展的高性能数

一.什么是MongoDB

  • MongoDB 是一个基于分布式文件存储的数据库。
  • 由 C++ 语言编写,是一个开源数据库系统。
  • 旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。
  • MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。
  • MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成。
  • MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文档数组。
  • 在高负载的情况下,添加更多的节点,可以保证服务器性能。

二.什么是Mysql

  • MySQL 是一款安全、跨平台、高效的,并与 PHP、Java 等主流编程语言紧密结合的数据库系统。该数据库系统是由瑞典的 MySQL
  • AB 公司开发、发布并支持,由 MySQL 的初始开发人员 David Axmark 和 Michael Monty Widenius 于
  • 功能强大
  • 支持跨平台
  • 运行速度快
  • 支持面向对象
  • 安全性高
  • 成本低
  • 支持各种开发语言
  • 数据库存储容量大
  • 支持强大的内置函数

三,区别

1.关系型数据库(mysql) 与 非关系型数据库(mongodb)的区别:

2.两方的优缺点以及特性:
a1.关系型数据库(mysql):
特性:

  • 关系型数据库是指采用了关系模型来组织数据的数据库;
  • 关系型数据库的最大特点就是事务的一致性
  • 简单来说,关系模型指的就是二维表格模型,关系型数据库就是由二维表及其之间的关联组成的数据组织

优点:

  • 容易理解;
  • 使用方便;
  • 易于维护;
    支持SQL,可用于复杂的查询

缺点:

  • 为了维护一执行需要消耗大量的性能,
  • 影响读写
  • 固定的表结构
  • 高并发读写需求
  • 海量数据的高效率读写

a2.非关系型数据库(mongodb):
特性:

  • 使用键值对存储数据
  • 分布式
  • 不支持ACID特性
  • 非关系型数据库严格上来说,不算是一种数据库,应该是一种数据结构化存储方法的集合

优点:

  • 无需经过sql层的解析,读写性能高;
  • 基于键值对,数据没有耦合性,容易扩展;
  • 存储数据的格式,nosql使用key:val的形式,文档的形式,图片形式等等,而关系型数据库则只支持基础类型

缺点:

  • 不提供sql支持,学习成本高
  • 无事务处理,附加功能和报表支持也不好

到此这篇关于MongoDB和mysql的区别的文章就介绍到这了,更多相关MongoDB和mysql的区别内容请搜索好代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持好代码网!

您可能有感兴趣的文章
NoSql数据库介绍及如何使用Python连接MongoDB

一篇关于MongoDB数据库核心概念

在Mac OS上安装如何使用MongoDB的好代码教程

如何利用Python操作MongoDB数据库的详细指南

mysql与MongoDB性能对比,哪个更适合自己