阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

MongoDB 与 MySQL,你选择谁?

421次阅读
没有评论

共计 1586 个字符,预计需要花费 4 分钟才能阅读完成。

过去几年,使用 NoSQL 数据库的网站和应用数量激增。MongoDB 无处不在。现代网络如何偏离传统的基于 SQL 的数据库确实令人着迷。MongoDB 和其他 NoSQL 数据库在存储和检索数据方面有一种新方法。那么让我们来看看 MongoDB 与 MySQL 不同的一些关键因素。

MongoDB 与 MySQL,你选择谁?

数据建模

使用像 MySQL 这样的传统 SQL 数据库,我们需要一个固定的数据结构。我们希望知道将记录哪些不同类型的数据。我们必须事先创建数据库,必需的表,列,甚至为每列指定数据类型。MongoDB 不是这种情况。使用 MongoDB,开发人员可以稍微悠闲一点。忘记表和数据类型,甚至不需要创建数据库。MongoDB 会自动为您完成大部分初始繁重工作。

MongoDB 致力于集合的思想。这些集合类似于表,但没有任何固定数量的列。因此,集合中的每个文档(文档是行 / 记录的 MySQL 等价物)可以具有不同的结构。它们可能具有相同数量的字段,也可能不具有相同数量的字段(字段是 MySQL 的等效列)。因此可以说 MySQL 具有固定模式,而 MongoDB 具有灵活的模式。

搜索数据

在 MySQL 中搜索数据库中的数据可能是一项非常简单的任务。我们支持诸如可以帮助组合来自多个表的数据的连接之类的东西。但这再次要求您非常了解您的数据模型。像外键这样的概念允许您在不同数据集之间创建关系。这有助于保持数据完整性。

由于其灵活的架构,MongoDB 在搜索数据方面有着截然不同的方法。搜索数据非常有限,因为 Mongo 中没有联接。由于允许嵌套,因此您需要在一个文档中放置所需的任何数据。这是真正困扰在 mongo 上工作的新开发人员的事情之一。总的来说,我会说 SQL 在搜索数据方面非常丰富而且 MongoDB 非常有限。

约束和数据完整性

由于您必须使用 SQL 预定义数据模型,因此无需担心完整性。数据库不接受任何不符合标准的数据类型。像外键,主键和唯一索引这样的约束会让开发人员感到很麻烦。

另一方面,尽管 MongoDB 落后了。它确实提供了几种类型的基于完整性的索引,包括唯一索引,但是数据类型没有约束。它完全被理解,因为这些领域本身并没有固定。因此,非常常见的是,ORM(对象关系映射器)经常与 MongoDB 一起使用。它们用于对服务器端代码执行完整性检查。总而言之,SQL 是非常严格且丰富的数据完整性,而 MongoDB 则不然。

扩展

每个成功的应用程序都需要在某个时候扩展。当用户数量增长时,需要多个服务器。这是能够扩展的因素。传统上,SQL 数据库是为垂直扩展而构建的,即通​​过增加同一台机器上的硬件进行扩展。如果该服务器由于某种原因崩溃,这将导致麻烦。

另一方面,MongoDB 是为了水平扩展而构建的。您可以设置多个节点,这些节点将自动复制,没有单点故障。虽然 MySQL 已经看到了 MySQL Cluster 的巨大改进,但它仍然无法与 MongoDB 相媲美。在扩展方面,MongoDB 的性能远远优于 MySQL。

结论

MongoDB 和 MySQL 有两个完全不同的数据库系统。在数据库方面,MySQL 一直是并且仍然是许多人的默认选择。但是,我们看到变化和,更多的人们选择 MongoDB。

MongoDB 比 MySQL 更能满足现代应用程序的需求但 MySQL 在处理关系数据方面具有更好的优势。在一天结束时,这只是你想要做的事情。这两个选项都非常可靠,并且被互联网上的一些大公司使用。我希望我已经明确了 MySQL 和 MongoDB 之间的主要区别。如果您仍有疑问,请将其放在评论部分,我会在那里为您服务。

