我正在编写一个应用程序,我必须从S3下载一些二进制文件,每个任务都必须使用这些二进制文件对传入数据进行处理。
为了避免多次S3调用,我已经在我的驱动程序中下载了HDFS上的文件。
每个任务读取传入的数据并尝试从HDFS读取二进制文件并进行处理。但是,我无法这样做。我得到了nullpointerexception。
以下是我的代码中出现异常的行:
val fs = FileSystem.get(sqlContext.sparkContext.hadoopConfiguration)
任何人都可以解释我,任务节点可以访问HDFS文件,如果它们不是来自RDD。