更新时间:2021-09-08 来源:黑马程序员 浏览量:
     
创建Dataset可以通过SparkSession中的createDataset来创建,具体代码如下。
scala >val personDs=
spark.createDataset(sc.textFile("/spark/person.txt"))
personDs:org.apache.spark.sq1.Dataset[string]=[value:string]
scala>personDs.show()
+- - -  - - - - - - -- - - +
|        value             |
+- - -  - - - - - - -- - - +
|1 zhangsan 20             |
|2 lisi      29            |
|3 wangwu   25             |
|4 zhaoliu  30             |
|5 tianqi    35            |             
|6 jerry     40            |
+- - -  - - - - - - -- - - +
    从上述返回结果personDs 的属性可以看出,Dataset从已存在的RDD中构建成功,并且赋Fvalue为String类型。Dataset和DataFrame拥有完全在相同的成员函数,通过show方式可以展示personDs中数据的具体内容。
Dataset不仅能从RDD中构建,它与DataFrame也可以互相转换,DataFrame可以通过as[ElementType]方法转换为Dataset,同样Dataset 也可以使用toDF()方法转换为DataFrame,具体代码如下:
scala>spark.read.text("/spark/person.txt".as[String]
res14:org.apache.spark.sql.Dataset[string]=[value: string]
scala>spatk.read.text("/spark/person.txt").as[String].toDF()
Res15:org.apache.spark.sql.DataFrame=[value: string]
Detaset操作:与 DeuaFreme 大致相同,读者可查看官方API http://spark apache.org/dsats/api/scall index.html#org.apche,spark.sql.Dataset详细学习更多的Dataset操作。
    
1024首播|39岁程序员逆袭记:不被年龄定义,AI浪潮里再迎春天
2025-10-241024程序员节丨10年同行,致敬用代码改变世界的你
2025-10-24【AI设计】北京143期毕业仅36天,全员拿下高薪offer!黑马AI设计连续6期100%高薪就业
2025-09-19【跨境电商运营】深圳跨境电商运营毕业22个工作日,就业率91%+,最高薪资达13500元
2025-09-19【AI运维】郑州运维1期就业班,毕业14个工作日,班级93%同学已拿到Offer, 一线均薪资 1W+
2025-09-19【AI鸿蒙开发】上海校区AI鸿蒙开发4期5期,距离毕业21天,就业率91%,平均薪资14046元
2025-09-19