Spark DataFrame数据写出

一、SparkSQL 统一API写出DataFrame数据

df.write.mode().format().option(K, V).save(PATH)
# mode, 传入模式字符串可选:append 追加,overwriter 覆盖,ignore 忽略,error 重复就报异常(默认)
# format, 传入格式字符串,可选:text,csv,json,parquet,orc,avro,jdbc
# 注意text源只支持单列df写出
# option 设置属性,如:.option("sep", ",")
# save 写出的路径,支持本地文件和HDFS
# Write text 写出,只能写出一个单列数据
df.select(F.concat_ws("---", "user_id", "movie_id", "rank", "ts")).\
    write.\
    mode("overwrite").\
    format("text").\
    save("../data/output/sql/text")
# Write CSV写出
df.write.mode("overwrite").\
    format("csv").\
    option("sep", ",").\
    option("header", True).\
    save("../data/output/sql/csv")
# Write Json写出
df.write.mode("overwrite").\
    format("json").\
    save("../data/output/sql/json")
# Write Parquet写出
df.write.mode("overwrite").\
    format("parquet").\
    save("../data/output/sql/parquet")
# 不给format,默认以parquet写出
df.write.mode("overwrite").save("../data/output/sql/default")

二、将数据写出到Hive表中

就是写入到被Hive元数据MetaStore服务管理的地方

df.write.mode("append|overwrite|ignore|error").saveAsTable(参数1,参数2)
# 参数1:表名,如果指定数据库,可以写:数据库.表名
# 参数2:格式,推荐使用parquet

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值