首页 > 代码库 > Apache nifi 第二篇(小白初试) nifi数据对接流程初次尝试

Apache nifi 第二篇(小白初试) nifi数据对接流程初次尝试

 

 一、准备工作

1、官网下载nifi

技术分享

2、上传到linux随便哪里把,因为nifi是用java写的,所以首先要保证你的linux装了jdk

  其次保证系统在装了zookeeper,因为nifi是一个分布式框架,需要zookeeper做协作支持,后面会具体讲讲zookeeper的作用。

3、解压缩 ,unzip nifi-1.3.0-bin.tar.gz

技术分享

4、进入nifi.properties 配置web访问的ip和端口

技术分享

 

5、sh bin/nifi.sh status 查看nifi状态

技术分享

6、启动nifi    sh bin/nifi.sh start

技术分享

很简单把 这样就启动起来了。

7、下面使用我们在nifi.properties 中配置的主机ip和端口号运行web UI界面看看把。

技术分享

 

二、开始玩玩把!

据说玩转nifi的三部曲 就是  拖拽--配置--连接

1、拖拽 从哪里拖拽呢。

技术分享

 

 2、拽下来之后就选择你需要的Processor吧。  啥是Processor呢, 如其名 ,就是一个处理器。

技术分享

选择你需要的Processor ,左边也给你了一些大选项,  相当于模糊查询把,就是select ···from processor·· where  processorName like  ‘%XXX%’    好吧我意淫了。。。。

也可以直接在右上角的输入框输入你需要的处理器,容器会实时过滤。

3、随便选择一个处理器比如Fetchfile,选择完成之后,则处理器上,右键,会有很多选项可供选择。

这里我们开始三部曲的第二部,配置

 

技术分享

 

 

 点开之后 ,有四个选项, 这里我们先选择properties,这个选项也是我们做的最多的地方,其他几个几乎不关心, 当然,他们的作用 我们后面细细道来

技术分享

 

File to fetch属性,我随机选择一个文件/data/zhangshk/nifi/1.txt      1.txt 内容为   hello nifi

 技术分享

 

fetch了一个文件之后,我们把他换一个位置,比如存到另一个地方,这样我们程序就跑通了。  其实我们做数据对接也是这要玩的。

比如把http接口的数据接过来,存入mysql ,或者从http接口接过来的数据存入hbase等等。

再来一个处理器getFile   ,  注意有几个属性, Directory为存放文件的目录,Confilict Resolution Strategy 建议选择ignore ,因为如果文件Directory已经存在了,也不会报错,默认他就是如果已经存在就报错, 这个根据业务需要更改,甭管了,按我图上写。。。 

技术分享

 

 3、好了 现在到了三步曲,第三步  连接 ,这个最简单 , 连连线。

  流程需要一个头,那我们再添加一个处理器,GenerateFlowFile ,这个处理器,主要是用来设置全局的属性,还有控制集群的调度时间,频次。这些以后再说,现在先让他跑起来。这里我们使用timer driven   间隔100000000sec 跑一次 ,千万不要用他默认的0sec  那样相当于间隔0秒跑一次 ,也就是死循环    哈哈。 真贱。。技术分享

 

 

 连线

 技术分享

面板上随便一个地方 右键  start

技术分享

 

 图中 可以看success 成功了,  那么我们去看看文件系统

技术分享

test文件夹出现了,进去看看:

技术分享

生辰了一个文件,文件名是他按照一定的算法生成的不管, 进去看看:

技术分享

ok  成功了,  是不是还听好玩的。  。  。

大家可能会有很多疑惑, 多玩玩  ,多试试 就熟了,  也可以留言给我。

简单的玩玩,感觉挺好的。

之后还会写一些在公司里实际用到的数据对接的企业案例 。当然 在这之前, 可能会讲讲一些比较常用的处理器, 和他的配置。

 

大家有什么问题  可以留言,大家一起学习进步。。

Apache nifi 第二篇(小白初试) nifi数据对接流程初次尝试