用sqoop2从mysql导入数据到hbase
标签(空格分隔): sqoop2 hbase hadoop mysql 数据迁移
一、基础环境
hadoop-2.6.0
sqoop-1.99.6
hbase-1.0.1.1
二、数据迁移实际操作步骤
1、mysql中表结构显示
CREATE TABLE `risk_trade_error_result` (
`SERIALID` bigint(11) NOT NULL AUTO_INCREMENT,
`MERCHANT_NO` varchar(32) NOT NULL,
`TRADE_TIME` varchar(19) DEFAULT NULL,
`TRADE_TYPE` char(12) DEFAULT NULL COMMENT '交易类型',
`TERMINAL_NO` varchar(64) NOT NULL,
`CARDNO` varchar(20) NOT NULL COMMENT '卡号',
`AMOUNT` bigint(12) DEFAULT NULL COMMENT '交易金额',
`RISK_CODE` varchar(6) DEFAULT NULL,
`POS_CODE` varchar(2) DEFAULT NULL,
`REQUESTID` varchar(64) DEFAULT NULL,
`RISK_LEVEL` varchar(4) DEFAULT NULL,
PRIMARY KEY (`SERIALID`),
KEY `idx_merchant_no` (`MERCHANT_NO`),
KEY `idx_terminal_no` (`TERMINAL_NO`),
KEY `idx_trade_time` (`TRADE_TIME`)
) ENGINE=InnoDB AUTO_INCREMENT=3146182 DEFAULT CHARSET=utf8
注意:
mysql中的字段名最好用大写!
2、使用Phoenix创建hbase表
//进入Phoenix shell模式,命令如下:
#/home/hadoop/phoenix-4.5.0-HBase-1.0-bin/bin/sqlline.py risk1(主机名)
//创建hbase表:
create table RISK.RISK_TRADE_ERROR_RESULT(
TRADE_TIME UNSIGNED_LONG not null,
MERCHANT_NO varchar(32) not null,
TRADE_T