Apache NiFi 教程

2025年3月17日 | 阅读20分钟
Apache NiFi Tutorial

Apache NiFi 教程提供 Apache NiFi 的基础和高级概念。我们的教程主要面向希望学习 Apache NiFi 基础知识和编程概念的初学者和专业人士。本教程包含多个部分,其中一些部分可能不适用于某些读者,因为其中包含一些针对首次使用者的信息。

本教程中提供的指南旨在提供有关如何使用 NiFi 的知识。要使用 NiFi,您应该具备 Java、数据摄取、转换和 ETL 的基础知识。您还应该熟悉正则表达式、Web 服务器和平台配置。

在本教程中,我们将讨论以下主题


什么是 Apache NiFi?

Apache NiFi 是一个开源数据摄取平台。它是一个强大而可靠的系统,用于在不同系统之间处理和分发数据。Apache NiFi 有助于管理和自动化系统之间的数据流。NiFi 最初代表 Niagara Files (NiFi),由 NSA 开发,现在由 Apache 基金会维护以进行进一步更新。它提供基于 Web 的用户界面 (UI),该界面使用 HTTPS 协议在 Web 浏览器上运行 NiFi,从而确保用户与 NiFi 的安全交互。

请注意,Apache NiFi 的最新版本是 1.11.4,于 2020 年 3 月发布。

它是一个基于 Web 的 UI 平台,我们需要为数据收集、数据传输和数据存储分别定义源、处理器和目标。NiFi 中的每个处理器都有一些关系(例如成功、失败、重试或无效数据等),这些关系在将一个处理器连接到另一个处理器时使用。


为什么选择 Apache NiFi?

Apache NiFi 有助于管理和自动化系统之间的数据流。它可以轻松管理源系统和目标系统之间的数据传输。它可以被描述为数据物流。Apache NiFi 帮助像快递服务一样移动和跟踪数据,就像数据移动和跟踪一样。它提供基于 Web 的用户界面 (UI) 来实时管理数据。

正如我们已经讨论过的,Apache NiFi 是开源的,因此它是免费提供的。它支持各种数据格式(例如日志、社交媒体动态和地理位置数据等)和协议(例如 KAFKA、SFTP 和 HDFS 等)。\ 支持广泛的协议使得该平台在 IT 行业中更加流行。

以下是一些关于为什么使用 Apache NiFi 的原因

  • NiFi 允许您将数据从各种源拉取到 NiFi 并创建流文件。
  • 它允许您使用现有的库和 Java 生态系统功能。
  • 它保证数据必须被传递到目的地。
  • NiFi 帮助获取、聚合、拆分、转换、监听、路由和拖放数据流。
  • 它以企业级的方式可视化数据流。
  • NiFi 可以轻松安装在 AWS (Amazon Web Service) 上。
  • 它允许我们单独启动和停止组件,也可以按组级别进行。

NiFi 的历史

NiFi 最初名为 Niagara File,现称为 Apache NiFi。它由国家安全局 (NSA) 开发,现已移交给 Apache 软件基金会。

Apache NiFi Tutorial

Apache NiFi 历史上的变化如下,按年份排列:

年份描述
2006Niagara Files (NiFi) 由 NSA(美国国家安全局)于 2006 年开发,历时八年多。
20142014 年 11 月,NSA 将其作为开源软件发布并捐赠给 Apache 软件基金会 (ASF)。
20152015 年 7 月,它达到了 ASF 顶级项目地位,并成为 Apache 项目套件的正式组成部分。
至今从那时起,Apache 每 6-8 个月发布一次 Apache NiFi 的新更新。

Apache NiFi 的特性

Apache NiFi 支持用于数据路由、系统协调和转换的有向图。NiFi 出现的原因之一是数据挑战。NiFi 具有一系列数据挑战,这些是 NiFi 的特性。因此,NiFi 的各种特性描述如下:

Apache NiFi Tutorial

1. 基于 Web 的 UI -

NiFi 提供基于 Web 的用户界面 (UI),可以通过 HTTPS 运行,从而确保用户与 NiFi 的安全交互。它还实时管理数据。NiFi 提供设计、控制、监控和反馈的体验。

2. 保证交付 -

这是 Apache NiFi 最重要也是非常强大的特性之一,即保证数据交付。这可以通过有效利用持久性写前日志和内容存储库来实现。它们共同设计,支持高事务率、写时复制、有效负载均衡。NiFi 可高度配置。

3. 数据来源或数据血缘 -

