[bigdata-028]apache nifi 从mysql导出数据到hbase
发布时间:2020-12-14 01:20:28 所属栏目:大数据 来源:网络整理
导读: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,要及时做修改。(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |