sparksession文本和文本文件方法之间的区别?

时间:2019-03-28 11:58:47

标签: scala apache-spark dataframe dataset spark-shell

我正在使用Spark Scala Shell,并尝试从文本文件创建数据框和数据集。

要从文本文件获取数据集,有两个选项,text和textFile方法如下:

scala> spark.read.
csv   format   jdbc   json   load   option   options   orc   parquet   schema   table   text   textFile

这是我从这两种方法中获取数据集和数据框的方式:

scala> val df = spark.read.text("/Users/karanverma/Documents/logs1.txt")
df: org.apache.spark.sql.DataFrame = [value: string]

scala> val df = spark.read.textFile("/Users/karanverma/Documents/logs1.txt")
df: org.apache.spark.sql.Dataset[String] = [value: string]

所以我的问题是两种文本文件方法之间有何区别?

什么时候使用哪种方法?

1 个答案:

答案 0 :(得分:1)

我已经注意到它们几乎具有相同的功能,

spark.read.text将数据转换为Dataset(它是数据的分布式集合),而spark.read.textFile将数据转换到Dataset[Type],它由组织为命名列的数据集组成。

希望有帮助。