我使用的子进程来运行蟒蛇蜂巢的命令,但我得到空的结果。 如果我从蜂巢CLI运行相同的命令,我得到结果。
query = "set hive.cli.print.header=true;use mydb;describe table1;"
process = subprocess.Popen( ["ssh", "hadoop" , "hive", "-e", "%r" % query], stdout = subprocess.PIPE, stderr = subprocess.PIPE )
data = [line.split('\t') for line in process.stdout]
cols = list(itertools.chain.from_iterable(data[:1]))
df = pd.DataFrame(data[1:], columns = cols)
print "==>"+df+"<----"
它的返回空数据帧。
请在这件事上给予我帮助