加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

[bigdata-028]apache nifi 从mysql导出数据到hbase

发布时间:2020-12-31 02:43:58 所属栏目:大数据 来源:网络整理
导读:0.在hbase节点,启动thrift服务 hbase-daemon.sh start thrift 1. 在本机启动nif ./bin/nifi.sh start 2. 在浏览器输入http://localhost:8080/nifi,看到nifi的界面 3. 拖一个processor ExecuteSQL到界面 ??? 3.1 在processor上点击右键,选择configure,点

0.在hbase节点,启动thrift服务
hbase-daemon.sh start thrift

1. 在本机启动nif
./bin/nifi.sh start

2. 在浏览器输入http://localhost:8080/nifi,看到nifi的界面

3. 拖一个processor ExecuteSQL到界面
??? 3.1 在processor上点击右键,选择configure,点击第三个tab,也就是properties
??? 3.2 在property列表,选择 database connection pooling service-->DBCPConnectionPool,然后再点击右侧的箭头,配置下一个选项,
??? 3.3 于是到了Process Group Configuration页面,点击右侧“+”符号,添加一个mysql数据库的连接。
??????? jdbc:mysql://192.168.20.175:3306/test?useUnicode=true&characterEncoding=utf8&useSSL=true
??????? com.mysql.jdbc.Driver
??????? /home/xxxx/mysql-connector-java-5.1.39.jar
??????? root
??????? 123456
??? 3.4 然后,在回到ExecuteSQL的properties,设置SQL select query为 select * from user
??? 3.5 设置Max Wait Time为10 seconds

4.? 从mysql里出来的是avro格式的数据,需要将它转化成json格式。拖一个ConvertAvroToJson processor到界面。然后,从ExecuteSQL拖一条线到ConvertAvroToJson,关系为success。

5.? 添加一个SplitJson processor到界面,然后从ConvertAvroToJson拖一条线到SplitJson,关系为success。
??? 5.1 配置SplitJson,在properties页,将JsonPathExpression设置为*

6. 添加一个PutHbaseJson processor到界面,然后配置PutHbaseJson
??? 6.1 在properties页,配置HBase Client Service成为 HBase_1_1_2_ClientService
??? 6.2 完成6.1之后,点击右侧的小箭头,增加HbaseClientService,然后点击edit按键,在properites做如下设置:
??????? ZooKeeper Quorum :192.168.2.xxxx
??????? Zookeeper client port: 2181
??????? Zookeeper znode parent: /hbase
??????? Hbase client Reties: 1
??? 6.3 配置完成后,点击小闪电,让配置生效
??? 6.4 配置RowIdentifier。因为传入的是Json,所以使用FieldName为ID,填写ColumnFamlity和TableName,点击Apply。
??????? Table Name: my_user1 #这是hbase的一张表
??????? Row Identifier Field Name: id
??????? Row Identified Encoding Strategy: String
??????? Column Famlily: prop

7. 从SplitJosn连接到PutHbaseJson,关系为Split

8. 增加一个LogAttribute,将其他所有processor的failure以及splitJson的Original关系全部连接到它上面。

9. 将LogAttribute和PutHbaseJson的setting配置页面的Automatically terminate 勾选成success。

10. 在PutHbaseJson出错了。把zookeeper cp过来,看连接

zkCli.sh -server 192.168.0.xxx:2181

ls /

ls /hbase

get /hbase/hmaster

11. 最容易出现的问题,是各节点机的hostname和Hosts文件配置文件。 ??? 12.1 集群四种节点:mysql节点,hbase节点,nifi节点,nifi client节点。 ??? 12.2 如果出现问题,通常都是上述四种节点的/etc/hosts和/etc/hostname出现错误。 ??? 12.3 错误类型:不能根据hostname找到对应的ip,在错误log里有错误的ip地址。所以操作者需要熟悉各hostname和对应ip关系,发现陌生的或者不合理的ip,要及时做修改。

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读