无法使用反射的方式创建 DataSet 主要是 Spark 中的 implicits 隐式转换包没有导入。当你创建的是 HiveContext 的时候就需要导入 HiveContext 的
比如:
val sc = new SparkContext(conf)
val hiveContext = new HiveContext(sc)
那么你就需要导入:
import hiveContext.implicits._
如果是 SparkSession 那么如下:
val sparkSrssion = SparkSession
.builder()
.appName("Spark SQL basic example")
.getOrCreate()
导入隐式转换包:
import sparkSrssion.implicits._

本文解释了在Spark中为何无法直接使用反射创建DataSet,并提供了正确的解决方案。关键在于正确导入隐式转换包,无论是使用HiveContext还是SparkSession,都需要确保对应的implicits包被导入,以便能够利用反射机制。
2万+

被折叠的 条评论
为什么被折叠?



