AWS Glue,在加载到框架之前进行数据过滤,命名s3对象

时间:2018-04-27 00:20:21

标签: postgresql amazon-s3 rds aws-glue

我有3个问题,针对以下情况: 我正在尝试将我的历史记录从RDS postgresql迁移到S3。我的数据库中有大约十亿行数据, Q1)有没有办法告诉aws胶水作业要加载哪些行?例如,我希望它从某个日期开始加载数据? PostgreSQL数据源没有书签功能,

Q2)处理完数据后,胶水作业会自动为s3输出对象创建一个名称,我知道我可以在DynamicFrame写入中指定路径,但是我可以指定对象名称吗?如果是这样,怎么样?我找不到这个选项。

Q3)我在一个包含100行数据的样本表上尝试了我的胶水作业,它自动将输出分成20个文件,每个文件中有5行,如何在作业中指定批量大小? / p>

提前致谢

1 个答案:

答案 0 :(得分:0)

  1. Glue支持pushdown predicates功能,但目前它仅适用于s3上的分区数据。但是有一个功能请求支持JDBC连接。
  2. 无法指定输出文件的名称。但是,看起来有option with renaming files(请注意,在s3上重命名意味着将文件从一个位置复制到另一个位置,因此成本高而且不是原子操作)
  3. 您无法真正控制输出文件的大小。 control min number of files可以使用coalesce选项。同样从Spark 2.2开始,可以通过设置config spark.sql.files.maxRecordsPerFile
  4. 来设置每个文件的最大记录数