NiFi是一个数据处理和分发系统,其中很重要的一部分是处理器(Processors)。一个处理器组合系统间的数据路由、转换或调解。处理器可以访问给定FlowFile的属性及其内容流。处理器可以在给定的工作单元中对零个或多个FlowFile进行操作,并提交该工作或回滚。

本文介绍NiFi处理器之一 :PutSQL

描述

执行SQL UPDATE或INSERT命令。传入的FlowFile的内容应该是要执行的SQL命令。

属性

这里只介绍我使用过的配置:

名称 默认值 允许值 描述 提示
JDBC Connection Pool Controller Service API: DBCPService。 Implementations: DBCPConnectionPoolLookup; DBCPConnectionPool; HiveConnectionPool。 指定要将JSON消息转换为SQL语句的JDBC连接池。必须使用连接池才能确定适当的数据库类型。 用来执行适当数据库的插入或更新的SQL语句

使用说明

PutSQL处理器可以在配置中指定一个SQL语句,也可以直接执行流文件内容,这时,流文件内容是一条SQL语句。我使用的是后者这种方式,上游使用ReplaceText处理器生成SQL语句。

配置如下:

Name Value
JDBC Connection Pool PhoenixDBCPConnectionPool

PhoenixDBCPConnectionPool是DBCPConnectionPool类型的Controller Services,配置如下:

Name Value
Database Connection URL jdbc:phoenix:zk1,zk2,zk3:2181
Database Driver Class Name org.apache.phoenix.jdbc.PhoenixDriver
Database Driver Location(s) lib/phoenix/phoenix-4.13.1-HBase-1.2-client.jar

这里有个问题,HBase的zookeeper.znode.parent属性必须设置为 /hbase,NiFi的DBCPConnectionPool才能连接上,原因未知,需要解惑。这个可能需要在NiFi中指定hbase-site.xml,或者jdbc url指定为jdbc:phoenix:zk1,zk2,zk3:2181/hbase-unsecure,以此指定要连接的目标。

在NiFi中,路径值可以使用绝对路径,例如 Database Driver Location(s) 的执行还可以写成 file:///opt/phoenix/phoenix-4.13.1-HBase-1.2-client.jar,当然这里需要保证该文件路径准确

NiFi Processors之PutSQL相关推荐

  1. NiFi Processors之InvokeHTTP

    NiFi是一个数据处理和分发系统,其中很重要的一部分是处理器(Processors).一个处理器组合系统间的数据路由.转换或调解.处理器可以访问给定FlowFile的属性及其内容流.处理器可以在给定的 ...

  2. NiFi Processors之GenerateFlowFile

    NiFi是一个数据处理和分发系统,其中很重要的一部分是处理器(Processors).一个处理器组合系统间的数据路由.转换或调解.处理器可以访问给定FlowFile的属性及其内容流.处理器可以在给定的 ...

  3. NiFi Processors之ReplaceText

    NiFi是一个数据处理和分发系统,其中很重要的一部分是处理器(Processors).一个处理器组合系统间的数据路由.转换或调解.处理器可以访问给定FlowFile的属性及其内容流.处理器可以在给定的 ...

  4. linux nifi指定jdk,nifi在arm架构启动不了,怎么办?

    问题描述 nifi启动报错 问题出现的平台版本及自己尝试过哪些方法 arrch64.在服务器上编译过 相关代码 粘贴代码文本(请勿用截图) ERROR [main] org.apache.nifi.N ...

  5. Apache Nifi在Windows环境下搭建伪群集及证书登录

    代码地址如下: http://www.demodashi.com/demo/11986.html 前些时间做了关于Apache Nifi分布式集群的搭建分享,但很多时候要搭建分布式集群机器资源是个问题 ...

  6. org.apache.avro.file.DataFileWriter$AppendWriteException: org.apache.avro.UnresolvedUnionException:

    使用nifi+kylo报错了. 2019-03-05 15:03:08,226 ERROR [Timer-Driven Process Thread-8] c.t.nifi.v2.thrift.Exe ...

  7. NiFi 脚本执行器使用指南 (part 3)

    2019独角兽企业重金招聘Python工程师标准>>> NiFi 脚本执行器使用指南 (part 3) 说明 ExecuteScript让NiFi可以执行脚本来完成数据流程任务,从而 ...

  8. nifi 实现数据库到数据库之间数据同步

    数据同步 界面如下: 具体流程: 1.使用ExecuteSQL连接mysql数据库,通过写sql查询所需要的数据 2.nifi默认查出来的数据为Avro格式,所以需要ConvertAvroToJSON ...

  9. Apache nifi 集群安装

    原文地址:https://pierrevillard.com/2016/08/13/apache-nifi-1-0-0-cluster-setup/ 文章写的很好了,步骤性的英文写得也比较易懂,原样搬 ...

最新文章

  1. Keywords Search AC自动机QAQ
  2. 6年iOS开发程序员总结组件化—让你的项目一步到位
  3. webpack 项目使用 html-webpack-plugin(3)
  4. android onresume时view,android – 在使用ViewPager滑动时,Fragment不会调用OnResume()
  5. 设计模式——代理模式
  6. 岗位内推 | 美团语音交互部招聘NLP/知识图谱/语音识别等算法职位(可实习)...
  7. Unity的几个特殊文件夹
  8. imx6 android快速启动,freescale imx6 开机启动速度优化之Bootchart工具的使用问题
  9. 关于Mytatis动态拼接in语句并且按照指定顺序排序的问题
  10. mysql合集_Mysql数据库知识点合集
  11. oracle中的数据对象
  12. java入门第二季--封装--java中的this
  13. linkedin 第三方网站登录(JavaScript SDK)
  14. 电脑桌面数字时钟c语言,DesktopDigitalClock(桌面数字时钟)
  15. 纠错码与魔术(一)——纠错码与汉明码简介
  16. VS2015 社区版本 打包程序 发布
  17. SuperMap iClient3D for WebGL之BIM模型爆炸
  18. 深度解析国内O2O模式
  19. 勇敢面对人生的苦难,时光不负赶路人
  20. 利用Minia软件对基因组测序二代数据的初步组装

热门文章

  1. 第一期码易猿游活动圆满结束 精彩仍将继续
  2. 除数为0,程序异常的处理
  3. 送给用 EditPlus 或 Programmer's Notepad 等编辑器写代码的朋友!
  4. 拿下今年最大笔潮玩市场融资,52TOYS投资价值几何?
  5. AD如何修改图纸大小
  6. C++ Qt获取windows任务栏的位置及高度
  7. 常用日本语1000句+简单用语
  8. Python - pyecharts:直接将图片保存为 png, pdf, gif 格式的文件
  9. Android:WebView加载url网页显示不完整解决办法
  10. 中兴通讯刀片服务器,中兴通讯发布行业首个OLT内置刀片技术白皮书