3

我正在评估一个大数据项目,我们需要从各种互联网资源(ftp、api 等)中提取大量大数据集,进行轻度转换和轻度数据质量/完整性检查(例如:行和列检查),并将其推向下游。即时关注是批量的,但预计会支持流式传输。易于大规模支持是一项重要要求。

我们正在研究 Apache Nifi 和 Gobblin,它们的意图似乎重叠。什么样的用例最适合哪个平台?它们将如何符合上述用例?

谢谢!

4

1 回答 1

4

我的经验是使用 NiFi,我刚刚看过 Gobblin,但主要的是,NiFi 本身就是一个应用程序,而 Gobblin 是一个框架。

在 NiFi 中,您将拥有一个 GUI,具有非常精细的授权,允许多个用户干预流程的不同部分,对其进行监控等......另一件事是 NiFi 是“始终在线”和“始终在线”在生产中,您可能能够直接在目标上进行修改,因此,有一些保护措施可以避免丢失数据(我的意思是错误的)。

所以,我认为这两种解决方案或多或少可以做同样的事情,如果你有一个工作流程,你想不时部署一次,Gobblin 可能更适合,但如果你想要一些你给一些用户权限的东西直接在生产中干预部分流程,NiFi 将是最好的。

最后,保持问题面向编程:

  • NiFi 允许您以图形方式编程,为您的“开发人员”提供非常精细的权限,并在运行时更新“程序”(NiFi 流程)
  • Gobblin 似乎(从我所查到的一点点)通过使用文本文件定义作业来工作,这似乎更像是一个“经典”的开发工作流程,但这可能更适合您的使用。
于 2018-04-05T12:43:01.850 回答