hbase数据导入导出工具使用

本文介绍了如何使用HBase的命令行工具ImportTsv和completebulkload进行数据导入导出。通过ImportTsv将CSV格式文本导入HBase表中,包括设置分隔符和列映射,以及数据导入后的验证。同时,文章还讲解了completebulkload方法,先生成HFile再挂载到表中,避免直接调用HBase API。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


hbase除了直接调用put接口将数据进行导入导出外,还提供了命令行工具来直接将特定格式的数据进行导入(或以特定格式将数据导出),

主要是利用org.apache.hadoop.hbase.mapreduce这个包里的接口:importTsv, completebulkload,import,export,

可以执行bin/hbase org.apache.hadoop.hbase.mapreduce.Driver 

bin/hbase org.apache.hadoop.hbase.mapreduce.importTsv 等命令查看详细说明。

./hbase org.apache.hadoop.hbase.mapreduce.Driver也可以实现hbase两个表之间的数据互导。

前提:看上面包名即知道,这些方法主要是利用的MR来进行数据导入导出的,因此首先将集群的MR开启。

1 利用ImportTsv将csv格式文本导入hbase表中:

步骤:

a 先在hbase上生成表,如:create 't1','f1'

b 将csv数据上传到hdfs上,数据内容如下:

a,1a,,3a,4a
b,,2b,3b,4b
,1c,2c,3c,4c

c 利用如下命令进行导入:

./hbase org.apache.hadoop.hbase.mapreduce.ImportTsv -Dimporttsv.separator="," -Dimporttsv.columns=HBASE_ROW_KEY,f1:a,f1:b,f1:c,f1:d t1 hdfs://nnip:9000/f1

如果MR程序正确完成,表示导入成功,否则查看打印出的错误,找出原因。

d 利用hbase的shell来查看数据:

hbase(main):002:0> scan 't1'
ROW                                      COLUMN+CELL                                                                                                           
                                &nbs

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值