博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Distribute Cached 使用
阅读量:5863 次
发布时间:2019-06-19

本文共 2086 字,大约阅读时间需要 6 分钟。

在Kettle中说到Pentaho的MapReduce要用到它,就查了一下关于它的资料,以下是从官方查到的内容,记录一下。
DistributedCache: 一些比较小的需要共享的文件或者jar包,我们先存到hdfs上,然后在MapReduce线程当中进行共享,直接用了。
// Setting up the cache for the application          1. Copy the requisite files to the FileSystem:          $ bin/hadoop fs -copyFromLocal lookup.dat /myapp/lookup.dat       $ bin/hadoop fs -copyFromLocal map.zip /myapp/map.zip       $ bin/hadoop fs -copyFromLocal mylib.jar /myapp/mylib.jar     $ bin/hadoop fs -copyFromLocal mytar.tar /myapp/mytar.tar     $ bin/hadoop fs -copyFromLocal mytgz.tgz /myapp/mytgz.tgz     $ bin/hadoop fs -copyFromLocal mytargz.tar.gz /myapp/mytargz.tar.gz          2. Setup the application's JobConf:          JobConf job = new JobConf();    // #lookup.dat 表示给前面的这个文件取一个别名,类似sql里面的as别名一样     DistributedCache.addCacheFile(new URI("/myapp/lookup.dat#lookup.dat"),                                    job);     DistributedCache.addCacheArchive(new URI("/myapp/map.zip", job);     DistributedCache.addFileToClassPath(new Path("/myapp/mylib.jar"), job);     DistributedCache.addCacheArchive(new URI("/myapp/mytar.tar", job);     DistributedCache.addCacheArchive(new URI("/myapp/mytgz.tgz", job);     DistributedCache.addCacheArchive(new URI("/myapp/mytargz.tar.gz", job);          3. Use the cached files in the Mapper     or Reducer:          public static class MapClass extends MapReduceBase       implements Mapper
{ private Path[] localArchives; private Path[] localFiles; public void configure(JobConf job) { // Get the cached archives/files localArchives = DistributedCache.getLocalCacheArchives(job); localFiles = DistributedCache.getLocalCacheFiles(job); } public void map(K key, V value, OutputCollector
output, Reporter reporter) throws IOException { // Use data from the cached archives/files here // ... // ... output.collect(k, v); } }
查看代码了才知道其实它根本不是什么缓存,它只不过是在配置文件中的指定属性记录下相应的值,然后在mapreduce的时候,调用配置文件里面的属性值,然后取得需要的文件盒jar包。

转载地址:http://gafnx.baihongyu.com/

你可能感兴趣的文章
bootstrap框架的使用
查看>>
POJ 3130 How I Mathematician Wonder What You Are! 半平面交
查看>>
windows消息机制(MFC)
查看>>
代码中设置apk的安装路径
查看>>
刘宇凡:互联网思维之超出预期的用户体验
查看>>
Redis AOF持久化和RDB持久化区别
查看>>
Linux服务器安全策略
查看>>
让程序修改自己
查看>>
我的友情链接
查看>>
DotNetTextBox控件应用实例之简单留言簿
查看>>
Python写爬虫——抓取网页并解析HTML(修订篇)
查看>>
sed应用之(一)
查看>>
find命令学习
查看>>
IP逻辑地址的定义
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
TOOLS STORE OPENCART 2.X 主题模板 ABC-0628
查看>>
【linux端口号与PID的互相查询】
查看>>
ISO开发学习之路--第一篇--图像显示器制作(1)
查看>>
我的友情链接
查看>>