我应该使用CouchDB还是SimpleDB?

时间:2009-04-21 20:00:50

标签: amazon-web-services amazon-ec2 couchdb amazon-simpledb

我正在创建一个将在亚马逊EC2上托管的应用程序,并且许多将被保存的数据更加面向文档(以及保存推文以及与这些文档相关的内容)。

现在我正处于十字路口......我应该使用simpleDB还是couchDB?使用其中之一的利弊是什么?我应该尝试一个月并决定吗?

6 个答案:

答案 0 :(得分:12)

您可能会发现文章Amazon SimpleDB and CouchDB Compared很有用。

我还发现MongoDB表现出色。

答案 1 :(得分:5)

请记住,如果您的代码位于EC2中,SimpleDB可能会托管在您的代码所在的同一数据中心,这样可以使SimpleDB比来自EC2服务器的请求的CouchDB延迟更低。此外,亚马逊不会向您收取EC2和SimpleDB之间的带宽成本。

出于这些原因,我希望SimpleDB对于在EC2中运行的代码来说既快又便宜。

答案 2 :(得分:4)

SimpleDB由亚马逊为您托管和维护,CouchDB完全取决于您。这是最大的不同。

答案 3 :(得分:1)

如果可能的话,我绝对会使用您自己的用例对这两个解决方案进行一些基准测试,即如果您可以构建一个合理的应用程序子集以在任一数据库上运行(它们具有完全不同的API,因此可能不会很容易)。

答案 4 :(得分:1)

如果你在.Net环境中开发,那么SimpleDB的一个优秀的lib名为Simple Savant,它真的可以简化集成。

答案 5 :(得分:1)

我使用SimpleDB构建了一些实时解决方案,它运行得非常好,尤其是前面有一个缓存层(参见memcached等)。然而,我最近开始确定一个新项目,并决定转移到CouchDB,这是控制数据的主要原因。

随着您对SimpleDB的承诺不断增长,越来越难以迁移到其他任何东西(啊供应商锁定的乐趣),坦率地说,这对我们的业务来说并不是很好。

我仍然是云技术的强大传播者,尤其是亚马逊,但我觉得在EC2上运行couchdb比使用SimpleDB更好。

罗杰