Java NoSQL是否适合社交网络类应用

Java NoSQL是否适合社交网络类应用,java,mysql,mongodb,scala,nosql,Java,Mysql,Mongodb,Scala,Nosql,我计划开发社交网络应用程序,我想尝试一种NoSQL解决方案。任何人都认为NoSQL是开发此类应用程序的合适选择。首先,NoSQL不是产品,甚至不是模型。这只是对任何非SQL数据存储的通用术语 NoSQL数据存储可能不适合社交网络应用程序。他们中的大多数人甚至不会加入你的团队和成员。良好的总体架构和设计比简单地选择一种数据技术更重要;后者不会神奇地让你的网站工作。但是,如果你的应用程序设计足够好的话,许多领先的NoSQL技术都可以很好地工作。看看Neo4J(),一个图形数据库 基于大多数知名社交网

我计划开发社交网络应用程序,我想尝试一种NoSQL解决方案。任何人都认为NoSQL是开发此类应用程序的合适选择。

首先,NoSQL不是产品,甚至不是模型。这只是对任何非SQL数据存储的通用术语


NoSQL数据存储可能不适合社交网络应用程序。他们中的大多数人甚至不会加入你的团队和成员。

良好的总体架构和设计比简单地选择一种数据技术更重要;后者不会神奇地让你的网站工作。但是,如果你的应用程序设计足够好的话,许多领先的NoSQL技术都可以很好地工作。

看看Neo4J(),一个图形数据库

基于大多数知名社交网络已经使用某种非关系型数据库这一事实,我认为它是合适的(或者说它们都大错特错:d)

在我看来,NoSQL的一个很好的应用是任何处理大量(我的意思是大量)用户生成数据的系统,比如社交网络、跟踪系统等等


但是,正如其他人已经说过的,这种或那种技术无法弥补糟糕的设计。所以,当构建任何需要良好扩展的东西时,我会从设计开始,然后寻找一种适当稳定且有文档记录的技术来支持它。如果它是一个非关系型数据库,那就这样吧。

看看它使用的是MongoDB和Redis。

如果你主要对浏览网络关系感兴趣,那么我认为公平地说,像和这样的图形数据库值得一试。(网络中链接的固定时间导航。)

在设计社交网络应用程序时,NoSQL是一个完美的解决方案。
使用MySQL开发社交网络一开始可能会更容易,但后来,随着应用程序的增长和用户数量的增加,你将不得不考虑如何管理MySQL集群、处理主从配置等,这将是一个大问题。有了NoSQL解决方案(我建议您使用MongoDB,在我看来这是最好的),您只需安装新服务器并创建数据库碎片即可。水平扩展过程将非常简单。

NoSQL用例:

将在2020年实现,但绝大多数情况下不会。这是一场噩梦

告诉Facebook、Twitter和Digg,因为他们都使用Cassandra。还有拥有BigTable的谷歌。@The:Facebook建立了Cassandra来支持搜索功能。另外,他们的社交网络内容仍然存在于MySQL服务器场中。最近有一篇在线文章(包括所有需要注意的事项)证实MySQL仍然存在。据报道,散居海外的人在使用MongoDB作为他们的社交网络数据库时犯了一个很大的错误。