NiFi 提供数据来源模块,用于跟踪和监控从开始到结束的数据流。NiFi 会自动记录、索引并提供在对象流经系统时的数据来源数据。此信息对于支持合规性、优化、故障排除以及许多其他场景非常有益。

4. 可扩展 -

此功能允许您创建自己的处理器。它支持快速开发和有效测试。NiFi 支持 SSH、SSL、HTTPS、加密内容等安全协议,并提供多租户授权以及内部策略管理。在 NiFi 中,连接器数量不断增加。

  • 用户可以根据需求构建自定义处理器。
  • NiFi 的此功能支持快速开发和有效测试。

5. 可视化命令和控制 -

数据流可能相当复杂。NiFi 为用户提供了一个交互式用户界面,能够可视化和表达数据流。它允许可视化数据流的形成,并有助于以可视化的方式表达它们以降低数据流的复杂性。NiFi 不仅支持数据流的可视化形成,而且是实时进行的。如果您对数据流进行了任何更改或修改,该更改将立即反映出来。您无需停止整个流即可进行任何特定修改。

6. 安全性 -

Apache NiFi 提供系统到系统、用户到系统以及多租户授权安全功能。NiFi 出于安全原因使用 SSL、SSH 和 HTTPS 等安全协议。它还使用其他加密来保护数据安全。


Apache NiFi 的优点

  • Apache NiFi 支持 SFTP 协议,通过该协议可以从远程计算机获取数据。
  • Apache NiFi 提供基于 Web 的用户界面 (UI)。因此,NiFi 可以使用 localhost 和端口在 Web 浏览器上运行。在 Web 浏览器上,它使用 HTTPS 协议,这使得用户与 NiFi 的交互是安全的。
  • 它还提供用户级别、进程组级别以及其他模块的安全策略。
  • NiFi 支持运行 Java 的所有设备。
  • 用户可以创建自定义插件来支持不同类型的数据系统,尽管 NiFi 已支持约 188 个处理器。
  • 它提供实时控制,简化了数据在源和目标之间的移动。

Apache NiFi 的缺点

  • 在主节点切换的情况下,Apache NiFi 存在状态持久性问题。由于此问题,有时它不允许处理器从源获取数据。
  • 当用户节点断开与 NiFi 集群的连接而进行任何更改时,flow.xml 将变得无效。节点在管理员手动从已连接的节点复制xml文件之前无法重新连接到集群。
  • 并非所有数据都是相似创建的。
  • 它提供 SSL 和主题级别授权,这可能不足够。
  • 要使用 Apache NiFi,您必须具备良好的底层系统知识。

Apache NiFi 架构

Apache NiFi 在 JVM 机器上运行处理器、流控制器和 Web 服务器。此外,它还包含三个存储库,如图所示,它们是 FlowFile 存储库、内容存储库和来源存储库。NiFi 运行在主机操作系统上的 JVM (Java Virtual Machine) 中,所有数据或元数据都存储在存储库中。NiFi 的结构组织良好,如下所示:

Apache NiFi Tutorial

下面将详细讨论 Apache NiFi 架构的关键组件

Web 服务器

Web 服务器托管 NiFi 的基于 HTTP 的命令和控制 API

流控制器

流控制器为执行扩展提供线程。它还在收到资源执行时调度扩展。它充当操作的大脑。

扩展名

扩展是允许 Apache NiFi 与不同系统交互的各种插件。扩展有助于完成任务。NiFi 有几种类型的扩展。这些扩展在Java 虚拟机 (JVM) 中执行和操作。

FlowFile 存储库

FlowFile 存储库包含通过 NiFi 数据流的每个 FlowFile 的当前状态和属性。NiFi 在 FlowFile 存储库中跟踪当前在流中处于活动状态的状态。根目录是此存储库的默认位置,可以更改。可以通过更改属性“nifi.flowfile.repository.directory”来更改此存储库的默认位置。

内容存储库

内容存储库存储所有 FlowFile 中存在的所有数据。内容存储库的实现与 FlowFile 存储库一样是可插拔的。其默认方法是使用文件系统存储数据块的简单机制。

内容存储库的默认目录位于 NiFi 的根目录中,可以通过更改“org.apache.nifi.controller.repository.FileSystemRepository”属性来更改。

来源存储库

来源存储库是存储所有来源事件数据的存储库。事件数据在每个位置都被索引和搜索。它允许用户检查关于 FlowFile 的信息,这意味着它跟踪和存储所有流经 Apache NiFi 的 flowfile 的所有事件。它还在处理 FlowFile 时出现任何问题时进行故障排除。

