gpt4 book ai didi

java - 基于HADOOP_HOME自动加载HDFS Configuration?

转载 作者:可可西里 更新时间:2023-11-01 14:32:17 24 4
gpt4 key购买 nike

我正在开发一个 Java 程序来与已经运行的 hadoop 集群交互。该程序已将 HADOOP_HOME 作为环境变量传递给它。

基于这个值,我需要在开始与 HDFS/MapReduce 交互之前加载所有必要的配置资源。我认为我需要的文件基于 apache documentation .我当前的解决方案如下所示:

final String HADOOP_HOME = System.getEnv("HADOOP_HOME");
Configuration conf = new Configuration();

conf.addResource(new Path(HADOOP_HOME, "src/core/core-default.xml"));
conf.addResource(new Path(HADOOP_HOME, "src/hdfs/hdfs-default.xml"));
conf.addResource(new Path(HADOOP_HOME, "src/mapred/mapred-default.xml"));
conf.addResource(new Path(HADOOP_HOME, "conf/core-site.xml"));
conf.addResource(new Path(HADOOP_HOME, "conf/hdfs-site.xml"));
conf.addResource(new Path(HADOOP_HOME, "conf/mapred-site.xml"));

FileSystem hdfs = new FileSystem(conf);

有没有更简洁的方法来做到这一点?希望有一种不涉及显式设置每个资源的方法?

最佳答案

您使用 hadoop jar <your-jar> 运行您的 jar .这会自动设置所有内容。

关于java - 基于HADOOP_HOME自动加载HDFS Configuration?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9200749/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com