Spark-PySpark 广播文件

目前项目需要,将使用Spark进行数据的统计和分析, 现对pyspark进行详细记录
声明, 由于spark发展日新月异, 在网上查看好多博客,都没说明spark版本, 做了不少弯路.本文记录的是Spark2.3.0版本的使用方法.

addPyFile(path)
为所有将在SparkContext上执行的任务添加一个a.py或者.zip的附件。这里path 参数可以使本地文件也可以使在HDFS中的文件,也可以是HTTP、HTTPS或者FTP URI。

addFile(path, recursive=False)
使用在每个节点上的Spark job添加文件下载。这里path 参数可以使本地文件也可以使在HDFS中的文件,也可以是HTTP、HTTPS或者URI。

# 讲model文件夹传到各个节点
sc = spark.sparkContext
sc.addFile("tools/",recursive=True)
sc.addFile("rule_set/",recursive=True)

在Spark的job中访问文件,使用L{SparkFiles.get(fileName)<pyspark.files.SparkFiles.get>}可以找到下载位置。

    原文作者:yunpiao
    原文地址: https://www.jianshu.com/p/b6eac35cee73#comments
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