talend 将hbase中数据导入到mysql中
首先,解决talend连接hbase的问题:
公司使用的机器是HDP2.2的机器,上面配置好Hbase服务,在集群的/etc/hbase/conf/hbase-site.xml下,有如下配置:
<property>
<name>zookeeper.znode.parent</name>
<value>/hbase-unsecure</value>
</property>
这个配置是决定, Hbase master在zookeeper中,存储数据的根节点,如果不特别设置,默认位置是:/hbase (这个坑了我好久呀。。。,经过漫长的研究,终于顿悟,着实不易呀)。
在设置hbase databae时,配置如下:


测试zk的联通性:
[zookeeper@hdp1 ~]$ zookeeper-client -server 172.28.3.61:2181 [zk: 172.28.3.61:2181(CONNECTED) 15] ls /
[hiveserver2, controller_epoch, controller, brokers, zookeeper, hbase-unsecure, hadoop-ha, rmstore, admin, consumers, config]
[zk: 172.28.3.61:2181(CONNECTED) 16] ls /hbase-unsecure
[replication, meta-region-server, rs, splitWAL, backup-masters, table-lock, region-in-transition, online-snapshot, master, running, recovering-regions, draining, namespace, hbaseid, table]
最后的状态是连接成功:

连接成功后,retrive schema:

在hbase中,表格信息如下:
hbase(main):047:0> scan 'zhangchao'
ROW COLUMN+CELL
example column=cc2:name, timestamp=1436838509057, value=justin
example2 column=cc1:age, timestamp=1436838869051, value=38
example3 column=cc1:sex, timestamp=1436839082133, value=male
example4 column=cc1:age, timestamp=1436854903976, value=334
4 row(s) in 0.0270 seconds hbase(main):048:0> describe 'zhangchao'
DESCRIPTION ENABLED
'zhangchao', {NAME => 'cc1', BLOOMFILTER => 'ROW', VERSIONS => '1', IN_M true
EMORY => 'false', KEEP_DELETED_CELLS => 'false', DATA_BLOCK_ENCODING =>
'NONE', TTL => 'FOREVER', COMPRESSION => 'NONE', MIN_VERSIONS => '0', BL
OCKCACHE => 'true', BLOCKSIZE => '65536', REPLICATION_SCOPE => '0'}, {NA
ME => 'cc2', BLOOMFILTER => 'ROW', VERSIONS => '1', IN_MEMORY => 'false'
, KEEP_DELETED_CELLS => 'false', DATA_BLOCK_ENCODING => 'NONE', TTL => '
FOREVER', COMPRESSION => 'NONE', MIN_VERSIONS => '0', BLOCKCACHE => 'tru
e', BLOCKSIZE => '65536', REPLICATION_SCOPE => '0'}
1 row(s) in 0.0770 seconds
mysql中表的结构如下:

建立Talend模型,将hbase中的数据导入到mysql中:



执行后,mysql中的表中有了hbase的信息:

这样hbase到mysql的数据通道就算打通,问题的关键其实是,如何设计mysql里的行数据,让其转换为hbase中的类数据,因为hbase是列式存储,按照表->行->列簇:列->值的形式来存储。
talend 将hbase中数据导入到mysql中的更多相关文章
- sqlserver 中数据导入到mysql中的方法以及注意事项
数据导入从sql server 到mysql (将数据以文本格式从sqlserver中导出,注意编码格式,再将文本文件导入mysql中): 1.若从slqserver中导出的表中不包含中文采用: bc ...
- 22.把hive表中数据导入到mysql中
先通过可视化工具链接mysql,在链接的时候用sqoop 用户登录 在数据库userdb下新建表 保存,输入表名upflow 现在我们需要把hive里面的数据通过sqoop导入到mysql里面 sqo ...
- shell编程系列24--shell操作数据库实战之利用shell脚本将文本数据导入到mysql中
shell编程系列24--shell操作数据库实战之利用shell脚本将文本数据导入到mysql中 利用shell脚本将文本数据导入到mysql中 需求1:处理文本中的数据,将文本中的数据插入到mys ...
- python将oracle中的数据导入到mysql中。
一.导入表结构.使用工具:navicate premium 和PowerDesinger 1. 先用navicate premium把oracle中的数据库导出为oracle脚本. 2. 在Power ...
- Talend 将Oracle中数据导入到hive中,根据系统时间设置hive分区字段
首先,概览下任务图: 流程是,先用tHDFSDelete将hdfs上的文件删除掉,然后将oracle中的机构表中的数据导入到HDFS中:建立hive连接->hive建表->tJava获取系 ...
- 利用workbench将excel数据导入到MySQL中
数据导入的方式(csv,txt之类) 在MySQL中,数据导入的方式有两种方式 通过第三方客户端导入(workbench) 通过mysql client 方式导入 通过mysql clinet的导入方 ...
- 【转】把sqlite3数据导入到MySQL中
之前我们默认使用的是SQLite数据库,我们开发完成之后,里面有许多数据.如果我们想转换成Mysql数据库,那我们先得把旧数据从SQLite导出,然后再导入到新的Mysql数据库里去. 1.SQLit ...
- SQL语句:把Excel文件中数据导入SQL数据库中的方法
1.从Excel文件中,导入数据到SQL数据库情况一.如果接受数据导入的表不存在 select * into jd$ from OPENROWSET('MICROSOFT.JET.OLEDB.4.0' ...
- talend hive数据导入到mysql中
thiveInput->tmap->tMysqloutput thiveInput: tmap: tmysqlOutput:注意编码问题:noDatetimeStringSync=true ...
随机推荐
- PHP MVC单入口
ThinkPHP去除url中的index.php 看到ThinkPHP路径中没有index.php会很诧异,怎么实现的?其实很简单,使用了apache的url重写功能. ThinPHP URL去ind ...
- editcap的使用
editcap.exe -h Editcap (Wireshark) (v2.-gf42a0d2b6c) Edit and/or translate the format of capture fil ...
- Grunt、Gulp和Webpack对比
1.Grunt处理Sass转换成CSS过程 2.Gulp处理Sass转换成CSS过程 3.Webpack执行原理 4.区别 (1)grunt和gulp都类似于webapck的中的scripts,属于任 ...
- Java对象在虚拟机中的创建、内存分布、访问定位以及死亡判定
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6535156.html 一:虚拟机中对象的创建 1:虚拟机遇到new指令时,在常量池检索是否有对应的符号引用, ...
- 整合Tomcat和Nginx实现动静态负载均衡
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6386135.html Nginx与tomcat整合可以实现服务器的负载均衡. 在用户的请求发往服务器进行处理时 ...
- 腾讯云ubuntu安装Mysql并配置远程访问
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6378914.html 一:修改SSH配置 输入 su 进入root模式.修改ssh配置: sudo vi /e ...
- java byte数组与16进制间的相互转换
java byte数组与16进制间的相互转换 CreationTime--2018年6月11日15点34分 Author:Marydon 1.准备工作 import java.util.Array ...
- RHEL7禁用网卡命名规则
[root@rhel7 ~]# vi /etc/sysconfig/grub GRUB_TIMEOUT= GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g ...
- Ubuntu x86-64汇编(3) 数值操作指令
指令标注 Operand Notation 指令instruction即运算operation, 操作的对象为一个或多个运算数operand, 使用不同的标记表示不同的约束 <reg> ...
- 找不到android-support-v4 包的解决办法
有时候在开发过程中,总是会遇到一些莫名奇妙的错误,或者在使用fragement和viewpage的时候,就会出现下面这个错误,如果出现找不到android-support-v4 包的时候,可以使用下面 ...