4

我正在为我们的网站(一个规模不错的网站,每天获得数百万次浏览量)构建一些报告内容,并且想知道那里是否有任何好的免费/开源数据仓库系统。

具体来说,我只寻找存储数据的东西——我计划为它构建一个自定义前端/UI,以便它显示我们关心的信息。但是,我不想为此构建一个定制的数据库,虽然我很确定 SQL 数据库不会在这里工作,但我不确定到底要使用什么。任何指向有用文章的指针也将不胜感激。

编辑:我应该提一下——我简要介绍过的一个数据库是 MongoDB。似乎它可能有效,但他们的“用例”特别提到数据仓库为“不太适合”:http ://www.mongodb.org/display/DOCS/Use+Cases 。此外,它似乎并没有专门针对数据仓库。

4

7 回答 7

5

http://www.hypertable.org/ 可能是您正在寻找的东西(我将按照您上面的描述进行)存储大量记录数据并进行标准化的东西。即访客日志。

Hypertable 基于 google 的 bigTable 项目。 有关基准,请参阅http://code.google.com/p/hypertable/wiki/PerformanceTestAOLQueryLog

你失去了基于 SQL 的 dbs 的关系能力,但你在性能上获得了很多。您可以轻松地使用 hypertable 每小时存储数百万行(硬盘空间承受能力)。

希望有帮助

于 2009-10-27T23:07:18.873 回答
3

我可能没有正确理解这个问题——但是,如果你有时间(重新)访问 Kimball 的“数据仓库工具包”,你会发现一个基本的 DW 所需要的只是一个普通的 SQL 数据库,在其他换句话说,您可以使用 MyISAM 作为存储引擎,使用 MySQL 构建一个像样的 DW。问题仅在于所需的信息粒度——您想要保留什么以及保留多长时间。如果您的报告大多是定期的,并且您实现了报告存储或缓存,那么您不需要存储预先计算的聚合(不需要多维数据集)。换句话说,具有缓存报告的 Kimball Star 在许多情况下都可以提供不错的性能。您还可以查看“Pentaho BI Suite”(开源)的社区版以快速入门 ETL,分析和报告——并在深入定制开发之前进行一些实验以评估性能。尽管这可能不是您所期望的,但可能值得考虑。

于 2009-10-26T19:02:04.023 回答
3

五角大楼蒙德里安

  • 开源
  • 使用标准关系数据库
  • MDX(想想数据透视表)
  • ETL(通过水壶)

我用这个。

于 2009-10-31T11:07:28.233 回答
2

除了 Mike 对 hypertable 的回答,您可能还想看看 Apache 的 Hadoop 项目:

http://hadoop.apache.org/

它们提供了许多可能对您的应用程序有用的工具,包括 HBase,BigTable 概念的另一种实现。我想对于报告,您可能会发现他们的 mapreduce 实现也很有用。

于 2009-10-28T23:16:07.117 回答
2

这完全取决于数据以及您计划如何访问它。MonetDB是来自数据库技术最具革命性团队的面向列的数据库引擎。他们刚刚获得了 VLDB 的 10 年最佳论文奖。该数据库是开源的,网上有很多评论称赞它们。

也许您应该看看TPC,看看他们的哪些测试问题数据集最适合您的案例并从那里开始工作。

还要考虑并发性的需求,它为任何类型的方法增加了很大的开销,有时并不是真正需要的。例如,您可以预先消化一些摘要或索引数据,并且只对高并发进行保护。分析您的数据查询是以下步骤。

关于 SQL,我也不喜欢它,但我认为仅仅因为前端语言而排除引擎并不明智。

于 2009-11-01T06:45:47.467 回答
0

我看到了类似的问题,并考虑使用带有http://www.jitterbit.com/的普通 MyISAM作为数据访问层。Jitterbit(或其他免费工具)似乎非常适合这种转换。

希望这个对你有帮助。

于 2009-10-30T23:34:13.560 回答
0

很多人只使用 Mysql 或 Postgres :)

于 2012-07-04T13:38:32.843 回答