如何在awsglue中使用pyspark处理多个csv?

问题描述 投票:0回答:1

我是 pyspark 和 awsglue 的新手。我根据我看到的示例编写了小脚本,将 csv 文件读取为动态 pyspark 框架。我想知道,如何读取多个 csv 文件或特定 s3 路径中的所有 csv 文件,并将它们组合起来进行一些处理,然后将它们写回(可能到不同的 csv 文件)。

我知道 pyspark 旨在处理大量数据,但是 pyspark 动态框架可以处理的 csv 数据行数或数据量是否有限制?

我正在尝试读取多个输入文件,将它们组合起来对数据进行一些处理,然后将它们写回不同的输出文件。

from awsglue.transforms import *
from pyspark.context import SparkContext
from awsglue.context import GlueContext
from awsglue.job import job

sparkC = SparkContext.getOrCreate()
glueC = GlueContext(sparkC)
spark_session = glueC.spark_session
glue_job = Job(glueC)

t = glueC.create_dynamic_frame_from_options(connection_type="s3", connection_options={"paths":["s3://somebucket/inputfolder/"]}, format="csv")

...
python amazon-web-services csv pyspark aws-glue
1个回答
0
投票

您是否尝试在配置中添加 recurse 参数,如下所示:

t = glueC.create_dynamic_frame_from_options(
    connection_type="s3", 
    connection_options={
        "paths":["s3://somebucket/inputfolder/"]
        "recurse" : True
    }, 
format="csv")
© www.soinside.com 2019 - 2024. All rights reserved.