【NiFi csv to mysql系列】二 JSON文件写入数据库

Abstract

本文的主要目的是将一个JSON格式的文件写入到数据库中

整体流程

包含三个Processor:

GetFile:读取json格式的文件
ConvertJSONToSQL:将json中的元素转化为sql中的insert语句
PutSQL:执行上一个processor生成的sql语句,将json中的元素插入到数据库中


【NiFi csv to mysql系列】二 JSON文件写入数据库_第1张图片

详细配置

GetFile处理器

此处理器的配置已经在上一篇文章中进行了介绍,这里将省略此部分内容,输入的文件为包含一个json元素的文件:


ConvertJSONToSQL处理器

注意:该处理器有一个特性,只能处理flat json,所谓flat是指it consists of a single JSON element and each field maps to a simple type


【NiFi csv to mysql系列】二 JSON文件写入数据库_第2张图片
其中的参数: 
JDBC Connection Pool:根据要连接的数据库类型选择,我要连接的是mysql数据库,因此选择DBCPConnectionPool 
Statement Type:设置要执行的操作,INSERT和UPDATE等,这里要执行的是插入操作 
Translate Field Name: 如果json中元素的属性名称与数据表中的列名称一致,则选择false,否则选择true

JDBC Connection Pool的属性后面有一个小箭头,点击箭头对此项进行设置: 
【NiFi csv to mysql系列】二 JSON文件写入数据库_第3张图片
实际上这个java连接数据的设置是一致的, 
Database Driver Class Name: 根据要连接的数据库类型选择 
Database Driver location:选择对应数据库连接jar包的完整路径 
Database User:登录数据库的用户名 
Password:用户名对应的密码

PutSQL处理器

这里只设定了 JDBC Connection Pool


【NiFi csv to mysql系列】二 JSON文件写入数据库_第4张图片

对应数据库表的结构:


【NiFi csv to mysql系列】二 JSON文件写入数据库_第5张图片

至此已经完成了将一条json数据插入到数据库中


【NiFi csv to mysql系列】二 JSON文件写入数据库_第6张图片

目前只能插入单条的json记录,接下来将探索如何将包含多条记录的json文件写入到数据库中

你可能感兴趣的:(【NiFi csv to mysql系列】二 JSON文件写入数据库)