getCacheFiles() 和 getLocalCacheFiles() 是否相同?

2024-01-22

As 获取本地缓存文件() http://hadoop.apache.org/docs/r2.3.0/api/org/apache/hadoop/mapreduce/JobContext.html#getLocalCacheFiles()已被弃用,我正在尝试寻找替代方案。获取缓存文件() http://hadoop.apache.org/docs/r2.3.0/api/org/apache/hadoop/mapreduce/JobContext.html#getCacheFiles()似乎是一个,但我怀疑它们是否相同。

你打电话时添加缓存文件() https://hadoop.apache.org/docs/stable/api/org/apache/hadoop/mapreduce/Job.html#addCacheFile(java.net.URI),HDFS中的文件将被下载到每个节点并使用getLocalCacheFiles()你可以得到本地化的文件路径,您可以从本地文件系统读取它。然而,什么getCacheFiles()返回的是 HDFS 中文件的 URI。如果您通过此 URI 读取文件,我怀疑您仍然从 HDFS 而不是本地文件系统读取。

以上是我的理解,不知道是否正确。如果是这样,有什么替代方案getLocalCacheFiles()?为什么 Hadoop 首先不赞成它?


它是开源的。你总能找到引入了@Deprectated: 犯罪735b50e8bd23f7fbeff3a08cf8f3fff8cbff7449 https://github.com/apache/hadoop/commit/735b50e8bd23f7fbeff3a08cf8f3fff8cbff7449,这是为了MAPREDUCE-4493 https://issues.apache.org/jira/browse/MAPREDUCE-4493。在 JIRA 的末尾,您会发现以下讨论:

Omkar Vinit Joshi 添加了一条评论 - 13/7/13 00:18
Robert Joseph Evans 如果我们弃用 getLocalCacheFiles 和 getCacheFiles jobContext() 那么用户将如何获取本地缓存文件 地图任务? YARN-916 是相关问题..谢谢。

罗伯特·约瑟夫·埃文斯添加了一条评论 - 2013年7月19日 15:27
奥姆卡·维尼特·乔希通过打开当前工作目录中的符号链接。在 YARN 之前 默认行为是不在当前工作中创建符号链接 指向分布式缓存中的项目的目录。如果你 您必须专门打开该选项并提供想要的链接 您想要的符号链接的名称。获取文件的唯一方法 没有符号链接的是调用 getLocalCacheFiles 和 getCacheFiles。在 YARN 的所有文件都会创建一个符号链接。的名称 文件/目录将是符号链接的名称。然而,它是 我想要的地方可能发生名称冲突 hdfs://foo/bar.zip 和 hdfs://bar/bar.zip。在 1.0 中,这两个都是 通过已弃用的 API 下载和访问,但在 YARN 中 将输出警告,并且仅下载其中之一。还 由于这些 API 的编写方式,映射器代码可能不会 知道只下载了其中之一,将无法找到 失踪的那一个然后爆炸。这就是为什么我反对它们而赞成 鼓励人们总是使用符号链接,这样行为就总是 持续的。

Omkar Vinit Joshi 添加了一条评论 - 2013 年 7 月 19 日 16:56
罗伯特·约瑟夫·埃文斯听起来不错……但是我们将把 基于文件名的限制..但这听起来合理考虑到 事实上,这将阻止地图代码中的潜在错误,并且用户可以 一定要对它们进行版本控制以避免它......谢谢......

所以你应该只打开该文件,它就会在那里。没有专用 API。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

getCacheFiles() 和 getLocalCacheFiles() 是否相同? 的相关文章

