大数据学习之路51-hbase的批量数据导入工具api,bulkload

本文通过WordCount案例,介绍如何使用MapReduce生成HFile,并利用HBase的bulkload API将数据批量导入到HBase表中。过程中涉及MapReduce任务的设置,包括指定HBase环境配置、行键与Put对象的创建,以及HFileOutputFormat2的配置和LoadIncrementalHFiles的使用。

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

我们这里采用wordcount的案例,我们先用一个mapreduce将单词进行计数,生成单词和总数。

接下来我们会将结果生成HFile导入hbase中。生成Hfile的过程又是一个mapreduce,其实只有map,这个map会将上一步生成的结果文件变成Hfile,变成Hfie之后,最后再掉一个api就可以将Hfile导入表中。

这个map种输出数据的泛型必须是ImmutableBytesWritable,Put。

ImmutableBytesWritable用来传Rowkey,我们的数据中的一行到了Hbase中就要带rowkey行键。

Put就是我们要传递的一行的内容。

所以我们在这个map中所要做的事情就是将数据转换为我们想要的行键和Put就可以啦。其中new Put的时候需要指定行键,put要指定一行的内容还需要addColumn()这里包括,列族,字段,值

我们在提交作业的时候经历了三步:

第一步:提交普通的mapreduce

第二步:提交转换Hfile的mapreduce的reduce,这里与普通的提交作业不同的是,还需要指定hbase的环境。

得到hbase数据库的连接

Configuration conf2 = HbaseConfiguration.create();

conf2.set("hbase.zookeeper.quorum","marshal:2181,marshal01:2181,marshal02:2181,marshal03:2181,marshal04:2181,marshal05:2181");

Connection conn = Connec

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

未来@音律

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值