我已经学了好几门关于udea的课程 NodeJS/Express
, ReactJS/Redux
有些课程是 MERN STACK
我真的很喜欢他们,但教练们唯一没有真正解释的是他们的选择 MongoDB
在参加这些课程之前,我总是使用 PostgreSQL
或者 MariaBD
在我所有的项目中,我使用了持久层 MongoBD
在所有这些课程中,不知道在什么样的情况下它是最好的选择或不是。所有的讲师只是说,由于数据像json数组一样存储,它很容易解析,因为它与 Javascript
就像其他人一样 JSON format
。我真的很想了解使用mongo而不是mongo的技术原因 relationnal database
或者不按照任何给定的项目要求,而不是仅仅因为讲师这样做而使用它
4条答案
按热度按时间zzzyeukh1#
我的看法是,在以下情况下,首选sql:
关系完整性(数据完整性)至关重要
数据更新频繁
实体之间存在明确和/或强有力的关系
mongodb更适合:
水平缩放/分片
复制sql数据以避免在生产中进行代价高昂的查询(某些替代方法可能更好)
我想说的是,当你不确定的时候可以使用sql。当您改变主意时,从sql迁移到nosql要比从其他方式容易得多。
kyxcudwk2#
我在sql和mongodb中都工作过。
数据库
sql语句
差异
数据库
请投票给这个答案,以便有需要的人找到这个答案,并能得到mongodb最适合他们的时间。
bttbmeg03#
从我个人的经验来看,当项目有点像一个社交媒体,需要维护帖子、评论、喜欢、阻止、取消阻止时,我会使用sql。我希望你明白我的意思。
mongodb也可以用于上述项目类型,但它的聚合会变得痛苦和不可读。
mongo db适用于除socialmedia以外的所有项目。这也是我的经验。
oymdgrw74#
当您有大量无模式的数据时。当您的数据和用户将无限增长时,您需要一个可扩展的云数据库解决方案。当你的积垢在某些方面需要更高的性能提升时。当你的软件栈是基于js的时候。你可以在这个youtube视频中查看其他原因https://youtu.be/k8xsufgcrku