用于大数据商业智能报告的开源数据库?
Posted
技术标签:
【中文标题】用于大数据商业智能报告的开源数据库?【英文标题】:Open Source DB for business intelligence reporting on big data? 【发布时间】:2012-08-21 05:47:41 【问题描述】:我们公司有独特的报告需求。我们每 X 分钟收集一个文件中的大量数据。这些文件的大小可能在 1 到 5MB 之间,包含多达一百万行。数据类似于从不更新且结构化的日志数据。虽然我们需要灵活性来支持数据模型的变化。我们需要提供一些预制(静态)报告以及一些报告作为交互式仪表板的一部分。
对于预制报告,数据只需每天刷新一次。所以我将为此使用 Hive。到一天结束时,文件大小将达到几个 Gbs,届时它将被推送到 Hadoop 中,因此我们不会遇到 hadoop 的小文件问题。由于报告是静态的,因此即使 Hive 需要几秒钟/分钟来返回数据也没关系。
但 Hive 无法满足我们的交互式仪表板需求,因为这些报告需要在几秒钟内加载。这些报告将主要是时间序列报告,时间序列数据将存储长达一年。我想知道哪些其他数据库可用于数据仓库/BI 目的?我们需要一个稳定的开源数据库,它可以很好地处理大数据,允许快速写入和读取,有一个体面的查询语言来实现以最少的编码进行报告。由于我们将使用 Hadoop+Hive 来生成罐头报告,因此如果该数据库可以直接与 Hadoop 一起使用将是理想的。
我查看了 Hbase,但不确定它是否能很好地处理每 X 分钟传入的小文件。 Hbase 是正确的选择吗?也欢迎任何其他 DB 的建议。
我们的报告非常基础,我们希望解决方案非常简单。 附言我们不想使用 mysql。
【问题讨论】:
【参考方案1】:理想情况下,您正在寻找的是 MPP 数据库,例如 Netezza、Greenplum 等。它们都是商业的。换句话说 - 我不知道开源解决方案。最接近的可能是 infobright - 它有 MySQL 的柱状引擎 没有好的分析开源数据库。我的意思是具有下降并行查询能力+集群的数据库。 所以我会建议一些中间解决方案,其中 Hive/Hadoop 正在做大量的聚合(构建多维数据集)并且 RDBMS 用于提供交互式查询。
【讨论】:
谢谢大卫。 Hbase怎么样?文档说它非常适合随机读取。大多数情况下,我们的交互式仪表板将读取原始数据。 我预计仪表板将需要聚合数量。而这里的 HBase 并不是那么好(尽管它会随着协处理器版本的变化而变化)。如果您确定您将始终通过 Key 或 Key 范围访问数据 - 可以考虑 HBase 设计。【参考方案2】:我还建议使用 Greenplum 数据库。它不是开源的,但它有一个单节点版本,可以毫无问题地提供 TB 级数据。它有一个相当好的数据加载引擎和一个查询执行引擎——两者都是并行的。 HP Vertica 还将推出社区版
Greenplum 和 Vertica 都有与 hadoop/hbase/hive 的接口。
如果您只对开源感兴趣,请尝试 MonetDB。它是开源的,但我没有使用它的经验。
【讨论】:
其实greenplum数据库开源了以上是关于用于大数据商业智能报告的开源数据库?的主要内容,如果未能解决你的问题,请参考以下文章