Python 从远程计算机执行长时间运行的配置单元查询

Python 从远程计算机执行长时间运行的配置单元查询,python,hadoop,ssh,hive,paramiko,Python,Hadoop,Ssh,Hive,Paramiko,我必须使用python脚本从本地服务器执行长时间运行(约10小时)的配置单元查询。我的目标配置单元服务器位于aws群集中 我试着用 pyhs2,执行(“”) 及 paramiko,exec_命令('hive-e“”) 在这两种情况下,我的查询都将在配置单元服务器中运行,并将成功完成。但问题是,即使在成功完成查询之后,我的父python脚本仍将继续等待返回值,并将在无限长的时间内保持可中断睡眠(Sl)状态 我是否可以使用pyhs2或paramiko使我的脚本正常工作?操作系统python中还有其他

我必须使用python脚本从本地服务器执行长时间运行(约10小时)的配置单元查询。我的目标配置单元服务器位于aws群集中

我试着用 pyhs2,执行(“
”)

paramiko,exec_命令('hive-e“
”)

在这两种情况下,我的查询都将在配置单元服务器中运行,并将成功完成。但问题是,即使在成功完成查询之后,我的父python脚本仍将继续等待返回值,并将在无限长的时间内保持可中断睡眠(Sl)状态


我是否可以使用pyhs2或paramiko使我的脚本正常工作?操作系统python中还有其他更好的选项吗?

正如我前面提到的,即使是在基于性能的环境中,我也面临类似的问题。 我的用例是我使用PYHS2模块来运行使用HiveTez执行引擎的查询。TEZ生成大量日志(基本上以秒为单位)。在STDOUT变量中捕获日志,并在查询成功完成后提供给输出。 克服的方法是在生成输出时将其作为流,如下所示:

    for line in iter(lambda: stdout.readline(2048), ""):
    print line

但为此,您必须使用本机连接到使用PARAMIKO或FABRIC的集群,然后通过CLI或beeline发出hive命令。

我不知道
pyhs2
,但是使用
PARAMIKO
,函数
exec_command()
将立即返回,因此我不明白您所说的继续等待返回值是什么意思。即使我在pyhs2和pyhive库方面也面临类似问题,有什么建议或解决方法吗?