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