PySpark的存储不同格式文件

PySpark的存储不同格式文件,如:存储为csv格式、json格式、parquet格式、compression格式、table

from __future__ import print_function, division
from pyspark import SparkConf, SparkContext
from pyspark.sql import SparkSession

## 启动 Spark (如果你已经启动就不需要)
spark = SparkSession.builder.master("local[2]").appName("test").enableHiveSupport().getOrCreate()
sc = spark.sparkContext

## 存储为csv格式
df_csv = spark.read.csv("../data/ratings.csv", header=True)
df_csv.show()
df_csv.write.csv('../output/rating.csv', header = True, mode = 'error') #保存数据

## 将文档保存在一个文件夹中
!ls -lh ../output/rating.csv   #根据数量保存多个文件
!head ../output/rating.csv/part-00001-aece805c-20a7-4225-b152-40316bc8fc5e-c000.csv   
df_csv.coalesce(1).write.csv('../output/rating2.csv', header = True)
!ls -lh ../output/rating.csv  

## 存储为json格式
df_csv.write.json('../output/rating.json',mode = 'overwrite')
!ls -lh ../output/rating.json   #根据数量保存多个文件
##注意:其中json的内存要比csv大(存储空间)

## 存储为parquet格式
df_csv.write.parquet('../output/rating.parquet',mode = 'overwrite')
!ls -lh ../output/rating.parquet  #根据数量保存多个文件

## 存储为compression格式---压缩
df_csv.write.csv('../output/rating_gzip.csv', header = True, compression = 'gzip')
!ls -lh ../output/rating_gzip.csv  #根据数量保存多个文件

## 存储为table
spark.sql('show tables').show()
df_csv.write.saveAsTable('rating_csv')
spark.sql("select * from ratings_csv").show()

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值