在mapreduce处理期间,我需要在一次地图执行中多次查找hbase。随着hbase变得非常缓慢,这成为一个瓶颈。 在一个映射过程中查找多次,例如每行包含多个员工ID,员工信息存储在hbase中。
有什么可以替代?对于这样的处理,hbase应该是慢的吗?将Hbase作为hdfs文本然后进行连接而不是查找是否更好。
答案 0 :(得分:1)
在不确切知道你的MR工作正在做什么的情况下,给出一个完美的答案有点困难,但我会考虑使用TableInputFormatBase
(用MultipleInputs
来阅读HBase将表与您的其他数据一起放入您的映射器中),然后加入员工ID。这可能意味着您现在需要两个MR作业,但它可能比多个查找更快,并且当然应该更好地扩展。