mysql - SQL (MySQL) 与 NoSQL (CouchDB)
我正在设计一个必须存储大量数据的高度可扩展的应用程序。举个例子,它会存储很多关于用户的信息,然后是他们的很多消息、评论等。我以前一直使用 MySQL,但现在我想尝试一些新的东西,比如 couchdb 或类似的东西,而不是 SQL。
有人对此有任何想法或指导吗?
请您参考如下方法:
这是最近 blog post from Dare Obasanjo 的引述.
SQL databases are like automatic transmission and NoSQL databases are like manual transmission. Once you switch to NoSQL, you become responsible for a lot of work that the system takes care of automatically in a relational database system. Similar to what happens when you pick manual over automatic transmission. Secondly, NoSQL allows you to eke more performance out of the system by eliminating a lot of integrity checks done by relational databases from the database tier. Again, this is similar to how you can get more performance out of your car by driving a manual transmission versus an automatic transmission vehicle.
However the most notable similarity is that just like most of us can’t really take advantage of the benefits of a manual transmission vehicle because the majority of our driving is sitting in traffic on the way to and from work, there is a similar harsh reality in that most sites aren’t at Google or Facebook’s scale and thus have no need for a Bigtable or Cassandra.
我只能补充一点,从您至少有一些经验的 MySQL 切换到您没有经验的 CouchDB,这意味着您将不得不处理一系列全新的问题并学习不同的概念和最好的实践。虽然这本身很棒(我在家里玩 MongoDB 并且非常喜欢它),但这将是您在估算该项目的工作时需要计算的成本,并且会带来未知的风险,同时 promise 未知的 yield 。如果项目基于您不了解的技术,那么很难判断您是否可以按时完成项目并以您想要/需要的质量成功。
现在,如果您的团队中有 NoSQL 领域的专家,那么一定要好好看看它。但是,如果团队没有任何专业知识,就不要为了新的商业项目而使用 NoSQL。
更新:只是为了在你开始的火上浇油,这里有两篇来自 SQL 阵营人员的有趣文章。 :-)
I Can't Wait for NoSQL to Die (原文章没了,这里是copy)
Fighting The NoSQL Mindset, Though This Isn't an anti-NoSQL Piece
更新:这里有一篇关于 NoSQL 的有趣文章
Making Sense of NoSQL
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。