【问题标题】:Spark write Dataframes directly from Hive to local file systemSpark 将数据帧直接从 Hive 写入本地文件系统
【发布时间】:2019-05-14 02:13:17
【问题描述】:

这个问题几乎是这里要求的复制品:Writing files to local system with Spark in Cluster mode

但我的查询有点曲折。上面的页面使用 spark 将文件从 HDFS 直接写入本地文件系统,但在将其转换为 RDD 之后。

我正在寻找仅适用于 Dataframe 的选项;将海量数据转换为 RDD 会影响资源利用率。

【问题讨论】:

  • 写入HDFS后为什么不直接复制到本地文件系统?

标签: apache-spark rdd


【解决方案1】:

您可以使用以下语法直接将数据帧写入 HDFS 文件系统。

df.write.format("csv").save("path in hdfs")

更多详情请参考 spark 文档:https://spark.apache.org/docs/2.2.0/sql-programming-guide.html#generic-loadsave-functions

【讨论】:

  • 谢谢。但我的查询是从 HDFS 写入本地,你指的是完全相反的。但是,如果我提到这样的save("file:///path/to/local"),它将保存在本地。但它永远不会在本地写任何东西,但会创建一个目录。当我检查时,它实际上是在执行程序运行的数据节点上创建本地文件。我想我必须寻找将这些执行程序的数据带到驱动程序的东西。如果你知道怎么做,请告诉。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-11-21
  • 1970-01-01
  • 2012-01-15
  • 1970-01-01
  • 2016-11-02
  • 1970-01-01
  • 2016-06-07
相关资源
最近更新 更多