通过外部存储文件创建Dataset, Dataset只支持纯文本文件

1. 注意

1. 通过外部存储文件创建Dataset,dataset只支持纯文本文件。
2. 虽然说Dataset不支持其他格式的结构化文件,但是可以把结构化文件创建成DataFrame,然后把DataFrame转换Dataset。
3. textFile算子创建出来的Dataset是一个字符串类型,只有一列,一列就是文件中一行数据。

2. 代码

package SparkSQL.DataSet
import org.apache.spark.SparkConf
import org.apache.spark.sql.{DataFrame, Dataset, Row, SparkSession}
/**
* 通过外部存储文件创建Dataset dataset只支持纯文本文件
* 虽然说Dataset不支持其他格式的结构化文件,但是我们可以曲线救国
* 向把结构化文件创建成DataFrame 然后把DataFrame转换Dataset
* textFile算子创建出来的Dataset是一个字符串类型,只有一列 一列就是文件中一行数据
*/
object ByFileCreateDataset {
def main(args: Array[String]): Unit = {
val sparkConf = new SparkConf().setAppName("demo01").setMaster("local[*]")
val session = SparkSession.builder().config(sparkConf).getOrCreate()
val map =Map("mode"->"FAILFAST","inferSchema"->"true")
val dataset: Dataset[String] = session.read.options(map).textFile("hdfs://node1:9000/student.txt")
dataset.show()
/*
val frame: DataFrame = session.read.options(map).csv("xxx")
val value: Dataset[Row] = frame.as("列名alias")
*/
}
}
posted @   jsqup  阅读(46)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示