【问题标题】:Read files from a VM from Databricks从 Databricks 从 VM 读取文件
【发布时间】:2022-02-21 15:04:31
【问题描述】:

我想从数据块中的 VM 读取文件。 我能够从 Databricks 驱动程序 SFTP 到 VM。但是我想使用 spark.read 阅读。 我试过了:

val read_input_df = spark.read
.format("com.springml.spark.sftp")
.option("host", "SFTP_HOST")
.option("username", "username")
.option("password", "password")
.option("fileType", "csv")
.load("/home/file1.csv")

出现错误 NoClassDefFoundError:scala/Product$class。 有没有人成功做到这一点?

【问题讨论】:

    标签: scala apache-spark databricks azure-databricks


    【解决方案1】:

    问题是您在使用 Scala 2.12 (7.x/8.x/9.x/10.x) 的 Databricks 集群运行时上使用为 Scala 2.11 编译的库。目前还没有 Spark 3.x/Scala 2.12 的发布版本,但是有一个pull request,您可以尝试自己编译和使用。

    另一种方法是先通过 SFTP 将文件复制到 DBFS(例如,here),然后照常打开。

    【讨论】:

    • 感谢亚历克斯的回复。我正在使用 scala 2.11。那么问题有解决办法吗?
    • 您使用的是什么 Databricks 运行时?因为错误肯定说明了 Scala 版本不匹配
    • 6.4 扩展支持
    • 您是否有任何其他库附加到集群?你在这个库中使用了什么 Maven 坐标
    • 我只有一个库:saurfang:spark-sas7bdat:3.0.0-s_2.12。 Maven 坐标:com.springml:spark-sftp_2.11:1.1.3
    猜你喜欢
    • 2020-12-25
    • 2022-10-21
    • 2021-11-21
    • 1970-01-01
    • 2021-12-04
    • 2020-03-23
    • 1970-01-01
    • 1970-01-01
    • 2020-06-28
    相关资源
    最近更新 更多