在 Web 应用程序上使用 NoSQL,而不是使用 SQL [关闭]
Posted
技术标签:
【中文标题】在 Web 应用程序上使用 NoSQL,而不是使用 SQL [关闭]【英文标题】:Using NoSQL on a web application, and not using SQL [closed] 【发布时间】:2012-04-18 04:58:25 【问题描述】:将 NoSQL 数据库(如 MongoDb 等)完全用于旨在成为社交网站的 Web 应用程序有哪些优点和缺点。我的意思是,将用户帐户和其他凭据存储在 NoSQL 数据库中,而不是使用像 mysql 这样的 SQL 和 Hibernate 并完全依赖 NoSQL,这是一个好方法吗?如果没有,设计 MySQL 实体或域对象(通常是用户帐户等)“绑定”到 NoSQL 数据库(通常是帖子、消息等)的趋势是什么?
【问题讨论】:
您做过任何研究吗? (-1) 这可能会有所帮助 - ***.com/questions/3183067/so-this-nosql-thing。 【参考方案1】:以下是您应该考虑的问题:
延迟
NoSQL 解决方案旨在在这里表现出色。他们通常将数据写入内存,然后批量刷新到磁盘。如果服务器在写入之前崩溃,数据可能会丢失。 MongoDB 有Journaling,这将有助于从崩溃中恢复。所以这里没有问题
可靠性
NoSQL 解决方案提供用于复制数据的内置解决方案。使用 MySQL,您必须自己完成此操作
对于社交网络场景,MongoDB 之类的文档存储是活动、cmets 相关信息的好主意。用户数据可以存储在 MySQL 数据库中
【讨论】:
是的,在我的应用程序中,我使用 MySQL 作为用户数据库,使用 MongoDB 作为其他数据。所以你是说最好还是把用户数据放在 SQL 中而不是 NoSQL 中? @xybrek 我说它是安全的。使用 NoSQL 系统,您应该知道幕后发生了什么——而且您可以做任何事情——甚至拥有用户数据。您可能还想考虑管理多个数据系统的复杂性以上是关于在 Web 应用程序上使用 NoSQL,而不是使用 SQL [关闭]的主要内容,如果未能解决你的问题,请参考以下文章