raj*_*raj 12 hadoop apache-pig
当我在猪中使用COGROUP代替JOIN时,是否有任何优势(wrt性能/没有地图减少)?
http://developer.yahoo.com/hadoop/tutorial/module6.html讨论了它们产生的输出类型的差异.但是,忽略"输出模式",性能是否存在显着差异?
Don*_*ner 13
没有重大的性能差异.我说这个的原因是它们最终都是一个MapReduce作业,它将相同的数据发送到Reducer.两者都需要向前发送所有记录,密钥是外键.如果COGROUP可能的话,可能会更快一些,因为它不会在击中时使用笛卡尔积,并将它们保存在单独的袋子中.
如果您的某个数据集很小,则可以使用名为"复制连接"的连接选项.这将在所有map任务中分配第二个数据集并将其加载到主内存中.这样,它可以在映射器中完成整个连接,而不需要reducer.根据我的经验,这是非常值得的,因为连接和cogroups的瓶颈是将整个数据集拖放到reducer.据COGROUP我所知,你不能这样做.
| 归档时间: |
|
| 查看次数: |
16463 次 |
| 最近记录: |