记录下从mysql迁移数据到hbase

上一篇文章介绍了sqoop1.99.7的用法,因为不知道什么原因图片都没有显示,所以这次来次更详细的

貌似sqoop1.99以后的版本 不支持从mysql直接导入hbase了.具体我也不知道什么情况,所以我是先将mysql中的数据导入到hdfs中,之后再从hdfs中导入hbase中

1,mysql-->hdfs

记录下从mysql迁移数据到hbase_第1张图片

记录下从mysql迁移数据到hbase_第2张图片

输入show version -all 来验证sqoop连接的验证


sqoop1.99.7 从mysql导入hdfs的步骤 根据官网的介绍是:

记录下从mysql迁移数据到hbase_第3张图片

一.新建2个link 1个是jdbc的link 负责链接mysql的,1个是hdfs的链接,负责链接hdfs文件的


1,新建jdbc的link

记录下从mysql迁移数据到hbase_第4张图片

2,新建hdfs记录下从mysql迁移数据到hbase_第5张图片


2个link都已经建立完毕.


下面需要建立一个job,相当于1个桥梁

记录下从mysql迁移数据到hbase_第6张图片

记录下从mysql迁移数据到hbase_第7张图片

记录下从mysql迁移数据到hbase_第8张图片

我们看到 job已经执行完成,我们去事先建立好的hadoop的文件夹中取看看

记录下从mysql迁移数据到hbase_第9张图片

记录下从mysql迁移数据到hbase_第10张图片

我们看到  生成了10个文件 其中一个文件的行数是10万+ 总数量在百万左右

第一步我们就完成了从mysql导入hdfs的步骤,

第二步我们需要将这些文件导入到hbase中,首先我们在hbase中建立一张表 create 'csdn','stat'

记录下从mysql迁移数据到hbase_第11张图片

表建立完成


执行命令hbase org.apache.hadoop.hbase.mapreduce.ImportTsv -Dimporttsv.separator="," -Dimporttsv.columns=HBASE_ROW_KEY,stat:id,stat:stat_date,stat:query,stat:scene,stat:scenename,stat:brand_id,stat:brand_name,stat:goods_id,stat:goods_name,stat:repeat_count,stat:create_time,stat:update_time csdn /mh3/*


记录下从mysql迁移数据到hbase_第12张图片


等待

记录下从mysql迁移数据到hbase_第13张图片记录下从mysql迁移数据到hbase_第14张图片

貌似有些字段没有对上,回去查下原因 应该是空值的原因 .好了先到这吧

你可能感兴趣的:(SQOOP2)