bulkload的原理是用mr程序读取文件数据,生成HFile文件,直接放到HDFS指定目录中去。
Importtsv是hbase自带的一个 csv文件–》HFile文件 的工具,它能将csv文件转成HFile文件,并发送给regionserver
它的本质,是内置的一个将csv文件转成hfile文件的mr程序!
1数据文件
uid001,lss,32,F
uid002,zss,32,F
uid003,wss,32,F
uid004,dss,32,F
2.在hbase中创建一个表
create “tb_teacher”,“cf”
3.将user.csv文件上传到linux系统的某个目录中
4.生成Hfile文件
hbase org.apache.hadoop.hbase.mapreduce.ImportTsv -Dimporttsv.separator=,
-Dimporttsv.columns=‘HBASE_ROW_KEY,cf:name,cf:age,cf:gender’
-Dimporttsv.bulk.output=/csv/out tb_teacher /csv/user.csv
5.将hfile文件导入到hbase表中:
hbase org.apache.hadoop.hbase.mapreduce.LoadIncrementalHFiles /csv/out tb_teacher