HBase与Sqoop集成

案例:将RDBMS中的数据抽取到HBase中

Step1、配置sqoop-env.sh如下:

HBase与Sqoop集成案例-LMLPHP

Step2、在Mysql中创建一张数据库library,一张表book

CREATE DATABASE library;

CREATE TABLE book(

id int(4) PRIMARY KEY NOT NULL AUTO_INCREMENT,

name VARCHAR(255) NOT NULL,

price VARCHAR(255) NOT NULL);

Step3、向表中插入一些数据

INSERT INTO book(name, price) VALUES('Lie Sporting', '30');

INSERT INTO book (name, price) VALUES('Pride & Prejudice', '70');

INSERT INTO book (name, price) VALUES('Fall of Giants', '50');  

完成后如图:

HBase与Sqoop集成案例-LMLPHP

Step4、执行Sqoop导入数据的操作

$ bin/sqoop import \

--connect jdbc:mysql://hadoop-senior01.itguigu.com:3306/db_library \

--username root \

--password 123456 \

--table book \

--columns "id,name,price" \

--column-family "info" \

--hbase-create-table \

--hbase-row-key "id" \

--hbase-table "hbase_book" \

--num-mappers 1  \

--split-by id

Step5、在HBase中scan这张表得到如下内容

HBase与Sqoop集成案例-LMLPHP

(尖叫提示:在导入之前,HBase中的表如果不存在则会自动创建)

05-28 08:12