BigData/Hadoop 项目的典型流程?

Posted

技术标签:

【中文标题】BigData/Hadoop 项目的典型流程?【英文标题】:Typical flow of BigData/Hadoop project? 【发布时间】:2014-06-18 12:20:25 【问题描述】:

我最近开始学习 SQOOP、Hive、Pig 等大数据技术,发现有多种替代方案(如 SQOOP、HiveQL 等)可用于解决给定问题。我对技术/工具的选择有点困惑。

如果您大部分时间采用任何典型的 Microsoft BI 项目,流程将是

SSIS(处理原始数据)-> SSAS(创建 OLAP DB)-> s-s-rS(生成报告)。

与此类似,BigData/Hadoop 项目的典型流程是什么。假设我的数据源是电子邮件日志。

【问题讨论】:

【参考方案1】:

这实际上取决于您的要求和技能。在我看来,您可以通过多种方式处理电子邮件日志。

选项

    (近乎实时)使用 Flume 从源流式传输电子邮件日志 ---> 将日志存储在 Flume sink 中的 HDFS 中 ---> 使用 Pig 或 Hive 分析日志。 (实时)使用 Storm spouts 流式传输电子邮件日志 ---> 在 Storm bolts 中处理日志 ---> 最终将它们存储在 nosql 数据库中以供进一步报告和分析。

还有很多其他方法可以做到这一点。根据适合您要求的可用技能组合,您可以决定。

【讨论】:

嗨 Srinivasan,感谢您宝贵的 cmets。假设我不需要实时处理数据。我只需要通宵工作,而且我只知道 Pig、Hive 和 Sqoop。那么我可以遵循以下流程吗? --Pig 收集数据并对其进行处理并将其存储在 Hive 中。然后 Sqoop 将数据放入一些 RDBMS 中用于报告目的 是的,您可以很好地按照您的方法处理 pig 中的日志文件并创建中间输出。---> 使用这些中间输出文件到 Hive 外部表 ---> 使用 sqoop 导出到你的关系型数据库。

以上是关于BigData/Hadoop 项目的典型流程?的主要内容,如果未能解决你的问题,请参考以下文章

如何开始探索 BigData、Hadoop 及其生态系统组件?

BigData--hadoop集群搭建之zookeer安装

bigdata hadoop java codefor wordcount 修改

BI产品选型的流程及主流产品

图文并茂:5分钟了解Hadoop

典型的 AngularJS 工作流程和项目结构(使用 Python Flask)