它们之间的比较将是不公平的,它们都有各自的用途。
MySQL是一种关系数据库管理系统(RDBMS),它将数据存储在表中,并使用结构化查询语言(SQL)进行数据库访问。 在MySQL中,您可以根据需求预先定义数据库模式,并设置规则来管理表中字段之间的关系。
如果您的数据结构很好地适合表和行,MySQL将为您提供与数据的健壮轻松的交互。 如果您关心的是性能,则很有可能您真的不需要MongoDB。 最有可能的是,您只需要正确索引数据即可。 如果您需要SQL或事务,则必须坚持使用MySQL。
MongoDB将数据存储在类似JSON的文档中,这些文档的结构可能有所不同。 相关信息存储在一起,以便通过MongoDB查询语言进行快速查询访问。 MongoDB使用动态模式,这意味着您无需先定义结构(例如字段或它们的值的类型)就可以创建记录。 您可以简单地通过添加新字段或删除现有字段来更改记录(我们称为文档)的结构。
如果您的数据似乎很难在关系数据库系统中建模,或者发现自己对数据库模式进行了非规范化,则应考虑使用MongoDB。 如果您发现自己尝试存储序列化的数组或JSON对象,则表明您最好不要使用MongoDB。 如果您无法预先定义架构,或者想将记录存储在具有不同字段的同一集合中,那是另一个很好的理由。
网友评论