MongoDB 比 MySQL 更好地满足了现代应用程序的需求,但 MySQL 在处理关系数据方面有更好的优势。说到底,这只是你想做什么的问题。这两种选择都相当可靠,一些互联网上最大的公司也在使用它们。我希望我已经明确了 MySQL 和 MongoDB 之间的主要区别。如果你仍然有疑问,请在评论框里畅所欲言吧。

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-22发表,共计1586字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19350
评论数
4
阅读量
7912767
文章搜索
热门文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见 zabbix!轻量级自建服务器监控神器在 Linux 的完整部署指南 在日常运维中,服务器监控是绕不开的...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
升级自动部署更新SSL证书系统、申请godaddy的APIKEY

升级自动部署更新SSL证书系统、申请godaddy的APIKEY

升级自动部署更新 SSL 证书系统、申请 godaddy 的 APIKEY 公司之前花钱购买的 ssl 证书快...
自己手撸一个AI智能体—跟创业大佬对话

自己手撸一个AI智能体—跟创业大佬对话

自己手撸一个 AI 智能体 — 跟创业大佬对话 前言 智能体(Agent)已经成为创业者和技术人绕...
你的云服务器到底有多强?宝塔跑分告诉你

你的云服务器到底有多强?宝塔跑分告诉你

你的云服务器到底有多强?宝塔跑分告诉你 为什么要用宝塔跑分? 宝塔跑分其实就是对 CPU、内存、磁盘、IO 做...
开发者福利:免费 .frii.site 子域名,一分钟申请即用

开发者福利:免费 .frii.site 子域名,一分钟申请即用

  开发者福利:免费 .frii.site 子域名,一分钟申请即用 前言 在学习 Web 开发、部署...
从“纸堆”到“电子化”文档:用这个开源系统打造你的智能文档管理系统

从“纸堆”到“电子化”文档:用这个开源系统打造你的智能文档管理系统

从“纸堆”到“电子化”文档:用这个开源系统打造你的智能文档管理系统 大家好,我是星哥。公司的项目文档存了一堆 ...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
三大开源投屏神器横评:QtScrcpy、scrcpy、escrcpy 谁才是跨平台控制 Android 的最优解?

三大开源投屏神器横评:QtScrcpy、scrcpy、escrcpy 谁才是跨平台控制 Android 的最优解?

  三大开源投屏神器横评:QtScrcpy、scrcpy、escrcpy 谁才是跨平台控制 Andr...
星哥带你玩飞牛NAS-16:飞牛云NAS换桌面,fndesk图标管理神器上线!

星哥带你玩飞牛NAS-16:飞牛云NAS换桌面,fndesk图标管理神器上线!

  星哥带你玩飞牛 NAS-16:飞牛云 NAS 换桌面,fndesk 图标管理神器上线! 引言 哈...
一句话生成拓扑图!AI+Draw.io 封神开源组合,工具让你的效率爆炸

一句话生成拓扑图!AI+Draw.io 封神开源组合,工具让你的效率爆炸

一句话生成拓扑图!AI+Draw.io 封神开源组合,工具让你的效率爆炸 前言 作为天天跟架构图、拓扑图死磕的...
每年0.99刀,拿下你的第一个顶级域名,详细注册使用

每年0.99刀,拿下你的第一个顶级域名,详细注册使用

每年 0.99 刀,拿下你的第一个顶级域名,详细注册使用 前言 作为长期折腾云服务、域名建站的老玩家,星哥一直...
免费无广告!这款跨平台AI RSS阅读器,拯救你的信息焦虑

免费无广告!这款跨平台AI RSS阅读器,拯救你的信息焦虑

  免费无广告!这款跨平台 AI RSS 阅读器,拯救你的信息焦虑 在算法推荐主导信息流的时代,我们...