При работе в кластерном режиме, спарк никогда не будет писать в локальной области драйвера. Наилучшим вариантом будет collect()
или используйте toLocalIterator()
, если вы можете прочитать файл в буфере. Пожалуйста, попробуйте использовать приведенный ниже код и поделитесь, если он работает для вас?
import org.apache.hadoop.fs._
val conf = new Configuration()
val fs = path.getFileSystem(conf)
val hdfspath = new Path("hdfs:///user/home/testFile.dat")
val localpath = new Path("file:///user/home/test/")
fs.copyToLocalFile(hdfspath,localpath)