美文网首页
Apache NiFi 与Falcon/Oozie异同

Apache NiFi 与Falcon/Oozie异同

作者: HelloWide | 来源:发表于2019-04-10 20:03 被阅读0次

    概述

    Apache NiFi是一个易用、强大、可靠的数据处理与分发系统。 它支持数据路由,转换等。 NiFi提供web界面,用于设计,控制,反馈和监视数据流。既然是数据流,那与我们之前常用的Falcon/Oozie有什么区别呢?

    Falcon/Oozie Vs NiFi异同:

    同:

    1. 都可以与外部RDBMS数据源进行连接获取数据(Falcon/Oozie 使用Sqoop)
    2. 都可以将数据存储在HDFS中
    3. 都能够运行Hive查询,因此任何使用Hive的ETL流都只能使用这两种工具之一来构建

    异:

    1. NiFi的核心优势是控制从边缘设备到Hadoop集群的数据流,在IoT场景下,NiFi将继续作为从边缘设备导入数据的关键组件。
    2. NiFi可以在没有Hadoop集群的情况下运行,而且总是(从逻辑上讲)在Hadoop集群之外运行。这使得NiFi能够更接近边缘设备,这使得它在涉及远程和地理分布式传感器和遥测设备的用例中非常有用
    3. Falcon/Oozie允许在Hadoop集群上执行其他类型的进程(作为数据工作流的一部分),比如在Hadoop集群上执行shell命令来启动Java或Scala作业、pig脚本和将这些进程绑定到具有Hive处理的相同工作流中。在这种情况下,集群中的数据处理和享受数据本地化的好处而NiFi只能get/put数据的处理将导致数据离开集群,然后处理后必须放回(所以对数据流来说是更合适的)。
    4. 使用Hadoop集群的基础设施并行化ingest进程。例如,为了从NiFi中的现有Oracle数据库获取数据,我们必须创建从NiFi服务器到Oracle的JDBC连接,然后还必须建立到Hadoop集群(Hive或HDFS)的连接来存储数据。在这两种情况下,NiFi服务器都处于数据移动的路径中,对于标准调度的典型ETL流可能不是理想的选择。在使用Sqoop时,数据摄取是在幕后借助MapReduce并行化的
    5. Falcon可用于为HDFS中的数据集定义复制和保留策略。
    6. Falcon/Oozie具有失败重试机制,可用于重新运行失败的作业实例。

    总结:

    a. NiFi不适合于在Hadoop中构建数据工作流/ETL的合适工具,Falcon/Oozie更合适。
    b. NiFi用于简单的事件处理,同时将数据导入Hadoop集群&在一个真正的遥测/传感器/物联网场景中,正是网络边缘附近的智能可以帮助管理两个方向的数据流


    参考文章:
    网页分享:https://blog.csdn.net/memoordit/article/details/78804444
    官方网址:http://nifi.apache.org/
    异同分析:https://www.linkedin.com/pulse/nifi-vs-falcon-oozie-birender-saini

    相关文章

      网友评论

          本文标题:Apache NiFi 与Falcon/Oozie异同

          本文链接:https://www.haomeiwen.com/subject/gjaoiqtx.html