【问题标题】:Read local files into spark dataframe in zeppelin running on a docker container在 docker 容器上运行的 zeppelin 中将本地文件读入 spark 数据帧
【发布时间】:2019-04-19 03:51:08
【问题描述】:

我正在尝试在笔记本电脑上使用 apache zeppelin docker image 在 Zeppelin 中编写 Spark 代码。除了从本地磁盘读取文件外,一切都按预期工作,例如当我尝试将 csv 文件读入 Spark 数据帧时

val df = spark.read.csv("/User/myname/documents/data/xyz.csv")

我收到以下错误:

org.apache.spark.sql.AnalysisException: Path does not exist: file:/User/myname/documents/data/xyz.csv;
  at org.apache.spark.sql.execution.datasources.DataSource$$anonfun$14.apply(DataSource.scala:382)
  at org.apache.spark.sql.execution.datasources.DataSource$$anonfun$14.apply(DataSource.scala:370)
  at scala.collection.TraversableLike$$anonfun$flatMap$1.apply(TraversableLike.scala:241)
  at scala.collection.TraversableLike$$anonfun$flatMap$1.apply(TraversableLike.scala:241)
  at scala.collection.immutable.List.foreach(List.scala:381)
  at scala.collection.TraversableLike$class.flatMap(TraversableLike.scala:241)
  at scala.collection.immutable.List.flatMap(List.scala:344)
  at org.apache.spark.sql.execution.datasources.DataSource.resolveRelation(DataSource.scala:370)
  at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:152)
  at org.apache.spark.sql.DataFrameReader.csv(DataFrameReader.scala:415)
  at org.apache.spark.sql.DataFrameReader.csv(DataFrameReader.scala:352)
  ... 47 elided

【问题讨论】:

    标签: docker apache-spark apache-zeppelin


    【解决方案1】:

    我想我找到了答案: 我拉取了 docker 镜像(我使用了下面的,但你可以更改它)

    docker pull skymindops/zeppelin-dl4j

    然后跑:

    docker run -it --rm -p 7077:7077 -p 8080:8080 --privileged=true -v $PWD/logs:/logs -v $PWD/notebook:/notebook -v $PWD/data:/data \
    -e ZEPPELIN_NOTEBOOK_DIR='/notebook' \
    -e ZEPPELIN_LOG_DIR='/logs' \
    skymindops/zeppelin-dl4j:latest
    

    现在可以从数据文件夹中读取文件了:

    val df = spark.read.option("header", "true").csv("/data/xyz.csv")

    请注意,我不需要该图像中已有的笔记本。

    【讨论】:

      猜你喜欢
      • 2017-05-14
      • 1970-01-01
      • 2016-01-03
      • 2020-02-29
      • 2018-07-14
      • 2017-03-19
      • 2021-10-01
      • 1970-01-01
      • 2022-01-22
      相关资源
      最近更新 更多