如何从Result对象获取HBase表名作为mapreduce参数?

时间:2013-12-26 02:28:03

标签: mapreduce hbase

HBASE-3996 支持多个表和扫描仪作为map / reduce作业中映射器的输入。 map函数总是如下所示:

public void map(ImmutableBytesWritable row, Result value, Context context)

在map函数中,如何区分(Result)值来自哪个表?

1 个答案:

答案 0 :(得分:0)

您可以从上下文中提取TableSplit,这应该适合您(未经测试):

public void map(ImmutableBytesWritable row, Result value, Context context) {
    TableSplit currentSplit = (TableSplit)context.getInputSplit();
    byte[] tableName = split.getTableName();
    ....
}