【问题标题】:Execute a java program from nifi with parameters使用参数从 nifi 执行 java 程序
【发布时间】:2017-05-16 15:03:49
【问题描述】:

我想从 cassandra 数据库中获取一些术语,然后将它们作为参数发送到 java 程序,该程序将输出一些我需要保存在 cassandra 数据库中的数据。

nifi 是否有可能,如果可以,使用哪些处理器?专门用于执行 java 程序,因为我已经看到 cassandra 的处理器已经存在。

谢谢!

【问题讨论】:

    标签: minify hortonworks-data-platform apache-nifi hortonworks-sandbox


    【解决方案1】:

    Apache NiFi 提供了许多运行自定义 Java 代码的选项:

    • 外部进程 - Apache NiFi 的 ExecuteProcessExecuteStreamCommand 处理器可用于运行任何外部进程并将输出作为流文件内容返回。 ExecuteProcess 不传递输入流,其中 ExecuteStreamCommand 通过标准输入流式传输输入流文件内容。两个处理器都接受使用 NiFi 表达式语言格式化的参数。这些处理器不关心您的进程是否是 Java,它只是作为外部进程运行。这可能是运行代码最快、最简单的方法。
    • 自定义处理器 - 您还可以创建自定义处理器,以更加 NiFi 原生的方式运行您的 Java 代码。这需要一些额外的工作,但如果这是一个问题,它将为大容量提供最佳性能。 NiFi Developer Guide 可以提供帮助。
    • 脚本 - 第三种方法是使用ExecuteScriptInvokeScriptedProcessor 处理器来运行使用您的自定义Java 代码的Groovy 脚本。这是尝试将代码作为自定义 NiFi 处理器运行的好方法,无需编写完整的处理器实现的所有开销。

    【讨论】:

      猜你喜欢
      • 2014-04-21
      • 2013-09-20
      • 2013-12-20
      • 2018-08-14
      • 1970-01-01
      • 2013-08-14
      • 1970-01-01
      • 1970-01-01
      • 2023-03-25
      相关资源
      最近更新 更多