2016-08-01 58 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()