本帖最后由 pig2 于 2017-12-15 18:10 编辑
问题导读
1.DataFrame如何保存为表?
2.saveAsTable的作用是什么?
DataFrame可以创建临时视图,那么如果关闭程序或则spark-shell这些就找不到了,那么如果我们长久的保存这些数据该如何解决。这时候可以使用saveAsTable持久化表,也就是保存为表。
我们通过下面代码实现:
[mw_shl_code=scala,true]import spark.implicits._
val popleDF=spark.read.json("/people.json")
peopleDF.write.saveAsTable("people")[/mw_shl_code]
其中people.json为下面内容:需要上传至hdfs根路径下
[mw_shl_code=text,true][
{
"name": "aboutyun",
"age": "4"
},
{
"name": "baidu",
"age": "5"
}
][/mw_shl_code]
保存后,如果使用的是spark内嵌的hive本地metadata,可以在spark-warehouse中看到
官网提供了可以指定路径的方法:
[mw_shl_code=scala,true]df.write.option("path", "/some/path").saveAsTable("t")[/mw_shl_code]
这个方法尝试了下,可以创建成功,但是文件却找不到,感兴趣的大家可以试试。
相关文章:
spark2 sql读取json文件的格式要求
http://www.aboutyun.com/forum.php?mod=viewthread&tid=23478
spark2 sql读取json文件的格式要求续:如何查询数据
http://www.aboutyun.com/forum.php?mod=viewthread&tid=23483
spark2 sql编程之实现合并Parquet格式的DataFrame的schema
http://www.aboutyun.com/forum.php?mod=viewthread&tid=23518
spark2 sql编程样例:sql操作
http://www.aboutyun.com/forum.php?mod=viewthread&tid=23501
spark2 sql读取数据源编程学习样例1:程序入口、功能等知识详解
http://www.aboutyun.com/forum.php?mod=viewthread&tid=23484
spark2 sql读取数据源编程学习样例2:函数实现详解
http://www.aboutyun.com/forum.php?mod=viewthread&tid=23489
spark2 sql编程之实现合并Parquet格式的DataFrame的schema
http://www.aboutyun.com/forum.php?mod=viewthread&tid=23518
|