【问题标题】:Should I use CouchDB or SimpleDB?我应该使用 CouchDB 还是 SimpleDB?
【发布时间】:2010-10-20 22:24:46
【问题描述】:

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

现在我正处于十字路口...我应该使用 simpleDB 还是 couchDB?使用其中任何一个的优点/缺点是什么?我应该两个都试一个月然后再决定吗?

【问题讨论】:

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


    【解决方案1】:

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

    我还发现MongoDB 提供了出色的性能。

    【讨论】:

    • +1 用于 MongoDB。无法在我的服务器/iPhone 客户端上安装 Erlang,但基于文档的数据库的 C++ 库令人鼓舞。
    【解决方案2】:

    请记住,如果您的代码位于 EC2 中,那么 SimpleDB 可能会托管在您的代码所在的同一数据中心中,这将使 SimpleDB 对于来自 EC2 服务器的请求的延迟低于 CouchDB。此外,Amazon 不会向您收取 EC2 和 SimpleDB 之间的带宽费用。

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

    【讨论】:

    • 视情况而定,因为 CouchDB 可能也会托管在 EC2 上,它甚至可能比 SimpleDB 更快。
    • 我假设 CouchDB 有自己的主机,就像 SimpleDB 一样。如果不是这种情况,那么您是对的 - 下载 CouchDB 并将其托管在自己的 EC2 中,延迟/收费问题就会消失。
    【解决方案3】:

    SimpleDB 由 Amazon 为您托管和维护,CouchDB 完全由您决定。这是最大的不同。

    【讨论】:

      【解决方案4】:

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

      【讨论】:

        【解决方案5】:

        如果您在 .Net 环境中开发,那么有一个出色的 SimpleDB 库,名为 Simple Savant,它确实简化了集成..

        【讨论】:

          【解决方案6】:

          我已经使用 SimpleDB 构建了一些实时解决方案,它运行良好,尤其是在它前面有一个缓存层(参见 memcached 等)。不过,我最近开始寻找一个新项目,并决定迁移到 CouchDB,主要原因是控制数据。

          随着您对 SimpleDB 的投入越来越大,迁移到其他任何东西变得越来越困难(啊,供应商锁定的乐趣),坦率地说,这对我们的业务来说并不好。

          我仍然是云技术的坚定传播者,尤其是亚马逊,但我感觉在 EC2 上运行 couchdb 比在 SimpleDB 上运行要好得多。

          罗杰

          【讨论】:

            猜你喜欢
            • 2011-06-11
            • 1970-01-01
            • 2012-12-04
            • 2018-09-05
            • 1970-01-01
            • 2011-02-24
            • 2015-10-16
            • 2023-03-06
            • 2013-02-20
            相关资源
            最近更新 更多