在apache nifi中使用PutMongoRecord将csv文件格式的表存入mongDB(适合新手)

一、实验环境

本实验采用的Apache nifi 版本为1.9.1,mongDB版本为4.0 数据库管理客户端为 studio 3T

二、实验步骤

1、首先进入自己nifi文件夹中的bin目录里双击 run.nifi.bat 运行nifi 等待一段时间后 进入http://localhost:8080/nifi/

 

 

nifi截图

2、进入页面拖拽出一个processor到画布的空白处

processer

3、在搜索栏搜索出GEtFile这个进程器并点击ADD添加Getfile

4、同理重复3,4的操作添加processor   PutMongoRecord到画布上

三、配置GetFile(Getfile是一个能够将本地文件上传到nifi的一个进程器)

首先在Getfile右键点击选择configure进入配置页面,配置页面中首先进入PROPERTIES 进行属性配置,其中黑体标粗的为必须配置的属性

1

在这里我只简单介绍一下属性 INput Dircetory 和 File Fitter。

 INput Dircetory :应该填入一个你电脑上存放你要上传的数据的文件夹路径

File Fitter 的值是一个正则表达式,通过对正则表达式的编写可以在INput Dircetory中你写入的文件夹中匹配出相应的文件,其默认值为匹配全部。

2
 

四、配置PutMongoRecord (是一个能够将其他格式的文件如csv,直接写入mongDB的进程器)

同样右键点击选择configure进入配置页面,配置页面中首先进入PROPERTIES 进行属性配置,其中黑体标粗的为必须配置的属性

首先要添加的属性是 mong url 如果在本地的话且mongDB占用的是默认端口的话其值为 mongodb://localhost:27017

monggo database name 是你的数据库名字

mong collection name 是你的mongdb的集合名字

添加属性ecord reader ,recoder reader这里我们选择 添加组件csvReader、csvReader的作用是读取csv格式的 文件并将其以数据库的格式存入数据库,在添加完这个属性后我们会发现进程器的左上角还是感叹号(有感叹号时代表进程器配置有误),这是因为我们在recoder reader中我们虽然添加了csv reader却没有对其进程器进行激活配置,因此我们需要点击下图中 的箭头对 csvreader进行激活配置配置

1

进入这个页面我们选择csvreader的齿轮状的图标我们就可以对进程器进行配置 点击闪电状的图标可以对组件进行激活  state状态栏代表该进程器的状态其中disable代表未被激活状态1

我们通过apache nifi的官方文档可以对 csvreader进行设置其设置结果就会体现到数据库的组织结构,在我的配置中我将 csv format(即你的csv文件的原格式)设置为Microsoft excel  将treat first line as header(是否将第一行作为数据库中的列名) 设置为true

1

然后连接组件,点击运行就OK了最后我的nifi连接图如下

1

值得注意的是我们连接时我们要在settingg里面给定一个 Automatically Terminate Relationships  一般我们都选择successs

最后在附上我的studio 3t的结构图以及最后数据集和数据库的结果图

 

由于第一次写博客,nifi这个东西也是我新学的,所以难免会有各种问题希望大家多多包涵。以后会陆续把前面nifi的基础知识介绍补上也会陆续更新一些nifi与其他组件(如spark kafka )的连接操作

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值