2

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

  • 我应该使用 MySQL 吗?

  • 使用 IBM DB2 purexml 存储文档是否值得?如果我选择 DB2,也不需要 Ruby 搜索实现(Ferret、Ultasphinx 等)。那是对的吗?

  • PostreSQL在这方面有什么优势?

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

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

4

5 回答 5

3

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

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

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

于 2008-11-19T15:14:16.700 回答
3

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

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

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

于 2008-11-22T21:45:06.160 回答
1

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

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

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

于 2008-11-20T21:47:43.003 回答
0

在我看来,您将构建的应用程序很容易成为大型 Web 应用程序。我建议使用 PostgreSQL,因为它以可靠性着称。

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

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

于 2008-12-10T15:51:19.283 回答
0

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

In the dev and test environments I'd start out with SQLite (default), and perhaps migrate to your target DB in the test environment as you move closer to completion.

于 2008-12-10T15:55:26.217 回答