【问题标题】:Hadoop counting needed terms in all splitsHadoop 计算所有拆分中所需的术语
【发布时间】:2013-12-05 12:06:35
【问题描述】:

我想在 hadoop 框架中的所有拆分之间共享一些数据,更具体地说,我有一个文件,其中包含我要搜索的很多术语,并写下每个文档中出现的次数,但是问题是,如果单词没有出现在某些拆分中,我需要为这个文件返回 0,但是我无法将我正在搜索的术语传递给拆分中的所有节点的问题,谁能给我一些想法

【问题讨论】:

  • 您是否尝试过使用DistributedCache 与条款共享此文件?
  • 我会检查,我还是 Hadoop 新手,我会尽快通知你(谢谢)
  • 是的,这是我的问题的解决方案,接受 Hadoop 2.X 上的一些修改仍然需要完成。
  • 我已经发布了答案。如果通过修改您的意思是它已被弃用,也许它会对您有所帮助。

标签: hadoop parameters sharing


【解决方案1】:

通常,DistributedCache 是跨节点共享数据的方式。但是由于它已被弃用,请检查此answer

【讨论】:

  • 我以前检查过这个答案,但不幸的是,这个答案对我不起作用,我有一个空指针异常。这是我的工作;在驱动程序中我有以下内容:\ n job.addCacheFile(headers1);在设置中我添加了以下内容:\n URI[] cacheFiles = context.getCacheFiles();编译工作,但在执行期间我得到了 NullPointerException
  • 另一个想法,我想知道每个任务节点中保存的缓存文件在哪里(是在 HDFS 还是本地路径中),因为我发现它保存在 /tmp/hadoop-(userName )/mapred/local/(randomNumber)/,当我检查那个文件夹时,我发现它是空的
  • @MahmoudAl-Ewiwi 好的,但是要遵守网站的 QA 格式,您应该为您的新问题创建一个新问题。此外,如果此答案适用于解决您最初的问题(如何跨节点共享数据),则应将其标记为已接受。谢谢。
  • 新问题是here
猜你喜欢
  • 1970-01-01
  • 2015-03-30
  • 1970-01-01
  • 2022-01-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-11-23
相关资源
最近更新 更多