首页 > 系统服务 > 详细

分布式缓存DistributedCache

时间:2015-08-21 19:15:38      阅读:218      评论:0      收藏:0      [点我收藏+]

本文是对MR案例:Map-Join的解读。

在hadoop中,使用全局变量或全局文件共享的几种方法

  1. 使用Configuration的set()方法,只适合数据内容比较小的场景
  2. 将共享文件放在HDFS上,每次都去读取,效率比较低
  3. 将共享文件放在DistributedCache里,在setup()初始化一次后,即可多次使用,缺点是不支持修改操作,仅能读取 

使用 DistributedCache 来共享一些全局配置文件或变量时,需要注意:

  1. 共享文件必须要上传到hdfs上。【共享文件的默认访问协议为(hdfs://)
  2. 通过 job.addCacheFile(new Path(args[0]).toUri()); 方法加载共享文件。
  3. 在Mapper类的setup()初始化方法中读取并处理共享文件。【setup()方法整个Job执行过程中只执行一次】
  4. 在map()和reduce()方法中,可以使用处理后的共享文件

DistributedCache作用:①共享全局的缓存文件。②在执行一些join操作时,将小表放入cache中,来提高连接效率。

 

分布式缓存DistributedCache

原文:http://www.cnblogs.com/skyl/p/4748701.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!