我试图将我的Spark JavaRDD保存到HDFS。该进程成功运行,但我看不到保存在HDFS中的文件。以下是我的代码。我在本地运行它。 (直接从IntelliJ运行main()方法。)从Spark中将JavaRDD保存到HDFS
public static void main(String[] args){
String file = "/Path/to/file/abc.csv";
SparkConf conf = new SparkConf().setAppName("test").setMaster("local");
JavaSparkContext sc = new JavaSparkContext(conf);
JavaRDD<String> lines = sc.textFile(file);
JavaRDD<String > filteredLines = lines.filter(new Function<String, Boolean>() {
@Override
public Boolean call(String s) throws Exception {
return s.contains("Hollywood");
}
});
filteredLines.coalesce(1).saveAsObjectFile("hdfs://localhost:9000/input");
sc.close();
}
我在Spark 2.0和Hadoop 2.7.2上运行此代码。在我的hadoop core-site.xml中配置为localhost:9000。我正在开始我的HDFS伪分布式集群,如hadoop文档中所述。
我在这里错过了什么?
所以你正在Hadoop设置的同一台机器上运行此代码?如果不尝试使用主机名一次。 – mrsrinivas
是的。从同一台机器运行代码。 – user7005835