如何解决" sql(sqlContext ...)'已被弃用" SparkR中的警告

时间:2017-09-26 19:48:47

标签: r apache-spark sparkr

我正在使用SparkR构建一些旧代码的新版本。像这样的街区

hiveContext <- sparkRHive.init(sc)
hive_db = 'our_database'
db <- sql(hiveContext, paste0("use ", hive_db))

我告诉'sparkRHive.init' is deprecated. Use 'sparkR.session' instead.所以,好吧,我现在有:

hiveContext <- sparkR.session(sc) 
hive_db = 'our_database'
db <- sql(hiveContext, paste0("use ", hive_db))

这样运行,但现在Spark警告'sql(sqlContext...)' is deprecated. Use 'sql(sqlQuery)' instead.我不知道它在这里期待什么样的输入,并希望解决这个问题。有没有人想出在这做什么?

1 个答案:

答案 0 :(得分:2)

由于Spark 2.0 sql和其他函数(如createDataFrame)的数量不需要SQLContext实例。只是:

sql(paste0("use ", hive_db))

在内部,这将使用getSparkSession来检索会话对象。