Pau*_*vis 1 amazon-s3 apache-spark boto3 pyspark
如何将S3存储桶中的一堆文件加载到单个PySpark数据帧中?我在EMR实例上运行。如果文件是本地文件,则可以使用SparkContext textFile方法。但是,当文件位于S3上时,如何使用boto3将多个类型(CSV,JSON等)的多个文件加载到单个数据框中进行处理?
Spark本机使用Hadoop API(而非Boto3)从S3读取。并且textFile用于读取RDD,而不是DataFrames。另外,请勿尝试将两种不同的格式加载到单个数据帧中,因为您将无法始终解析它们
我建议使用
csvDf = spark.read.csv("s3a://path/to/files/*.csv")
jsonDf = spark.read.json("s3a://path/to/files/*.json")
Run Code Online (Sandbox Code Playgroud)
从那里,您可以使用SparkSQL过滤和合并数据框。
| 归档时间: |
|
| 查看次数: |
5339 次 |
| 最近记录: |