美文网首页
Apache NiFi 入门之Demo

Apache NiFi 入门之Demo

作者: 小陈中间件 | 来源:发表于2020-04-05 23:04 被阅读0次

开始之前插入一个题外话,我朋友问了我一个问题,为什么要用Apache NiF?他在什么业务场景下才能使用Apache NiFi?
我开始对于这个问题的回答是结合我自身公司业务情况出发的,我接触Apache NiFi是因为公司有很多系统并且每个系统都有自己的数据工具,希望能有一个数据平台进行统一的管理和监控,并且公司的架构也将Apache NiFi作为数据采集和处理的工具,基于以上我才开始了解和使用Apache NiFi。
但是每家公司不可能业务场景都一样,那么到底要什么样的业务场景才能使用Apache NiFi呢?结合自身的一个了解我总结出:凡是涉及数据To数据的都可以使用上Apache NiFi,小到业务中最常见的调用接口写入数据库,大到用作数据中台,Apache NiFi自身的定位就是数据的万花筒。
好了这个题外话就说到这里,下面正式开始我们这一节的主题Apache NiFi 入门之Demo

假定有这样一个业务场景,通过RestFul接口获取数据并写入文件,下面让我们用Apache NiFi来完成这个业务场景

1.官网下载Apache NiFi

Apache NiFi下载页面
下载地址:Apache NiFi
  • Windows系统下载文件名后缀为:bin.zip的文件。
  • Linux系统下载文件名后缀为:bin.tar.gz的文件

下载完后,Windows系统将文件解压到指定目录即可,Linux系统执行:tar -zxvf nifi-XXX.bin.tar.gz即可解压到当前目录

2.运行Apache NiFi

这里以Windows系统下的Apache NiFi为例子

  • 如图所示,进入解压目录中的bin文件夹。


    bin目录
  • 点击run-nifi.bat进行启动。


    启动
  • 如图所示,启动成功。


    启动窗口
  • 打开浏览器输入:http://localhost:8080/nifi/ ,进入Apache NiFi主界面。

    Web界面

3.使用NiFi进行数据获取并写入文件

  • 数据采集
  1. 如图所示,将processor组件拖拽至面板中。


    使用processor
  2. 搜索HTTP相关操作的处理器,选择InvokeHTTP处理器,它可以用来获取接口数据。
    这里有人肯定会问为什么不使用GetHttp处理器来获取数据,看处理器的名称很容易就知道这是一个Get请求获取数据的处理器,这是因为官方文档已经不建议我们使用这个处理器了,它已经过时了,官方在未来会对这个处理器进行删除,推荐我们使用InvokeHTTP处理器。


    选择InvokeHTTP
  3. 右键点击InvokeHTTP处理器,选择Configura,进行处理器配置。


    配置InvokeHTTP处理器
  4. 点击PROPERTIES,然后选择请求方式为Get,并填写你需要请求的接口地址。


    PROPERTIES配置
  5. 点击SCHEDULING,配置接口请求的时间间隔,我们这里设定一天请求接口一次,也支持CRON语法。


    配置接口请求时间间隔
  1. 勾选如图所示的属性。(InvokeHTTP处理器请求响应结果与勾选的属性结果一致时,就不会将请求的数据路由到下游处理器)


    配置路由规则
  2. 将InvokeHTTP处理器连接拖拽至下游UpdateAttribute处理器,InvokeHTTP处理器会匹配路由规则将采集的数据传输到下游UpdateAttribute处理器中。


    连接图标拖拽至下游UpdateAttribute处理器
  3. 拖拽成功后,选中Response属性。


    配置路由规则
  • 数据处理
  1. 拖拽处理器图标到面板,搜索并使用UpdateAttribute处理器。


    UpdateAttribute处理器
  2. 右键点击UpdateAttribute处理器,配置一个filename属性给下游处理器进行使用。


    配置flowfile属性
    添加filename属性
  3. 配置路由规则,将数据和flowfile属性提供给下游PutFile处理器使用。


    配置路由规则
  • 数据下沉
  1. 拖拽处理器图标到面板,搜索并使用PutFile处理器,顾名思义就是将数据写入文件的处理器。


    PutFile处理器
  2. 同样右击选中并配置PutFile处理器。


    配置PutFile
  3. 点击PROPERTIES,将数据写入指定的目录中。


    配置输出目录
  1. 勾选PutFile所有关系。(表示PutFile处理器不将处理的结果给到下游处理器)


    配置路由规则
  • 选中面板点击start
    启动面板内的所有处理器
  1. 图中我们可以很清晰的看到InvokeHTTP处理器输入和输出一条数据、UpdateAttribute处理器也输入和输出一条数据、PutFile处理器只有输入一条数据,没有输出数据。


    NiFi执行流程中
    最终结果
    文件内容

完成上述步骤就可以入门Apache NiFi了,是不是很神奇?不用写任何代码就能完成数据输出到文件的功能。

相关文章

  • Apache NiFi 入门之Demo

    开始之前插入一个题外话,我朋友问了我一个问题,为什么要用Apache NiF?他在什么业务场景下才能使用Apach...

  • Apache NiFi如何工作?

    什么是Apache NiFi Apache NiFi官网对NiFi的定义如下: An easy to use, p...

  • Apache NiFi 初探

    本文是Apache NiFi 专栏的开篇,用来介绍Apache NiFi 是什么,主要解决什么问题。 在学习一个新...

  • NiFi安装(单机+集群)

    单机版安装 NIFI下载 地址:http://nifi.apache.org/download.html [图片上...

  • apache nifi使用场景

    Apache NiFi具体是做什么的? Apache NiFi适用范围 可靠安全的系统间数据传输 分发数据到分析系...

  • Apache NiFi 安装

    Apache NiFi 是一个易于使用、功能强大而且可靠的数据处理和分发系统。Apache NiFi 是为数据流设...

  • Nifi整理

    Nifi NiFi简介 Apache NiFi项目,它是一种实时数据流处理 系统,在去年由美国安全局(NSA)开源...

  • 【NiFi csv to mysql系列】一 csv to j

    Apache Nifi 文本格式转换 csv->json Abstract:本文的主要目的是展示如何使用nifi ...

  • ##Apache Nifi 开发

    //Apache Nifi 开发 - 共产主义接班人的博客 - 博客频道 - CSDN.NEThttp://blo...

  • Apache NiFi 与Falcon/Oozie异同

    概述 Apache NiFi是一个易用、强大、可靠的数据处理与分发系统。 它支持数据路由,转换等。 NiFi提供w...

网友评论

      本文标题:Apache NiFi 入门之Demo

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