一.安装:NiFi 是免安装地,仅需从官网下载压缩包,然后解压,即完成了整个安装过程,官网下载安装包(http://nifi.apache.org/download.html),选择nifi-x.x.x-bin.tar.gz的最新版本即可。解压结束即完成安装过程。

二.配置:修改配置文件nifi.properties(路径/usr/download/nifi-1.7.1/conf,根据解压位置而定),做如下修改:修改为本机ip,默认端口为8080,这里修改为9191.

# web properties #

nifi.web.war.directory=./lib

nifi.web.http.host=192.168.203.7 # 设置成本机的 ip

nifi.web.http.port=9191

nifi.web.https.host=

nifi.web.https.port=

nifi.web.jetty.working.directory=./work/jetty

nifi.web.jetty.threads=200

修改bootstrap.conf(路径/usr/download/nifi-1.7.1/conf),修改java的jvm,默认为512,这里调整为2048。

# JVM memory settings

java.arg.2=-Xms2048m

java.arg.3=-Xmx2048m

三.启动,进入/usr/download/nifi-1.7.1/bin目录,使用命令sh nifi.sh start启动,同样可以进行stop ,status,restart操作。在浏览器中访问:192.168.203.7:9191/nifi,即可出现nifi的操作界面。

四.nifi操作界面简单介绍(具体还需要自己操作,摸索摸索):

五.数据库到数据库之间数据同步需要的组件有:ExecuteSQL,ConvertAvroToJSON,ConvertJSONToSQL,PutSQL,SplitJson,EvaluateJsonPath,ReplaceText。具体流程:使用ExecuteSQL连接mysql数据库,通过写sql查询所需要的数据,nifi默认查出来的数据为Avro格式,所以需要ConvertAvroToJSON把Avro格式转化为json格式的数据,然后使用ConvertJSONToSQL把json数据转化为sql语句,最后使用PutSQL把数据存入数据库。为了使已同步的数据重复插入数据库,需要对数据进行更新操作,SplitJson对json进行拆分,EvaluateJsonPath提取json中的某个属性作为参数,ReplaceText根据参数编写update语句进行更新操作,PutSQL更新数据库。

ExecuteSQL

配置数据库连接:DBCPConnectionPool

ConvertAvroToJSON:

ConvertJSONToSQL:

PutSQL:

SplitJson:

EvaluateJsonPath:

ReplaceText:

PutSQL(注意这地方更新的是源主机的数据库):

配置完成后,把这几个组件连接起来,如下图:

总结:文档不是太详细,还有很多东西需要自己摸索,nifi不仅支持数据库之间的数据同步,各种数据流的操作都能很好的支持,各组件的具体说明请参考官方文档:http://nifi.apache.org/docs/nifi-docs/。

---------------------

作者:zhulu52166

来源:CSDN

原文:https://blog.csdn.net/zhulu52166/article/details/83380717

版权声明:本文为博主原创文章,转载请附上博文链接!

Nifi实时同步mysql_nifi实现数据库到数据库之间数据同步相关推荐

  1. 浅谈Oracle 数据库之间数据同步方案

    随着信息技术的飞速发展,企业信息化建设的不断深入,使得企业业务系统数量不断增加.这时,各业务系统之间数据交互,各子业务系统与核心业务系统之间数据交互,诸如此类场景的应用需求不断出现.因此,IT部门应对 ...

  2. Redis 缓存数据库使用 Redis-Shake 做数据同步

    目录 Redis 缓存数据库使用 Redis-Shake 做数据同步 Redis-shake 简介 Redis-Shake 同步的五种模式 基本原理 部署过程 同步模式 restore 模式 dump ...

  3. Redis配置主从数据,实现主从库之间数据同步

    一.背景 需求来源:在现代网络时代,随着用户访问量增加,网站并发量增加,数据库面临压力倍增,当并发到达一个巅峰值,服务器会宕机,那么如何避免这种现象出现呢? 下面是个人总结的几点解决方案: 1.增加服 ...

  4. 微服务之间数据同步的思考

    周末无聊,来一篇服务之间数据同步的博客吧(主要讲注意的问题).具体什么业务场景就不举例了. ps:纯属个人瞎说,有错误.不足请大侠指出.嗯,开始说正事了. 业务流程 主要业务流程如下: #mermai ...

  5. excel服务器数据同步修改,excel表格数据同步修改-关于excel不同表格(不同工作簿)之间数据同步修改......

    EXCEL表格文档如何数据同步更新 excel中让两份表格实现数据同步的具体步骤如下: 首先打开计算机,在计算机桌面找到excel软件,鼠标左键双击excel的快捷方式以打开软件.然后打开需要进行数据 ...

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

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

  7. 美团外卖MySQL数据库_美团DB数据同步到数据仓库的架构与实践

    背景 在数据仓库建模中,未经任何加工处理的原始业务层数据,我们称之为ODS(Operational Data Store)数据.在互联网企业中,常见的ODS数据有业务日志数据(Log)和业务DB数据( ...

  8. oracle往mysql数据同步存储过程_Oracle数据库之间数据同步

    源库(ENV库)中定义如下包: 包定义如下: CREATE OR REPLACE PACKAGE PKG_DATA_REPORT IS - Author : JOHNFNASH - Created : ...

  9. Oracle数据库之间数据同步 -- DBLink

    这段时间负责某个项目开发的数据库管理工作,这个项目中开发库与测试数据库分离,其中某些系统表数据与基础资料数据经常需要进行同步,为方便完成指定数据表的同步操作,可以采用dblink与merge结合的方法 ...

最新文章

  1. Awesome Projects (汇聚全球所有
  2. mysql union 优化_mysql 5.7.3 对union all 的优化
  3. python中的reduce函数
  4. world scientific is the journal to follow
  5. python统计库_python-科学计算常用库
  6. [jzoj 5775]【NOIP2008模拟】农夫约的假期 (前缀和+递推)
  7. 个推基于Docker和Kubernetes的微服务实践
  8. 没有借口---911谈学习
  9. 大型企业网络配置系列课程详解(六) --PPP链路的配置与相关概念的理解
  10. 【概率密度函数估计】--- 最大似然估计与Parzen窗函数画法
  11. 黑客编程入门 之 网络编程入门
  12. 区位码,国标码,交换码,内码,外码
  13. 无需U盘最简单的系统重装Win10
  14. layui树形美化_使用layui-tree美化左侧菜单,点击生成tab选项
  15. 喜报:毒霸成功通过VB100认证
  16. 信号与系统--幅度谱和相位谱
  17. 盘点国内哪家网络云盘比较好用?
  18. 单片机Fault故障常见应对办法
  19. 编码消耗率CCR,“上帝代码”,反射,简洁代码
  20. MapReduce当中的计数器

热门文章

  1. My future of programming
  2. 基于OpenCV 的美颜相机推送直播流
  3. 绝地求生游戏怎么转到计算机上玩,绝地求生大逃杀吃鸡游戏提示tslgame.exe 应用程序错误解决方法...
  4. 怎样让宝贝从小做一个有道德的人?
  5. 代码随想录Day04 | LeetCode24. 两两交换链表中的节点、LeetCode19. 删除链表的倒数第N个节点、LeetCode160. 链表相交、LeetCode142. 环形链表Ⅱ
  6. 大数据导出Excel导致内存溢出的解决方案
  7. R3300L Android相关的记录
  8. ajax上传 java,javaWeb中使用ajax上传文件
  9. php提取域名字符串,由字符串,提取完整子域名的方法 -php
  10. 小飞鱼通达二开 解决通达OA数据库服务不能启动的问题(图文)