【发布时间】:2010-10-20 22:24:46
【问题描述】:
我正在创建一个将托管在亚马逊 EC2 上的应用程序,并且将保存的许多数据更面向文档(以及保存推文等与这些文档相关的内容)。
现在我正处于十字路口...我应该使用 simpleDB 还是 couchDB?使用其中任何一个的优点/缺点是什么?我应该两个都试一个月然后再决定吗?
【问题讨论】:
标签: amazon-web-services amazon-ec2 couchdb amazon-simpledb
我正在创建一个将托管在亚马逊 EC2 上的应用程序,并且将保存的许多数据更面向文档(以及保存推文等与这些文档相关的内容)。
现在我正处于十字路口...我应该使用 simpleDB 还是 couchDB?使用其中任何一个的优点/缺点是什么?我应该两个都试一个月然后再决定吗?
【问题讨论】:
标签: amazon-web-services amazon-ec2 couchdb amazon-simpledb
您可能会发现文章Amazon SimpleDB and CouchDB Compared 很有用。
我还发现MongoDB 提供了出色的性能。
【讨论】:
请记住,如果您的代码位于 EC2 中,那么 SimpleDB 可能会托管在您的代码所在的同一数据中心中,这将使 SimpleDB 对于来自 EC2 服务器的请求的延迟低于 CouchDB。此外,Amazon 不会向您收取 EC2 和 SimpleDB 之间的带宽费用。
出于这些原因,我希望 SimpleDB 对于在 EC2 中运行的代码来说更快、更便宜。
【讨论】:
SimpleDB 由 Amazon 为您托管和维护,CouchDB 完全由您决定。这是最大的不同。
【讨论】:
如果可能的话,我绝对会用您自己的用例对这两种解决方案进行一些基准测试,即如果您可以构建应用程序的合理子集以在任一数据库上运行(它们具有完全不同的 API,因此这可能不会轻松)。
【讨论】:
如果您在 .Net 环境中开发,那么有一个出色的 SimpleDB 库,名为 Simple Savant,它确实简化了集成..
【讨论】:
我已经使用 SimpleDB 构建了一些实时解决方案,它运行良好,尤其是在它前面有一个缓存层(参见 memcached 等)。不过,我最近开始寻找一个新项目,并决定迁移到 CouchDB,主要原因是控制数据。
随着您对 SimpleDB 的投入越来越大,迁移到其他任何东西变得越来越困难(啊,供应商锁定的乐趣),坦率地说,这对我们的业务来说并不好。
我仍然是云技术的坚定传播者,尤其是亚马逊,但我感觉在 EC2 上运行 couchdb 比在 SimpleDB 上运行要好得多。
罗杰
【讨论】: