在 Spark 中通过 SFTP 读取文件
Reading files via SFTP in Spark
是否可以在 spark 中使用 SFTP 读取文件?
我尝试使用 val df = sc.textFile("sftp://user:password@host/home/user/sample.csv")
但出现以下错误
scala> df.count
java.io.IOException: No FileSystem for scheme: sftp
at org.apache.hadoop.fs.FileSystem.getFileSystemClass(FileSystem.java:2584)
at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2591)
at org.apache.hadoop.fs.FileSystem.access0(FileSystem.java:91)
at org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:2630)
有什么方法可以在 spark 中使用 sftp 读取文件吗?
目前看来是不可能的(Spark 1.6,最大配置文件hadoop-2.6)。 SFTP 支持将在 Hadoop 2.8 中引入(参见 HADOOP-5732)。
我们创建了一个非常简单的 spark SFTP 连接器来执行此操作。
这里是githublinkhttps://github.com/springml/spark-sftp
它也已发布到 spark-packages。 http://spark-packages.org/package/springml/spark-sftp
是否可以在 spark 中使用 SFTP 读取文件?
我尝试使用 val df = sc.textFile("sftp://user:password@host/home/user/sample.csv")
但出现以下错误
scala> df.count
java.io.IOException: No FileSystem for scheme: sftp
at org.apache.hadoop.fs.FileSystem.getFileSystemClass(FileSystem.java:2584)
at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2591)
at org.apache.hadoop.fs.FileSystem.access0(FileSystem.java:91)
at org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:2630)
有什么方法可以在 spark 中使用 sftp 读取文件吗?
目前看来是不可能的(Spark 1.6,最大配置文件hadoop-2.6)。 SFTP 支持将在 Hadoop 2.8 中引入(参见 HADOOP-5732)。
我们创建了一个非常简单的 spark SFTP 连接器来执行此操作。
这里是githublinkhttps://github.com/springml/spark-sftp
它也已发布到 spark-packages。 http://spark-packages.org/package/springml/spark-sftp