如何在pyspark sql中保存表?

Posted

技术标签:

【中文标题】如何在pyspark sql中保存表?【英文标题】:How to save a table in pyspark sql? 【发布时间】:2016-12-09 22:30:06 【问题描述】:

我想将生成的表格保存到 csv、文本文件或类似文件中,以便能够使用 RStudio 执行可视化。

我正在使用 pyspark.sql 在 hadoop 设置中执行一些查询。我想将我的结果保存在 hadoop 中,然后将结果复制到我的本地驱动器中。

myTable = sqlContext.sql("SOME QUERIES")
myTable.show() # Show my result
myTable.registerTempTable("myTable") # Save as table
myTable.saveAsTextFile("SEARCH PATH") # Saving result in my hadoop

这会返回: AttributeError: 'DataFrame' 对象没有属性 'saveAsTextFile'

这就是我通常只使用 pyspark 时的做法,即不使用 pyspark.sql。

然后我复制到本地驱动器

hdfs dfs –copyToLocal SEARCH PATH

谁能帮帮我?

【问题讨论】:

【参考方案1】:

您可以将DataFrameWriter 与其中一种受支持的格式一起使用。以 JSON 为例:

myTable.write.json(path)

【讨论】:

谢谢!按理工作:) 有没有办法把它作为 csv 来代替?我尝试了 myTable.write.csv(path),但它没有用。我正在使用火花 1.6。

以上是关于如何在pyspark sql中保存表?的主要内容,如果未能解决你的问题,请参考以下文章

如何以 xml 格式保存 pyspark sql DataFrame

如何在 pyspark 中使用“不存在”的 SQL 条件?

即使使用 PySpark 存在表,如何写入 Microsoft SQL Server 表

找不到pyspark数据框保存到配置单元表

在 pyspark 中加载 SQL 查询?

如何在 PySpark 中从表中导入数据时排除 Header