来源存储库分为两种类型:

  1. 易失性来源存储库 - 此存储库中的所有来源数据在重启后会丢失。
  2. 持久性来源存储库 - 持久性来源的默认目录位于 Apache NiFi 的根目录中。可以使用“apache.nifi.provenance.PersistanceProvenanceRepository”属性来更改。

Apache NiFi 也可以在一个集群中工作。

Apache NiFi Tutorial

从 NiFi 1.0 的第一个版本发布开始,就采用了零主集群模式。在 NiFi 集群中,每个节点处理一组不同的数据,但对数据执行相同的任务。Apache Zookeeper 选择一个节点作为集群协调器,并自动处理故障。集群中的每个节点都会向集群协调器报告心跳和状态。集群协调器负责连接或断开节点。

此外,每个集群都有一个主节点,该节点也由 Zookeeper 选择。您可以通过任何节点的 UI 与 NiFi 集群进行交互,作为数据流管理器或最终用户。用户所做的任何更改都会复制到集群的所有节点,从而允许多个入口点。


Apache NiFi 的关键概念

在讨论 NiFi 架构时,用户必须熟悉 Apache NiFi 的以下关键术语。因此,我们将从高层次讨论基本概念。它们与基于流程的编程 (FBP) 的理念相关。

流程

流程是通过连接两个或多个不同的处理器创建的。它用于将数据从一个数据源传输到另一个目标数据源。如果需要,可以修改此数据。

处理器

处理器是一个 Java 模块,用于从源系统获取数据或将其存储到目标系统中。有许多其他处理器可用于为 FlowFile 添加属性或更改/修改内容。处理器负责发送、接收、创建、拆分、合并、转换、路由和处理 flowfile。

关系

连接在 FBP 术语中称为有界缓冲区。它是连接处理器的处理器之间的链接。它充当一个队列,在需要时保存数据。它允许多个进程以不同的速率进行交互。

进程组

进程组是一组 NiFi 流程。它帮助用户以分层方式管理流程。基本上,它是一组进程及其连接,可以通过输入端口接收数据并通过输出端口发送数据。

FlowFile

FlowFile 是具有关联元信息的原始数据。它表示正在系统中移动的每个对象。当对象从源处理器移动到目标处理器时,NiFi 处理器会更改 FlowFile。基本上,FlowFile 由内容和属性组成。内容是用户数据,属性是附加到用户数据的键值对。

数据来源

它是一个存储库,允许用户检查关于 FlowFile 的信息。它还在处理 FlowFile 时出现任何问题时进行故障排除。


Apache NiFi 的先决条件

在使用 Apache NiFi 之前,您的系统必须完成以下操作:

  1. 在您的系统上下载 Java。
  2. 设置 Java 环境变量。

除了这些要求之外,您还应该具备 Java、数据摄取、转换和 ETL 的基础知识才能使用 Apache NiFi。

用户还应该熟悉正则表达式、Web 服务器和平台配置。

请注意,NiFi 与 Java 版本 8 或 11 兼容性更好。因此,我们建议您下载所需版本的 Java。


安装 Java 并设置环境变量

  • 点击此链接 https://www.java.com/en/download/ 下载 Java。
  • 同意条款和条件。
  • 双击下载的 exe 文件运行它。
  • 要完成安装过程,请继续使用所有默认选项并完成安装过程。安装需要一些时间。

接下来是设置 Java 环境变量 -

  • 右键单击桌面上的计算机(我的电脑)图标,然后选择属性,即我的电脑 -> 属性
  • 导航到高级系统设置 -> 环境变量 -> 系统变量
  • 在“系统变量”部分,单击新建以创建新的系统变量。
  • 在此输入变量名和变量值以设置 Java 的永久路径。
  • 提供变量名,例如 JAVA_HOME 或您想要的任何其他名称。
  • 对于变量值,转到安装 Java 的目录,复制 JRE 文件夹的路径,然后将其粘贴到“变量值”字段中。
    • 变量名: JAVA_HOME
    • 变量值: C:\Program Files (x86)\Java\jre1.8.0_251
Apache NiFi Tutorial
  • 单击确定 -> 确定 -> 确定并关闭所有标签页。

现在,验证 Java 是否已安装并且环境变量已成功设置。

  • 打开命令提示符,输入命令javac,然后按 Enter 键。如果输出与下面的屏幕截图相同,则表示 Java 已成功安装。
