2010-07-20 46 views
1

基本上,我需要将数据路由到正确的Reducer。每个Reducer将成为TableReducer。每个HBase表的Reducer

我有以下文件

venodor1,用户1,XXXX = N venodor1,用户1,XXXX = N venodor2,用户2,XXXX = N venodor2,用户2,XXXX = N

我需要插入下列HBase的表中

表的供应商1: [USER1] => {数据:XXXX = N} [USER2] => {数据:XXXX = N}

表供应商2: [USER1] => {数据:XXXX = N} [USER2] => {数据:XXXX = N}

格式为[ROW_ID] => {[FAMILY]:[COLUMN] = [VALUE]}

  • 每个供应商具有不同的HBase的表
  • 行需要去不同HBase的表基体上的线的值。

有没有办法做到这一点?级联?有没有另外的工作呢?

感谢, 费德里科

回答

0

我找到了办法......让减速处理表。 而不是使用TableReducer,只需使用Reducer即可。 在设置加载表(表格应该是属性)时,将自动刷新设置为false并设置缓冲区大小。 清理所有表上的flushCommit()。 Reducer输出对于Key和Value应该是NullWritable(除非你确实想输出)。在减少只要做table1.put tabe2.put等

TableReducer实现它是这样做在一个表的引擎盖下。