【问题标题】:Which is the Best database for Rails application?哪个是 Rails 应用程序的最佳数据库?
【发布时间】:2010-09-23 01:29:23
【问题描述】:

我正在开发一个 Rails 应用程序,该应用程序将访问大量 RSS 提要或抓取网站以获取数据(主要是新闻)。它将类似于 Google 新闻,但采用不同的方法,因此我将存储大量新闻(或新闻摘要),将它们分类为不同的类别,并使用排名和推荐技术。

  • 我应该使用 MySQL 吗?

  • 是否值得使用 IBM DB2 purexml 来存储文件? 还有 Ruby 搜索实现 (雪貂、Ultrasphinx 等)是 不需要 如果我选择 DB2。对吗?

  • 有什么优点 PostreSQL 在这?

  • 在中使用 Couch DB 有意义吗? 这种情况?

我想选择最佳选项,但不会使解决方案过于复杂。所以我放弃了使用两种不同存储解决方案的想法(一种用于新闻文档,另一种用于其余数据)。我也只考虑“免费”选项,所以我没有看 Oracle 或 MS SQL Server。

【问题讨论】:

    标签: mysql ruby-on-rails database postgresql db2


    【解决方案1】:

    purexml 比 SQL 更重,因此您需要为 webserver 和 DB 之间的往返支付更多费用。如果你打算有很多用户,我会避免它,你最好让你的网络服务器缓存请求,从而避免每次都创建 xml(rss),如果你正在考虑的话。

    我会选择 MySQL,因为它非常擅长服务,而且完全免费,PostgreSQL 也是,但没有使用过,所以我不能说。

    CouchDB 可能有意义,但如果您打算对数据进行 OLAP(离线分析),那么普通的 RDBMS 会更好。

    【讨论】:

    • 上次查了一下,OLAP是Online Analytical Processing的缩写
    • 我肯定弄错了首字母缩写词,但这实际上意味着您离线分析数据(如在仓库中,而不是实时服务器中),这就是我的意思,而不是 O.L.A.P.==离线分析。但这就是评论和解释首字母缩写词
    • 但这并不意味着您必须离线分析数据。事实上,有许多应用程序同时执行 OLTP 和 OLAP 功能,因此需要针对这两种用途优化的数据库或至少同一数据库中的表。
    【解决方案2】:

    首先承认我一般不喜欢mysql,我会说关于postgres的这个话题已经写过:

    http://oldmoe.blogspot.com/2008/08/101-reasons-why-postgresql-is-better.html

    当我需要一个纯关系数据库时,这始终是我的选择。如果不了解更多信息,我不知道文档数据库是否更适合您的应用程序。听起来您至少应该对此进行调查。

    【讨论】:

      【解决方案3】:

      MySQL 可能是目前最好的选择之一;轻巧,易于安装和维护,多平台且免费。除此之外,还有一些不错的免费客户端工具。

      需要考虑的事情;由于您系统的性质,您可能会拥有一些增长非常快的表,因此您可能需要考虑性能。

      因此,MySQL 支持垂直分区,但仅从 V 5.1 开始。

      【讨论】:

        【解决方案4】:

        在我看来,您将构建的应用程序很容易成为大型网络应用程序。我会推荐 PostgreSQL,因为它以可靠性着称。

        您可以查看以下链接——来自 MochiMedia 的 Bob Ippolito 告诉我们他们为什么放弃 MySQL 转而使用 PostgreSQL。尽管这些帖子已有 3 年多的历史,但 MySQL 5.1 最近的问题往往证明它们仍然具有相关性。

        http://bob.pythonmac.org/archives/category/sql/mysql/

        【讨论】:

          【解决方案5】:

          MySQL 在生产方面表现出色。我没有将 PostgreSQL 用于 Rails,但它也是一个很好的解决方案。

          在开发和测试环境中,我会从 SQLite(默认)开始,当您接近完成时,可能会迁移到测试环境中的目标数据库。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2010-10-12
            • 2021-06-06
            • 1970-01-01
            • 1970-01-01
            • 2011-01-09
            相关资源
            最近更新 更多