随机推荐

  • JasperReports 中的 PAGE_COUNT 未正确呈现...?

    我已经添加了页脚第 x 页 共 y 页 我的报告 但 PAGE COUNT 似乎不起作用 也许出现这个问题是因为我有很多子报表 I get Page 1 of 1 Page 2 of 0 Page 3 of 0 Page 4 of 0 有任
  • MySQL:两个时间戳之间的差异(以秒为单位)?

    是否可以计算MySQL中两个时间戳之间的差异并以秒为单位获得输出结果 Like 2010 11 29 13 16 55 2010 11 29 13 13 55应该给 180 秒 谢谢 我不认为接受的答案是一个好的通用解决方案 这是因为 UN
  • javascript中的尾部函数[重复]

    这个问题在这里已经有答案了 我想创建一个添加参数的函数 调用这个函数应该是 functionAdd 2 3 4 n 结果 2 3 4 n 我正在尝试这个 function myfunction num var summ num if num
  • 如何将代码从旧版本的xcode转移到最新版本?

    我有一个xcode我不久前制作的一个应用程序的项目 但它已经启动xcode 3 2 如何轻松地将项目转移到较新版本的xcode 我尝试手动将项目的每个文件传输到新版本 但不是很成功 有没有更简单 更自动化的方法来做到这一点 编辑 从 xco
  • 为什么函数 apply 会抱怨长列表?

    作为一些欧拉阵痛 http projecteuler net 我正在尝试编写一个埃拉托斯特尼筛法 https en wikipedia org wiki Sieve of Eratosthenes带有因式分解轮 到目前为止我的代码是 def
  • 如何从 Java servlet Web 容器正确实现 RabbitMQ RPC?

    我希望传入的 Java servlet Web 请求使用 RPC 方法调用 RabbitMQ 如上所述here http www rabbitmq com tutorials tutorial six java html 但是 我不确定如何
  • 使用 javascript/html 控制 iframe 内容

    在我的网页中 我有一个像这样的 iframe iframe 是同一网站上的页面 我的问题是 是否可以在具有 iframe 的页面上使用 javascript 来控制 thispage html 例如使用 javascript 函数 是的你可
  • 在 Meteor 移动应用程序 (cordova) 上登录 Facebook?

    我正在寻找使用 Meteor Cordova 构建移动应用程序 首先希望 Facebook 登录能够正常工作 显然默认的 account facebook 包不起作用 所以我环顾了一下气氛 只找到了 article4dev cordova
  • AWS代码构建列出其他帐户的s3存储桶

    I have my codebuild build sitting on Account A and s3 buckets on Account B I tried to set up a trusted IAM STS role on A
  • 如何将命令绑定到本地事件?

    我有一个应该捕获 KeyDown KeyUp 事件的表单 此代码在 NRE 中失败 因为它在我当前的视图上查找 KeyDown 控件 this BindCommand ViewModel vm gt vm KeyDown KeyDown 我
  • 在Python中计算给定纬度和经度数据的距离矩阵的有效方法

    我有纬度和经度的数据 我需要计算两个包含位置的数组之间的距离矩阵 我用过这个This https stackoverflow com questions 120283 working with latitude longitude valu
  • JavaScript 中的 onclick 事件函数

    我在带有按钮的 HTML 页面中有一些 JavaScript 代码 我有一个函数叫做click 处理onClick按钮的事件 按钮的代码如下
  • Shell 函数字符串变量在 While 循环和 case 后结果为空?

    为什么我没有得到echo User password is typo 结果 我如何在 while 循环之后得到最后的拼写错误结果 bin sh pass mes read sp Password passvar echo passvar p
  • 以特定方式对 Select 子句结果进行排序

    我需要帮助编写select子句查询 例如 假设我有一个这样的查询 select value from some table order by value asc 结果我得到这个 1 2 3 4 5 6 7 8 9 10 但我想写的一个特殊查
  • Django 安装错误(没有名为 Django 的模块)

    我使用的是 Mac OS X Mavericks 我安装 Django 时出错 我使用 pip install 命令安装了 Django 它位于下面的目录中 Requirement already satisfied use upgrade
  • 最佳布局算法[重复]

    这个问题在这里已经有答案了 我正在根据本文在 ASP NET 应用程序中实现 CSS Sprites 设置 http weblogs asp net zowens archive 2008 03 05 css sprite for asp
  • 禁用Oracle中的所有表约束

    如何使用单个命令禁用 Oracle 中的所有表约束 这可以针对单个表 表列表或所有表 最好避免写出临时假脱机文件 使用 PL SQL 块 您可以从 SQL Plus 运行它或将其放入包或过程中 与 USER TABLES 的连接是为了避免视
  • nuget 更新后样式变得混乱。

    我更新了默认 MVC 应用程序的多个 nuget 包 但我的页面样式弄乱了 看起来正在加载部分样式 但我无法找出问题所在 提前致谢 更新前我的导航栏 更新后我的导航栏 很遗憾听到这个消息 我也遇到了同样的问题 也花了我很多钱 太令人沮丧了
  • 帮我推理 F# 线程

    在闲逛一些 F 通过 MonoDevelop 时 我编写了一个例程 它用一个线程列出目录中的文件 let rec loop path string Array append path gt Directory GetFiles path g
  • getCacheFiles() 和 getLocalCacheFiles() 是否相同?

    As 获取本地缓存文件 http hadoop apache org docs r2 3 0 api org apache hadoop mapreduce JobContext html getLocalCacheFiles 已被弃用 我