spark magic - 输入sql context作为字符串

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spark magic - 输入sql context作为字符串相关的知识,希望对你有一定的参考价值。

连接到livy的火花在Jupyter中工作得很好,以下是火花魔法:

%%spark -c sql
select * from some_table

现在我如何使用字符串变量来查询表?以下不起作用:

query = 'select * from some_table'

下一个细胞:

%%spark -c sql
query

以下工作也不起作用:

%%spark -c sql
'select * from some_table'

有任何想法吗?是否可以将字符串变量的内容“回显”到单元格中?

答案

好像我找到了解决方案。有一个函数可以将字符串转换为单元魔术命令:

%%local

from IPython import get_ipython
ipython = get_ipython()

line = '-c sql -o df'
query = 'select * from some_table'
ipython.run_cell_magic(magic_name='spark', line=line, cell=query)

在此之后,查询位于pandas dataframe df中。

以上是关于spark magic - 输入sql context作为字符串的主要内容,如果未能解决你的问题,请参考以下文章

apache spark sql中的等效percentile_cont函数

发送到 Spark Cell Magic Dataframe 大小配置

org.apache.spark.sql.AnalysisException:无法解析给定的输入列

安全之防sql注入,xss攻击,CSRF攻击

Spark SQL 嵌套 JSON 错误“输入时没有可行的替代方案”

BigQuery:标准 SQL 和 PERCENTILE_CONT() 函数