在Python的环境下对Spark文件操作

在实际使用Spark做集群运算的时候我们会遇到很多实际的问题,特记录下来,本文主要讲解关于Spark读文件为RDD ,然后RDD转DataFrame,然后将RDD存为文件,以及如何保存DataFrame到文件 

from pyspark.sql import SparkSession

def CreateSparkContext():
    # 构建SparkSession实例对象
    spark = SparkSession.builder \
        .appName("SparkSessionExample") \
        .master("local") \
        .getOrCreate()
    # 获取SparkContext实例对象
    sc = spark.sparkContext
    return sc

def save_rdd_to_file(rdd,path):
    #保存RDD数据,这里指定的路径tmp2文件夹必须是不存在的,否则会报错,因为创建的时候会自动创建
    return rdd.saveAsTextFile(path)

def read_file_to_RDD(sc,files_path):
    return sc.textFile(files_path)

def transform_rdd_to_DF(rdd,columns_list):
    df=rdd.toDF(columns_list)
    return df 

def save_DF(df,path,sep="|"):
    #将df保存输出的时候coalesce(1)的意思就是将输出到文件都放在一起而不进行拆分,如果不指定在大数据量的情况下文件输出会自动拆分
    df.coalesce(1).write.csv(path=path, header=False, se
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值