问题标签 [rhadoop]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2200 浏览

r - mr 中的错误(map = map,reduce = reduce,combine = combine,vectorized.reduce,:hadoop 流式传输失败,错误代码为 1 调用:mapreduce -> mr

我正在运行以下 Rscript gdp.R

并且无法克服 mapreduce 函数中的以下错误:

流式传输命令失败!mr 中的错误(map = map,reduce = reduce,combine = combine,vectorized.reduce,:hadoop 流式传输失败,错误代码为 1 调用:mapreduce -> mr

我的标准错误日志如下:

任何建议将不胜感激

谢谢-S

注意:我已经在 stderr 日志中引用了错误,它指定了系统变量 HADOOP_CMD 未找到。有没有办法可以将 HADOOP 系统环境变量导出到 R?另请注意,我在脚本的开头使用 Sys.getenv(c("HADOOP_HOME", ...)) ,但这似乎不像 stderr 建议的那样工作

请注意,我已经在 ~/.bash_profile 中为 HADOOP 环境变量添加了以下导出命令

0 投票
1 回答
480 浏览

rhadoop - rmr2 正在从我的映射器中复制密钥

由于某种原因,rmr2 似乎在某些情况下不正确地处理键,为每个值复制键。

我在 Windows 7 下使用 R 版本 3.1.1,即 64 位版本。我的 rmr 版本是 rmr2_2.3.0。

我通过设置 rmr.options(backend="local") 使用本地模式。

我有一个非常简单的文本文件,其中包含以下内容:

我可以使用以下 map-reduce 作业轻松检索这些内容,其中 f 是我的文件的路径:

正如预期的那样,输出是:

我可以运行另一个 map reduce 作业,它将行的长度分配为要传递给 reducer 的键:

正如预期的那样,输出是:

我可以取第一个字符,而不是值的长度:

再次如预期的那样,输出是:

到目前为止,一切都很好。现在我想拆分值并使用第一个字段。我的代码是:

这次的输出,出乎意料的是:

我希望看到与使用子字符串的前一个示例相同的输出,但键向量不是“a”“b”“c”“d”“e”,它只是第一个键重复 5 次,“a” “一个”“一个”“一个”“一个”。

我可以更改我想要获取的字段,例如更改为第三个字段:

再次重复第一个键,而不是每个值的唯一键。输出是:

我对此束手无策。怎么了?这是 rmr2 中的错误,还是什么?

更新:我在运行 rmr2_3.1.1 的 Ubuntu 12.04 系统上尝试了相同的示例,并获得了几乎相同的结果。对于返回预期结果的示例,我得到的唯一区别是 key,val 对的顺序与文件中的顺序不同(这是可以理解的)。对于有问题的示例,我得到了更奇怪的结果:

0 投票
1 回答
205 浏览

rhadoop - 使用 hdfs.file() 会出错:尝试应用非函数

我刚刚安装了 rhdfs 并想检查它是如何工作的......

我尝试了以下代码:

我面临一个错误:

任何人都可以帮我解决问题吗?

0 投票
0 回答
163 浏览

r - 如何使用 R mapreduce 对训练数据集进行降维?

我正在使用 RHadoop rhdfs 包对具有大量列的 CSV 输入文件执行降维。输出将是所有列的选定子集。为简单起见,我尝试仅获取 CSV 文件的前 5 列。

我正在尝试应用 mapreduce 函数来使用 MR 框架并使用 HDFS 存储而不是任何内存处理来执行降维。

我的代码如下:

它需要一个带有预测列和标签列的训练数据集作为最后一个。我正在尝试将预测变量的数量从 100 个减少到 5 个,cbind并将类标签列减少为减少的预测变量,最后将减少的训练数据集存储到 hdfs 中。

现在,我将 hdfs 文件按名称存储在本地矩阵中,local.matrix这需要我将整个文件存储在内存中。有没有办法可以通过使用绕过内存local.matrix

to.dfs(local.matrix)然后将 local.matrix 的 HDFS 存储位置传递hdfsWritePathtransfer.csvfile.hdfs.to.hdfs.reduced function?

0 投票
2 回答
1915 浏览

hadoop - RHadoop减少作业失败

我正在关注 RHadoop 教程https://github.com/RevolutionAnalytics/rmr2/blob/master/docs/tutorial.md并运行第二个示例,但我遇到了无法解决的错误。代码如下:

map作业成功,reduce作业失败,部分错误信息如下:

由于任务失败,作业失败。failedMaps:0 failedReduces:1

有人可以帮忙吗?我无法从这里继续前进。谢谢。

0 投票
1 回答
3372 浏览

r - 如何将 HDFS 文件输入到 R mapreduce 中进行处理并将结果放入 HDFS 文件中

我有一个类似于stackoverflow中的以下链接的问题

R+Hadoop:如何从 HDFS 读取 CSV 文件并执行 mapreduce?

我想从 HDFS 中的位置“/somnath/logreg_data/ds1.10.csv”读取文件,将其列数从 10 减少到 5,然后写入另一个位置“/somnath/logreg_data/reduced/ds1.10 .reduced.csv”在 HDFS 中使用下面的 transfer.csvfile.hdfs.to.hdfs.reduced函数。

函数定义为

但我收到一个错误

或者

当我尝试使用以下命令从 hdfs 加载文件时,出现以下错误:

任何帮助将不胜感激

谢谢

0 投票
1 回答
850 浏览

r - rmr.options 中的 HDFS 临时目录

我是 Hadoop 的新手,如果这个问题很愚蠢,请原谅我。我有一个本地单节点集群。我正在尝试在 RHadoop 中执行一个简单的 MapReduce 作业,并收到以下消息:

我应该怎么做才能设置所有这些选项?hdfs.tempdir 的路径应该如何?我想将临时目录设置为(如果我正确理解 R 对我的要求)):

顺便说一句,我已经尝试过

请帮忙。非常感谢。

升级版:

也试过:

没有帮助。

0 投票
0 回答
1043 浏览

r - FUN(X[[2L]], ...) 中的错误:抱歉,参数类型“NA”不明确或不受支持

我正在尝试使用以下 R 脚本在位于“hdfs://:/somnath/merged_train/part-m-00000”的 HDFS 数据文件上使用 RHadoop(rmr2、rhdfs 包)构建逻辑回归模型,然后使用测试模型位于“hdfs://:/somnath/merged_test/part-m-00000”的测试 HDFS 数据文件。

我们使用 CDH4 发行版,Yarn/MR2 与 Hadoop-0.20 支持的 MR1 并行运行。并使用 hadoop-0.20 mapreduce 和 hdfs 版本将以下 RHadoop 脚本作为 Sys.setenv 命令运行,如下所示。

但是,每当我运行脚本时,我都会遇到以下错误,几乎没有运气绕过它。如果有人指出这个错误的可能原因,我将不胜感激,这似乎是由于 R 中 lapply 调用的错误方式而不处理 NA 参数。

下面是我的 R 脚本:

注意:我在 root ~/.bash_profile 中为 HADOOP 设置了以下环境变量,如下所示

样本训练数据集

样本测试数据集

0 投票
0 回答
223 浏览

r - 如何将 HDFS 文件作为输入矩阵读取 - 出现错误“FUN(X[[2L]], ...) 中的错误:抱歉,参数类型‘NA’不明确或不受支持。”

当我在 R 脚本中读取 HDFS 文件作为 mapreduce 函数(在 rmr2 包中)的输入矩阵时,我收到以下错误。

任何人都可以建议如何读取存储在 HDFS 中的文件作为输入矩阵吗?任何有见地的帮助都将不胜感激并得到相应的奖励。

提前致谢, 索姆纳特

0 投票
2 回答
3938 浏览

hadoop - 如何更改 Hadoop 集群中的最大容器容量

我按照以下说明在 HORTONWORKS SANDBOX 上安装了 RHADOOP: http ://www.research.janahang.com/install-rhadoop-on-hortonworks-hdp-2-0/

一切似乎都已正确安装。但是当我在底部运行测试脚本时出现错误,似乎 - (REDUCE 所需的能力超过集群中支持的最大容器能力。终止作业。reduceResourceReqt:4096 maxContainerCapability:2250)很可能是我的问题。

如何设置 maxcontainercapability ?或解决这个问题?欢迎任何帮助。谢谢

错误输出在这里: