Spark 2.0 Scala - RDD.toDF()

Car*_*arl 15 scala apache-spark

我正在使用Spark 2.0 Scala.我可以使用toDF()方法将RDD转换为DataFrame.

val rdd = sc.textFile("/pathtologfile/logfile.txt")
val df = rdd.toDF()
Run Code Online (Sandbox Code Playgroud)

但是对于我的生活,我无法在API文档中找到它的位置.它不属于RDD.但它在DataSet下(链接1).但是我有一个RDD而不是DataSet.

我也看不出它的含义(链接2).

所以请帮助我理解为什么可以为我的RDD调用toDF().这个方法从哪里继承?

Rap*_*oth 13

它来自这里:

Spark 2 API

说明:如果导入sqlContext.implicits._,你要转换隐式方法RDD,以DataSetHolder(rddToDataSetHolder),然后调用toDFDataSetHolder


Dan*_*lVL 5

是的,您应该像这样导入 sqlContext 隐式:

val sqlContext = //create sqlContext

import sqlContext.implicits._

val df = RDD.toDF()
Run Code Online (Sandbox Code Playgroud)

在 RDD 中调用“toDF”之前