Apache NiFi Tutorial

现在您可以下载并在您的系统上安装 Apache NiFi。

在 Windows 上安装 Apache NiFi

在本教程中,我们将在 Windows 操作系统上安装 Apache NiFi 的设置。有关 Apache NiFi 的分步安装,请遵循以下步骤:

第 1 步:单击以下链接 http://nifi.apache.org/download.html 并下载 Apache NiFi 的最新版本。

  • 下载适用于 Windows 操作系统的 Apache NiFi 的zip文件,而
  • 对于 Linux 操作系统,下载tarball (tar.gz)
  • Mac 用户也可以下载 Mac OS 的tarball文件,或者可以通过在命令行运行brew install nifi命令来安装。

第 2 步:在“二进制文件”部分,单击适用于 Windows 操作系统的 NiFi 设置的 zip 文件,如下图所示。

Apache NiFi Tutorial

第 3 步:上面的链接会将您重定向到一个新页面。在此,单击下图所示的第一个链接。我们下载的是 NiFi 的最新版本,即 1.11.4。

Apache NiFi Tutorial

第 4 步:下载完成后,解压下载的 Apache NiFi zip 设置。要解压zip文件,请右键单击下载的文件并选择全部提取

Apache NiFi Tutorial

第 5 步:zip 文件将开始解压。

Apache NiFi Tutorial

注意:请记住,您的系统上必须安装 Java,并且必须设置环境变量。因此,请先确保 Java 已安装。如果未安装,请安装并设置 Java 环境变量。

第 6 步:现在,转到提取文件夹中的 bin 文件夹,即nifi-1.11.4/bin。单击run-nifi窗口批处理文件并运行它以启动 NiFi。

Apache NiFi Tutorial

第 7 步:run-nifi.bat将运行命令提示符,其外观如下截图所示。

在 Web 浏览器上运行 NiFi 之前,必须执行此批处理文件。

Apache NiFi Tutorial

NiFi 已启动。现在您可以通过任何 Web 浏览器(例如 ChromeInternet Explorer 等)打开它。因此,我们需要一个端口号才能在 Web 浏览器上运行 NiFi UI。

第 8 步:因此,转到包含 NiFi 所有配置文件的 conf 文件夹(nifi-1.11.4/conf)并在记事本中打开nifi.properties文件。向下滚动并检查 NiFi 的端口号

Apache NiFi Tutorial

Apache NiFi 的默认端口是8080。如果默认端口号已被任何其他软件程序占用,请更改端口号(例如 9090)并保存文件。

Apache NiFi Tutorial

第 9 步:现在,打开 Web 浏览器并在浏览器标签页中输入https://:8080。在这里,我们使用了默认端口 8080 来运行 NiFi,因为我们的系统上端口 8080 是空闲的。

第 10 步:成功安装后,NiFi 的仪表板将在浏览器上启动。Apache NiFi 的仪表板屏幕称为画布,我们在其中放置组件以创建数据流。

Apache NiFi Tutorial

在 Web 浏览器上运行 Apache NiFi 时出现的问题

通过遵循上述安装步骤,NiFi 将在 Web 浏览器上成功运行。如果不成功,则可能是由于以下原因:

  • 您的系统上未安装 Java。
  • 未设置 Java 环境变量。
  • 端口未打开,或者
  • 您未运行bin文件夹内的run-nifi文件。

解决上述问题后,请重试运行 NiFi。

更改端口号

如果 NiFi 在 Web 浏览器上显示“无法访问此网站”错误,则可能是端口未打开。因此,请按照以下步骤更改端口号:

第 1 步:转到提取的 zip 文件夹内的conf文件夹,即nifi-1.11.4/bin。它包含 NiFi 的所有配置文件。

Apache NiFi Tutorial

第 2 步:使用记事本或其他文本编辑器打开nifi.properties文件,更改端口号并保存文件。

nifi.web.http.port=9090

Apache NiFi Tutorial

重试并使用新端口号在 Web 浏览器上运行 Apache NiFi。


Apache NiFi 用户界面

一旦 NiFi 成功启动,UI 将引导您创建和监控数据流。NiFi UI 提供了一个交互式界面,用户可以通过 Web 浏览器访问。用户可以在 NiFi 中拖放组件。它提供了有关 NiFi 的各种信息,例如:

  • 活动线程
  • 运行中的组件
  • 已停止的组件
  • 已禁用的组件
  • 无效的组件
  • 总排队数据
  • 过期的版本化进程组
  • 最新的版本化进程组
  • 同步失败的版本化进程组
  • 本地修改的版本化进程组
  • 过期的和本地修改的版本化进程组
  • 正在传输的远程进程组
  • 未传输的远程进程组

