数据导入是之前导出的备份数据,采用: hbase org.apache.hadoop.hbase.mapreduce.Driver export table /hdfs路径 的方式导出的,但是在导入的时候,一直报container is killed也就是yarn container被杀掉,原因是这导入方式占用大量内存,启动多个进程,导致资源枯竭被杀掉,最终导致导入失败。因此我们采用另一种方式,先将文件生成Hfile:
hbase org.apache.hadoop.hbase.mapreduce.Import -Dimport.bulk.hasLaregeResult=true -Dmapreduce.reduce.memory.mb=40960 -Dmapred.job.shuffle.merge.percent=0.5 -Dmapred.job.shuffle.input.buffer.percent=0.6 -Dmapreduce.input.fileinputformat.split.minsize=2048000000 -Dhbase.fs.tmp.dir=/tmp/hbase-staging -Dimport.bulk.output=/tmp/zpxx zpxx /user/zpxx_bak
将Hfile导入到hbase表:
hbase org.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles /tmp/zpxx zpxx
最后修改于 2021-12-24 12:32:04