2

我正在考虑用于数据仓库和商业智能的各种技术,并且遇到了这个名为 Hadoop 的激进工具。Hadoop 似乎并不是完全为 BI 目的而构建的,但有一些参考资料表明它在该领域具有潜力。( http://www.infoworld.com/d/data-explosion/hadoop-pitched-business-intelligence-488)。

不管我从互联网上获得的信息多么少,我的直觉告诉我,hadoop 可以成为传统 BI 解决方案领域的颠覆性技术。关于这个主题的信息确实很少,因此我想在这里收集 Guru 关于 Hadoop 作为 BI 工具的潜力的所有想法,与Oracle Exadata、vertica 等传统后端 BI 基础设施相比。对于初学者,我想问以下问题 -

  • 设计注意事项- 使用 Hadoop 设计 BI 解决方案与传统工具有何不同?我知道它应该有所不同,因为我读到无法在 Hadoop 中创建模式。我还读到一个主要优势将是完全消除 Hadoop 的 ETL 工具(这是真的吗?)我们是否需要 Hadoop + pig + mahout 来获得 BI 解决方案?

感谢和问候!

编辑 - 分解成多个问题。将从我认为最重要的那个开始。

4

4 回答 4

2

Hadoop 非常适合存储可以表示事实表的巨大文件。这些表可以通过将代表表的单个文件放置到单独的目录中来进行分区。Hive 理解这样的文件结构并允许像分区表一样查询它们。您可以通过 Hive 以 SQL 查询的形式将您的 BI 问题表述为 Hadoop 数据,但您仍然需要偶尔编写和运行 MapReduce 作业。

于 2011-06-20T14:06:10.073 回答
2

Hadoop 是成为 BI 解决方案一部分的绝佳工具。它本身并不是一个 BI 解决方案。Hadoop 所做的是接收 Data_A 并输出 Data_B。无论 Bi 需要什么但不是有用的形式,都可以使用 MapReduce 处理并输出有用的数据形式。无论是 CSV、HIVE、HBase、MSSQL 还是用于查看数据的任何其他工具。

我相信 Hadoop 应该是 ETL 工具。这就是我们使用它的目的。我们每小时处理一次日志文件并将其存储在 Hive 中,并进行每日聚合,这些聚合将加载到 MSSQL 服务器中并通过可视化层进行查看。

我遇到的主要设计考虑因素是:
-数据灵活性:您是否希望您的用户查看预先聚合的数据,或者可以灵活地调整查询并以他们想要的方式查看数据
-速度:您想要多长时间你的用户在等待数据吗?Hive(例如)很慢。即使在相当小的数据集上,也需要几分钟才能生成结果。遍历的数据越大,生成结果所需的时间就越长。
-可视化:您想使用哪种类型的可视化?你想定制很多部件还是能够使用现成的东西?您的可视化需要哪些限制和灵活性?可视化需要多灵活多变?

hth

更新:作为对@Bhat 关于缺乏可视化的评论的回应......
缺乏可以让我们有效利用存储在 HBase 中的数据的可视化工具是重新评估我们的解决方案的主要因素。我们将原始数据存储在 Hive 中,并将数据预先聚合并存储在 HBase 中。为了利用这一点,我们将不得不编写一个自定义连接器(完成这部分)和可视化层。我们研究了我们能够生产的产品和商业上可用的产品,然后走上了商业路线。
我们仍然使用 Hadoop 作为我们的 ETL 工具来处理我们的博客,这太棒了。我们只是将 ETL 的原始数据发送到商业大数据数据库,它将在我们的设计中取代 Hive 和 HBase。

Hadoop 无法与 MSSQL 或其他数据仓库存储进行比较。Hadoop 不做任何存储(忽略 HDFS),它只处理数据。运行 MapReduces(Hive 所做的)将比 MSSQL(或类似)慢。

于 2011-06-20T17:31:55.980 回答
0

从业务角度来看,如果您有大量低价值数据,您应该考虑使用 Hadoop。在很多情况下,RDBMS / MPP 解决方案并不具有成本效益。如果您的数据不是结构化的(例如 HTML),您还应该将 Hadoop 视为一个重要的选择。

于 2011-06-22T12:38:51.680 回答
0

我们正在为大数据/Hadoop 的 BI 工具创建一个比较矩阵 http://hadoopilluminated.com/hadoop_book/BI_Tools_For_Hadoop.html

它正在进行中,并且会喜欢任何输入。

(免责声明:我是这本书的作者)

于 2013-10-29T07:08:24.943 回答