HBase写道:哪一个更好的性能,批处理或放置(List <put>)?</put>

时间:2015-01-30 04:01:51

标签: hadoop hbase batch-processing

我开始学习HBase来编写数据流。我使用HTableInterface并且在性能方面存在问题。插入仅500行,我插入的每批列表几乎500,000毫秒。

使用HTableInterface批量写入HTable的任何示例或建议? 我正在使用HBase 0.94

由于

1 个答案:

答案 0 :(得分:4)

它们基本相同:batch(List<? extends Row> actions, Object[] results)不仅允许放置,还允许,删除,增量... put(List<Put> puts)只需执行一批放置(它还验证客户端) )。

您还可以通过禁用table.setAutoFlush(false),向表中发出标准汇总并随后使用table.flushCommits()刷新缓冲区来执行批处理。

我不知道您的行的大小,但除非它们很大,否则您的配置似乎有某种问题(网络延迟可能?),即使是逐行执行500次放置也应该是表现得更快。