2016-08-01 95 views
0

我可以使用pyspark和hivecontext创建,删除和修改表。我加载与我要发命令的列表,字符串格式,并把它们传递到这个函数:PySpark Hive查询未显示输出

def hiveCommands(commands, database): 
    conf = SparkConf().setAppName(database + 'project').setMaster('local') 
    sc = SparkContext(conf=conf) 
    df = HiveContext(sc) 
    f = df.sql('use ' + database) 
    for command in commands: 
     f = df.sql(command) 
     f.collect() 

它工作正常进行维护,但我想我蘸到脚趾的分析,和我不当我尝试发送像“描述表”这样的命令时,看不到任何输出。

我只是它需要在命令中并没有任何错误地执行它,但我看不到什么实际的查询输出。我可能需要弄乱我的.profile或.bashrc,但不是很确定。 Linux newby的一些东西。任何帮助,将不胜感激。

+0

为什么指望任何输出?这里没有单一的方法可以产生它。 – zero323

+0

我在循环结束时尝试了“print f”,它没有产生任何东西,所以我想也许有一种特殊的方法是需要的。 – firestreak

+0

我建议回到文档检查“SQLContext.sql”到底在做什么。那里没有什么用处。 – zero323

回答

1

呼叫show方法看到的结果:

for command in commands: 
    df.sql(command).show()