下图是 Apache NiFi 的用户界面

Apache NiFi Tutorial

Apache NiFi 的组件

Apache NiFi 有以下组件,它们列在工具栏的组件部分下:

Apache NiFi Tutorial

处理器

处理器是用于创建数据流的基本块。Apache NiFi 有几个处理器,每个处理器都有不同的功能。用户可以将处理器图标拖放到画布上以添加处理器,然后选择所需的处理器来创建数据流。

Apache NiFi Tutorial

将进程图标拖到画布上,将打开一个添加处理器窗口,您可以在其中浏览处理器列表。

Apache NiFi Tutorial

要了解更多关于处理器信息,请右键单击它并转到用法。这将打开处理器的文档。它提供了关于处理器功能、需要配置的属性以及处理器关系的信息。

输入端口

输入端口用于从不在该进程组中的处理器获取数据。可以通过单击下方提供的图标将输入端口拖到画布上。

要将输入端口添加到任何数据流,请将图标拖到画布上。

Apache NiFi Tutorial

将图标拖到画布上后,NiFi 会提示您为输入端口输入名称。提供输入端口的名称,然后单击“添加”按钮。

Apache NiFi Tutorial

输出端口

输出端口用于将数据传输到不在该进程组中的处理器。可以通过单击下方提供的图标将输出端口拖到画布上。

要将输出端口添加到任何数据流,请将图标拖到画布上。

Apache NiFi Tutorial

将此图标拖到画布上后,NiFi 会弹出一个屏幕,用于输入输出端口的名称。提供输出端口的名称,然后单击“添加”按钮。

Apache NiFi Tutorial

进程组

以下图标用于将进程组添加到 NiFi 画布。

Apache NiFi Tutorial

将此图标拖到画布后,NiFi 会弹出一个屏幕,您可以在其中输入进程组的名称,然后通过单击“添加”按钮将其添加到 NiFi 画布。

Apache NiFi Tutorial

远程进程组

以下图标用于将进程组添加到 NiFi 画布。

Apache NiFi Tutorial

模板

模板用于在相同或不同的 NiFi 实例中重用数据流。下方提供的图标用于将模板添加到 NiFi 画布。

Apache NiFi Tutorial

拖动模板图标后,用户可以选择已添加到 NiFi 的模板。

漏斗

漏斗有助于将一个处理器的输出传输到其他几个处理器。借助下方图标,用户可以将漏斗添加到数据流。

Apache NiFi Tutorial

标签

标签用于添加关于 NiFi 中存在的任何组件的文本。它还提供了各种颜色选项。开发人员可以更改标签颜色以及文本大小。他们可以使用这些颜色来增加美感。

Apache NiFi Tutorial

在 NiFi UI 的顶部菜单中,最左边的第一个图标用于在 NiFi 画布中添加标签。


如何构建数据流?

在此示例中,我们将构建一个简单的双处理器流。首先,我们将在画布窗口中添加两个处理器并配置它们。配置完两个处理器后,我们将连接并运行它们。

添加和配置处理器

第 1 步:要将处理器添加到画布,请转到工具栏中的组件部分,然后拖动一个处理器组件。这将打开一个“添加处理器”窗口,您可以在其中浏览处理器列表。

第 2 步:查找所需的处理器或单击“标签云”下的标签,按类别和功能减少处理器列表,以便找到您正在寻找的处理器。

Apache NiFi Tutorial

第 3 步:单击要选择的处理器,然后单击添加按钮将其添加到画布。同样,再次拖动处理器图标,输入您想要的处理器名称,然后双击将其添加到画布。

Apache NiFi Tutorial

第 4 步:如果您知道想要的处理器名称,可以直接在此处的过滤器栏中键入处理器名称。然后,双击处理器将其添加到画布。

使用以上步骤,在画布上添加两个处理器。

Apache NiFi Tutorial

第 5 步:但是您会看到两个处理器都无效,因为它们在处理器基的左上角有一个警告符号。

将鼠标悬停在警告图标上,它将显示使处理器有效并能够运行所需的最低配置要求。

Apache NiFi Tutorial

注意:要了解更多关于处理器信息,请右键单击它并选择“用法”选项。它将显示处理器的文档。

第 6 步:要配置处理器,只需右键单击相应的处理器并转到“配置”。

