AWS Glue Scala Upsert

时间:2018-09-24 17:34:13

标签: scala amazon-web-services aws-glue

我正在尝试使用Scala中的AWS Glue将数据从另一个Upsert到现有的S3存储桶中。有使用这种方法的标准方法吗?我发现的方法之一是使用SQL的MERGE方法。使用它的优缺点是什么?

谢谢

1 个答案:

答案 0 :(得分:1)

您无法在s3中真正实现“ SQL MERGE”方法,因为无法更新现有数据对象。

一种解决方法是加载Glue作业中的现有行,将其与传入的数据集合并,删除过时的记录并覆盖s3上的所有对象。如果您有大量数据,则将其按某些列进行分区,然后覆盖那些仅应包含新数据的分区会更有效。

如果您的目标是防止重复,则可以执行以下操作:加载现有记录,从s3中已存在的传入数据集中删除这些记录(在上一步中加载),然后仅写入s3新记录。