Scala spark任务能否访问非RDD的HDFS文件

Scala spark任务能否访问非RDD的HDFS文件,scala,apache-spark,hdfs,rdd,Scala,Apache Spark,Hdfs,Rdd,我正在编写一个应用程序,其中我必须从S3下载一些二进制文件,每个任务都必须使用这些二进制文件处理传入的数据 为了避免多次S3调用,我在驱动程序中下载了HDFS上的文件 每个任务读取传入的数据,并尝试从HDFS读取二进制文件并进行处理。但是,我不能这样做。我得到了nullpointerexception 以下是代码中出现异常的行: val fs = FileSystem.get(sqlContext.sparkContext.hadoopConfiguration) 有人能解释一下,如果HDFS

我正在编写一个应用程序,其中我必须从S3下载一些二进制文件,每个任务都必须使用这些二进制文件处理传入的数据

为了避免多次S3调用,我在驱动程序中下载了HDFS上的文件

每个任务读取传入的数据,并尝试从HDFS读取二进制文件并进行处理。但是,我不能这样做。我得到了nullpointerexception

以下是代码中出现异常的行:

val fs = FileSystem.get(sqlContext.sparkContext.hadoopConfiguration)

有人能解释一下,如果HDFS文件不在RDD中,任务节点可以访问这些文件。

这一行是在传递给RDD转换的函数中调用的,以便序列化并在执行器上执行吗?@Neha:如果这些文件在HDFS中可用,为什么不使用
sc.binaryFiles
sc.binaryRecords
method@Tzar是的…这条线在每个transformation@Shankar,该二进制文件在本质上不是分布式的..这是模型文件..我不能使用sc.binaryFiles您说的“非RDD的HDFS文件”是什么意思??这一行是在传递给RDD转换的函数中调用的,以便序列化并在执行器上执行吗?@Neha:如果文件在HDFS中可用,为什么不使用
sc.binaryFiles
sc.binaryRecords
method@Tzar是的…这条线在每个transformation@Shankar,那个二进制文件在本质上不是分布式的。那是模型文件。我不能使用sc.binaryfiles。你说的“不是RDD的HDFS文件”是什么意思??