【发布时间】:2020-05-21 12:25:18
【问题描述】:
我正在从 JDBC 数据源创建两个 DataFrame,然后将它们都写入 S3 存储桶。写入 S3 的文件的时间戳相隔 20 秒,这告诉我这些操作不是并行执行的。出于测试目的,数据从相同的数据库/表和相同数量的行加载。如何让读写并行执行?
python 脚本在 AWS Glue 开发终端节点上运行,具有 2 个 DPU,标准工作器类型。
df1 = spark.read.format("jdbc").option("driver", driver).option("url", url).option("user", user).option("password", password).option("dbtable", query1).option("fetchSize", 50000).load()
df2 = spark.read.format("jdbc").option("driver", driver).option("url", url).option("user", user).option("password", password).option("dbtable", query2).option("fetchSize", 50000).load()
df1.write.mode("append").format("csv").option("compression", "gzip").option("timestampFormat", "yyyy.MM.dd HH:mm:ss,SSS").option("maxRecordsPerFile", 1000000).save("s3://bucket-name/test1")
df2.write.mode("append").format("csv").option("compression", "gzip").option("timestampFormat", "yyyy.MM.dd HH:mm:ss,SSS").option("maxRecordsPerFile", 1000000).save("s3://bucket-name/test2")
【问题讨论】:
标签: apache-spark aws-glue