连接到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'
有什么想法吗?是否可以将字符串变量的内容“回显”到单元格中?
答案 0 :(得分:1)
好像我找到了解决方案。 有一个函数可以将字符串转换为单元魔术命令:
%%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。
中