码迷,mamicode.com
首页 > 数据库 > 详细

Apache NiFi之MySQL数据同步到HBase

时间:2020-01-04 18:52:42      阅读:223      评论:0      收藏:0      [点我收藏+]

标签:b16   mit   database   json   方案   启动   bsp   apach   验证   

一.说明

将Apache NiFi做为关系型数据与非关系型数据库的数据同步工具使用,在此场景中需要将mysql导出的avro数据格式转化为json入库HBase

二.开拔

Ⅰ).配置ExecuteSQLRecord

a).选择ExecuteSQLRecord

在Processor中搜索ExecuteSQLRecord

  

技术图片

 

b).配置ExecuteSQLRecord

1.创建Database Connection Pool
2.创建JsonRecordSetWriter
3.配置SQL select query

 

select Host,User,authentication_string from mysql.user;

  

技术图片

c).创建DBCPConnectionPool

在Database Connection Pool中选择DBCPConnectionPool

技术图片

d).配置DBCPConnectionPool

1.Database Connection URL: jdbc:mysql://hostname:3306/druid
2.Database Driver Class Name: com.mysql.jdbc.Driver
3.Database User: username
4.Database Password: password

 

技术图片

e).激活服务

技术图片

Ⅱ).配置ConvertAvroToJSON

a).选择ConvertAvroToJSON

在Processor中搜索ConvertAvroToJSON

 

技术图片

b).配置ConvertAvroToJSON

技术图片

Ⅲ).配置SplitJson

a).选择SplitJson

在Processor中搜索SplitJson

 

技术图片

b).配置SplitJson

技术图片

Ⅳ).配置PutHBaseJSON

a).选择PutHBaseJSON

在Processor中搜索PutHBaseJSON

 

技术图片

b).配置PutHBaseJSON

1.HBase Client Service: 选择匹配版本的HBaseClient
2.Table Name: 配置入库HBase表名
3.Row Identifier Field Name: 配置RowKey值
4.Column Family: 配置列簇

 

技术图片

c).选择HBase_1_1_2_ClientService

在Processor中搜索HBase_1_1_2_ClientService

 

技术图片

d).配置HBase_1_1_2_ClientService

1.Zookeeper Quorum: hostname1:2181,hostname2:2181,hostname3:2181
2.Zookeeper Client Port: 2181
3.Zookeeper ZNode Parent: /hbase

 

技术图片
技术图片

e).激活HBase_1_1_2_ClientService

技术图片

Ⅴ).配置LogAttribute

技术图片

Ⅵ).启动服务

可以点击选择单个Processor启动,也可以在空白处点击流程启动

 

技术图片

Ⅶ).验证结果

a).MySQL源数据

select * from druid.druid_datasource;

技术图片

b).HBase入库数据

scan ‘druid.druid_datasource‘,{LIMIT=>10}

技术图片

三.HBase命令

## 创建表空间
create_namespace ‘druid‘

## 查看表空间
list_namespace_tables ‘druid‘

## 创建表
create ‘druid.druid_datasource‘,‘cf1‘

## 查看表数据
scan ‘druid.druid_datasource‘,{LIMIT=>10}

  

四.MySQL数据库驱动问题

a).解决方案一

将mysql驱动包放到nifi按照目录的lib中,重启nifi;如图中无需配置:Database Driver Location(s)项

  

技术图片

b).解决方案二

如图配置:Database Driver Location(s)项,则驱动包可放在任何可访问的地址,无需重启nifi

  

技术图片

Apache NiFi之MySQL数据同步到HBase

标签:b16   mit   database   json   方案   启动   bsp   apach   验证   

原文地址:https://www.cnblogs.com/felixzh/p/12149786.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!