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

问题描述 投票:0回答:1

连接到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'

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

python-3.x apache-spark pyspark jupyter-notebook
1个回答
0
投票

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

%%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中。

© www.soinside.com 2019 - 2024. All rights reserved.