pyspark:如何获取 spark 数据帧的 Spark SQLContext?

Posted

技术标签:

【中文标题】pyspark:如何获取 spark 数据帧的 Spark SQLContext?【英文标题】:pyspark: How to obtain the Spark SQLContext of the spark dataframe? 【发布时间】:2020-07-03 06:07:30 【问题描述】:

我有一个接受 spark DataFrame 的函数,我想获取 DataFrame 所在的 Spark 上下文。

原因是我想得到SQLContext 这样我就可以运行一些 SQL 查询

sql_Context = SQLContext(output_df.sparkContext())
sql_Context.registerDataFrameAsTable(output_df, "table1")
sql_Context.sql("select * from table1") # or some more complicated query

当然output_df.sparkContext() 不起作用。获取 Spark DataFrame 的 sparkContext 的正确方法是什么?

【问题讨论】:

【参考方案1】:

output_df.rdd.context 完成这项工作

【讨论】:

我已经编辑了答案。该属性实际上称为context 而不是sparkContext。对此感到抱歉【参考方案2】:

output_df.sql_ctx 就是答案

【讨论】:

以上是关于pyspark:如何获取 spark 数据帧的 Spark SQLContext?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 pyspark 管理跨集群的数据帧的物理数据放置?

如何在for和if循环中获取spark scala数据帧的最后一行的第一列值

PySpark:Spark数据框-将ImageSchema列转换为nDArray作为新列

Pyspark - 如何将多个数据帧的列连接成一个数据帧的列

在 Python/PySpark 中 Spark 复制数据框列的最佳实践?

如何使用 Pyspark 中的 Graphframes 和 Spark Dataframe 中的原始数据获取连接的组件?