如何解决“sql(sqlContext ...)'已弃用”SparkR中的警告
问题描述:
我正在使用SparkR构建一些旧代码的新版本。在这样的如何解决“sql(sqlContext ...)'已弃用”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.
我在一个损失它在这里期待什么样的输入并希望解决这个问题。有没有人想过要在这里做什么?
答
由于Spark 2.0 sql
和其他函数的数量(如createDataFrame
)不需要SQLContext
实例。只是:
sql(paste0("use ", hive_db))
在内部,这将使用getSparkSession
检索会话对象。
完美工作。感谢您的解释。奇怪的对象,那些SparkContexts ... –