摘要:
本文是对MR案例:Map-Join的解读。在hadoop中,共享全局变量或全局文件的几种方法使用Configuration的set()方法,只适合数据内容比较小的场景将缓存文件放在HDFS上,每次都去读取,效率比较低将缓存文件放在DistributedCache里,在setup()初始化一次后,即可... 阅读全文
摘要:
适用场景:一张表十分小【key不可重复】、一张表非常大。 用法:在Job提交时,首先将小表加载到 DistributedCache 分布式缓存中,然后从DistributeCache中读取小表解析成 key/value 保存到内存中(可以放在Hash Map等容器中)。然后扫描大表中的每条记录的 k... 阅读全文
摘要:
1.Hadoop Streaming是为了方便不太熟悉java用户编写MR程序的工具。用户可以将任何可执行文件(C++)或者脚本(python,ruby)作为Mapper/Reducer, 提高了效率。Hadoop Steaming 要求用户编写的Mapper/Reducer从【标准输入】中读取数据... 阅读全文
摘要:
此文紧接Job流程:提交MR-Job过程。上一篇分析可以看出,MR-Job提交过程的核心代码在于 JobSubmitter 类的 submitJobInternal()方法。本文就由此方法的这一句代码开始分析://计算并确定 map 的个数,以及各个输入切片 Splits 的相关信息int maps... 阅读全文