HBase mapReduce TableOutputFormat如何使用Flush和WAL

时间:2015-02-10 17:24:56

标签: hadoop mapreduce hbase

因此,在使用TableOutputFormat的MapReduce作业写入HBase时,它经常写入HBase。我不认为它为每一行做一个put命令。

在MapReduce中使用时,我们如何控制AutoFlush和Write Ahead Log(WAL)?

2 个答案:

答案 0 :(得分:2)

TableOutputFormat禁用AutoFlush并使用hbase.client.write.buffer中指定的写入缓冲区(默认为2MB),一旦缓冲区已满,它将自动刷新为HBase。您可以通过将属性添加到作业配置来更改它: config.set("hbase.client.write.buffer", 16777216); // 16MB Buffer

默认情况下启用WAL,每次放置都可以禁用它,但通常不鼓励: myPut.setWriteToWal(false);

答案 1 :(得分:0)

实际上确实看到了the code。如果您想使用HFileOutputFormat see example on gitub

绕过WAL写入