我正在编写一个应用程序,其中我必须从s3下载一些二进制文件,并且每个任务都必须使用这些二进制文件来处理传入的数据。
为了避免多次调用s3,我在驱动程序中下载了hdfs上的文件。
每个任务读取传入的数据,并尝试从hdfs读取二进制文件并进行处理。但是,我不能这样做。我得到了nullpointerexception。
下面是代码中出现异常的行:
val fs = FileSystem.get(sqlContext.sparkContext.hadoopConfiguration)
谁能解释一下,如果hdfs文件不在rdd中,任务节点可以访问它们吗。
暂无答案!
目前还没有任何答案,快来回答吧!