python-3.x - spark magic - 以字符串形式输入 sql 上下文
问题描述
在 Jupyter 中通过 livy 连接到 spark 效果很好,下面的 spark 魔法也是如此:
%%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 数据帧 df 中。
推荐阅读
- javascript - KendoUI 和纯 Javascript(无 jQuery)
- javascript - 评估与 Web 控制台
- oracle-apex-5.1 - Oracle Apex ORDS 17 独立安装
- websphere - IBM WebSphere Application Server (V9) 如何处理 HTTP 基本认证中的领域
- reactjs - 映射表记录时,如何在 React 中单击按钮时使一个表记录可编辑?
- php - 如何从 php apache 服务器向 ios 设备发送推送通知?
- javascript - 如何从我的 vuex 操作中分离 Firestore 侦听器?
- jquery - Ruby on Rails - 由于 Ajax 提交了两次表单
- mongodb - mongodb find.count({}) 显示的数据少于 find({
}) - macos - 为什么当我尝试使用 grep ether 过滤 ifconfig 结果以仅显示媒体显示的 MAC 地址时?