You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何获取Dataproc HDFS中文件的路径/URI 以运行对应M/R作业

Dataproc HDFS文件路径获取及MR作业操作方案

一、获取HDFS文件的路径/URL

Dataproc集群的HDFS路径分为两种常用格式,可根据使用场景选择:

  • 集群内通用短路径:格式为hdfs:///[文件在HDFS的绝对路径],无需指定名节点地址,集群内部所有节点均可自动解析。比如文件存放在HDFS的/user/root/input/log.txt,对应路径为hdfs:///user/root/input/log.txt
  • 显式名节点全路径:格式为hdfs://[主节点主机名/IP]:8020/[文件绝对路径],Dataproc默认HDFS名节点端口为8020,集群内部主节点主机名默认为master,示例路径为hdfs://master:8020/user/root/input/log.txt

如果不清楚目标文件的绝对路径,可登陆主节点执行命令查询:
hdfs dfs -ls -R /[待搜索的父目录路径]
搜索结果每行末尾的内容就是对应文件的HDFS绝对路径。

二、基于HDFS文件运行MR作业的步骤

前置检查

首先确认文件路径可正常访问,执行如下命令:
hdfs dfs -test -e [你拿到的HDFS文件路径] && echo "路径可用" || echo "路径不存在"
如果返回路径不存在,需核对路径拼写和文件权限。

作业运行操作

  • 运行Hadoop官方示例MR作业(比如wordcount),直接执行如下命令:
hadoop jar /usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar wordcount \
[输入文件的HDFS路径] \
[输出目录的HDFS路径]

注意:输出目录必须是未存在的目录,Hadoop会自动创建该目录存储结果,提前存在会触发作业报错。

  • 运行自定义MR作业jar包,首先将jar包上传到主节点本地或者HDFS,再执行如下命令:
hadoop jar [你的jar包本地路径/HDFS路径] [MR主类的全限定名] \
[输入文件的HDFS路径] \
[输出目录的HDFS路径] \
[可选:自定义MR参数]

比如要指定Reduce任务数量为3、Map任务内存为2G,可以调整命令为:

hadoop jar ./my-mr-job.jar com.example.WordCount \
hdfs:///input \
hdfs:///output \
-D mapreduce.job.reduces=3 \
-D mapreduce.map.memory.mb=2048

结果验证

作业运行过程中可执行yarn application -list查看作业运行状态,运行完成后执行hdfs dfs -cat [输出目录路径]/*即可查看MR作业的运行结果。

内容的提问来源于stack exchange,提问作者vamper1234

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 06:15:04