sqoop 从mysql 导入数据到hbase

时间:2024-03-23 16:40:45

首先我们在mysql有一张表test.tohdfs

sqoop 从mysql 导入数据到hbase

我们在hbase中也创建一张表,

sqoop 从mysql 导入数据到hbase

执行导入

bin/sqoop import \
--connect jdbc:mysql://make.hadoop.com:3306/test \
--username root \
--password 123456 \
--table tohdfs  \
--hbase-table hbase_tohdfs \
--column-family info  \
--hbase-create-table \

--hbase-row-key id

当然导入成功了,对hbase的数据进行查看,可以看到数据是完成整的,

sqoop 从mysql 导入数据到hbase


第二种 我们加上 --hbase-bulkload 参数进行导入

bin/sqoop import \
--connect jdbc:mysql://make.hadoop.com:3306/test \
--username root \
--password 123456 \
--table tohdfs  \
--hbase-table hbase_tohdfs_bulk \
--column-family info  \
--hbase-create-table \                      表不存在会自己创建
--hbase-row-key id \
--hbase-bulkload                               不用指定输出的路径,后面会解释

我们看看这个命令结束后的提示

sqoop 从mysql 导入数据到hbase

我么可以看到这里给出了一个,output的路径,可是我们hdfs上根本不存在,这个目录,导致我不知道该怎么加载这个数据,但是我么你直接去hbase中查看表的数据

sqoop 从mysql 导入数据到hbase


哈哈,这里面已经有数据了,说明sqoop在创建之后,启用了类似,complete-bulkload 的命令对数据进行了转移,用不着我们自己再转移一次了。

sqoop 从mysql 导入数据到hbase

完美,以上