Apache NiFi Tutorial

将弹出一个带有默认值的“配置处理器”窗口。这将打开一个新窗口,包含四个选项卡:设置调度属性注释

Apache NiFi Tutorial

配置 GenerateFlowFile 处理器

设置

转到“设置”选项卡,并在“名称”字段中更改处理器的名称,因为默认情况下其名称是处理器类型。每个处理器都有一个唯一的 ID 号,这是不可配置的。

Apache NiFi Tutorial

此处理器只有成功关系。因此,请保持“自动终止关系”未选中状态,因为我们希望继续进行流程中的下一个处理器。

调度

调度选项卡定义了如何运行、多久运行一次以及运行多长时间。

将“运行调度”设置为 1 秒,因为此处理器可以非常快速地生成测试文件。暂时将所有其他字段保留为默认值。

Apache NiFi Tutorial

性质

属性选项卡是主要选项卡,您在此配置处理器正常运行所需的信息,其中未加粗的属性是可选的。

双击文件大小行以更改文件大小。

Apache NiFi Tutorial

在此将文件大小从 0B 更改为 1KB,然后单击确定按钮。

Apache NiFi Tutorial

评论

在注释选项卡中,键入任何注释,例如为什么配置了处理器或配置方式。

第 7 步:现在,单击应用按钮以保存所有已做的更改并完成 GenerateFlowFile 处理器的配置。

Apache NiFi Tutorial

配置 LogAttribute 处理器

与 GenerateFlowFile 处理器类似,右键单击它并转到配置,我们将在此更改一些在 FlowFile 处理器中未更改的内容。在这里,您还会看到一个新窗口,包含四个选项卡:设置、调度、属性和注释。

第 8 步:转到设置选项卡,并将“通知级别”下拉列表从WARN更改为INFO

Apache NiFi Tutorial

第 9 步:选中窗口右侧“自动终止关系”下的成功复选框。

Apache NiFi Tutorial

第 10 步:将所有选项卡的其他部分保留为默认设置,然后单击应用按钮以完成GenerateFlowFile处理器的配置。

完成以上步骤后,您会看到两个处理器仍然无效。这是因为我们尚未连接它们。因此,我们现在将连接两个处理器并运行它们。

连接并运行处理器

第 1 步:要将处理器相互连接,请将鼠标悬停在处理器中心,会出现一个圆圈中的箭头。将鼠标从该圆圈拖到另一个处理器,直到它突出显示为绿色。

Apache NiFi Tutorial

第 2 步:在此处释放鼠标。将打开一个“创建连接”窗口,其中包含“详细信息”和“设置”选项卡。暂时将当前设置保留为默认值,然后单击添加按钮。

Apache NiFi Tutorial

详细信息选项卡显示连接的来源和目的地。它还显示将包含在连接中的关系列表。

第 3 步:现在,您可以看到两个处理器都已验证,因为它们在左上角有一个停止符号而不是警告符号。

Apache NiFi Tutorial

第 4 步:要运行两个处理器,请按住Shift键选择两个处理器,然后单击“操作”部分下的开始按钮。

Apache NiFi Tutorial

第 5 步:这里,处理器在成功连接后已开始运行。您可以看到任何处理器都尚未发送或接收信息。

Apache NiFi Tutorial

第 6 步:单击画布上的任意位置,然后选择刷新,以查看处理器实际正在执行的操作信息。

Apache NiFi Tutorial

第 7 步:您可以看到 Log Attribute 正在生成通知。我已将其配置为在信息级别生成通知。此信息代表过去五分钟内在处理器中发生的情况。

Apache NiFi Tutorial

第 8 步:在这里,您可以看到 274KB 数据从 GenerateFlowFile 处理器流出,273KB 数据被 LogAttribute 处理器接收,其中 1KB 数据已排队。GenerateFlowFile 处理器正在发送信息,该信息由 LogAttribute 处理器接收。

Apache NiFi Tutorial

让我们比较一下这两个处理器,请注意,没有数据进入 GenerateFlowFile 处理器,因为它没有传入连接。因此,它自己生成数据。

第 9 步:现在,让我们将 LogAttribute 处理器停止几秒钟,方法是选择处理器并单击停止。如果我们刷新状态,您会看到数据已排队在为其供电的连接中,正如我们之前所做的。

Apache NiFi Tutorial

第 10 步:现在右键单击 Log Attribute 处理器并选择开始以重新启动处理器,以便清空队列数据。

Apache NiFi Tutorial

现在,它将正常运行。