1、Hive到HBase
1.1、创建hive表
create table inpatient_hv( PATIENT_NO String COMMENT '住院号', NAME String COMMENT '姓名', SEX_CODE String COMMENT '性别', BIRTHDATE TIMESTAMP COMMENT '生日', BALANCE_COST String COMMENT '总费用') COMMENT '住院患者基本信息' ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' ESCAPED BY '\\' STORED AS TEXTFILE;
1.2、hive表导入数据
load data inpath '/usr/hadoop/inpatient.txt' into table inpatient_hv
1.3、创建hbase表
create table inpatient_hb( PATIENT_NO String COMMENT '住院号', NAME String COMMENT '姓名', SEX_CODE String COMMENT '性别', BIRTHDATE TIMESTAMP COMMENT '生日', BALANCE_COST String COMMENT '总费用') COMMENT '住院患者基本信息' ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,pinfo:NAME,pinfo:SEX_CODE,pinfo:BIRTHDATE,pinfo:BALANCE_COST") TBLPROPERTIES ("hbase.table.name" = "inpatient_hb");
1.4、数据从hive导入hbase
INSERT OVERWRITE TABLE inpatient_hb SELECT * FROM inpatient_hv;
2、hbase到hive
2.1、创建hbase表
create 'inpatient_hb','pinfo'
2.2、hbase表导入数据
./hbase org.apache.hadoop.hbase.mapreduce.ImportTsv -Dimporttsv.separator="," -Dimporttsv.columns=HBASE_ROW_KEY,pinfo:INPATIENT_NO,pinfo:NAME,pinfo:SEX_CODE,pinfo:BIRTHDATE,pinfo:BALANCE_COS inpatient_hb /usr/hadoop/inpatient.txt
2.3、创建hive表
#创建hbase external表 create external table inpatient_hb( PATIENT_NO String COMMENT '住院号', INPATIENT_NO String COMMENT '住院流水号', NAME String COMMENT '姓名', SEX_CODE String COMMENT '性别', BIRTHDATE TIMESTAMP COMMENT '生日', BALANCE_COST String COMMENT '总费用') COMMENT '住院患者基本信息' STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,pinfo:INPATIENT_NO,pinfo:NAME,pinfo:SEX_CODE,pinfo:BIRTHDATE,pinfo:BALANCE_COST") TBLPROPERTIES ("hbase.table.name" = "inpatient_hb"); #创建hive表 create table inpatient_hv( PATIENT_NO String COMMENT '住院号', INPATIENT_NO String COMMENT '住院流水号', NAME String COMMENT '姓名', SEX_CODE String COMMENT '性别', BIRTHDATE TIMESTAMP COMMENT '生日', BALANCE_COST String COMMENT '总费用') COMMENT '住院患者基本信息' ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' ESCAPED BY '\\' STORED AS TEXTFILE;
2.4、数据从hbase导入hive
INSERT OVERWRITE TABLE inpatient_hv SELECT * FROM inpatient_hb;