2017-02-22 102 views
1

我想在PySpark中建立一个分类模型。我对此模型的输入是选择查询或从Hive或Impala查看的结果。是任何方式将此查询包含在PySpark代码本身中,而不是将结果存储到我们的模型中的文本文件中PySpark和HIVE/Impala

回答

0

是的,您需要使用带有sparkContext的HiveContext。 这里是例子: -

sqlContext = HiveContext(sc) 
tableData = sqlContext.sql("SELECT * FROM TABLE") 
#tableData is a dataframe containing reference to schema of table, check this using tableData.printSchema() 
tableData.collect() #collect executes query and provide all rows from sql 

,或者你可以参考这里 https://spark.apache.org/docs/1.6.0/sql-programming-guide.html

+0

非常感谢快速回复。所以tableData将作为我的输入数据来建模?我的整个目标是一旦我每天运行pyspark logit回归代码,我的回归模型应该可以工作,并且我的模型的数据应该包括我的数据集中的最新更新记录(火车和测试) –

+0

@RRAMESHNAIK是表格数据将直接输入你的模型。 –

+0

非常感谢你Rakesh。还有一件事是我们必须将我们的数据转换为RDD。所以tableData.collect()的结果是一个原始数据或者它已经是一个RDD。我的意思是应该将其转换为RDD? –