Mapreduce 结果写入Hbase两种方法对比

本文对比了两种将MapReduce结果写入Hbase的方法:直接使用Hbase写入接口和通过TableReducer。虽然两者效率都不高,但TableReducer在性能上优于直接写入接口。同时提到了从Hbase读取数据的tableMapper接口,以及Hbase信息筛选的两种策略,但未进行性能测试。
摘要由CSDN通过智能技术生成

由于能力有限,对性能的评价皆出于主观感受,见谅。


方法一:通过Hbase提供的写入接口

在setup中配置Hbase信息,检测表是否存在,不存在创建表;在reduce函数中,调用table.put(put1)方法把结果写入到Hbase中


public class hbaseStatisticsReducer extends Reducer<Text, Text, Text, Text> {

	public static String tablename = "statistics";
	public static String[] cfs = { "data" };
	public static Configuration conf = new Configuration();

	@Override
	protected void setup(Context context) throws IOException {

		conf = context.getConfiguration();

		conf.set("hbase.rootdir", "hdfs://localhost:9000/hbase");
		conf.set("hbase.zookeeper.quorum", "localhost");
		conf.set("hbase.zookeeper.property.clientPort", "2181");

		HBaseAdmin admin = new HBaseAdmin(conf);
		if (admin.tableExists(tablename)) {
		} else {
			HTableDescriptor tableDe
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值