HBase与Sqoop集成
案例:将RDBMS中的数据抽取到HBase中
Step1、配置sqoop-env.sh如下:
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');
完成后如图:
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中的表如果不存在则会自动创建)