我正在创建一个将在亚马逊EC2上托管的应用程序,并且许多将被保存的数据更加面向文档(以及保存推文以及与这些文档相关的内容)。
现在我正处于十字路口......我应该使用simpleDB还是couchDB?使用其中之一的利弊是什么?我应该尝试一个月并决定吗?
答案 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更好。
罗杰