使用 AWS Glue 时如何查找更新的行?

2024-01-25

我正在尝试使用 Glue 对从 RDS 迁移到 Redshift 的数据进行 ETL。

据我所知,Glue 书签仅使用指定的主键查找新行,而不跟踪更新的行。

然而,我正在处理的数据往往会频繁更新行,我正在寻找可能的解决方案。我对 pyspark 有点陌生,所以如果可以在 pyspark 中执行此操作,我将非常感谢一些指导或正确方向的观点。如果 Spark 之外有可能的解决方案,我也很想听听。


您可以使用查询通过过滤源 JDBC 数据库中的数据来查找更新的记录,如下例所示。我已将日期作为参数传递,以便在本例中每次运行时我只能从 mysql 数据库获取最新值。

query= "(select ab.id,ab.name,ab.date1,bb.tStartDate from test.test12 ab join test.test34 bb on ab.id=bb.id where ab.date1>'" + args['start_date'] + "') as testresult"

datasource0 = spark.read.format("jdbc").option("url", "jdbc:mysql://host.test.us-east-2.rds.amazonaws.com:3306/test").option("driver", "com.mysql.jdbc.Driver").option("dbtable", query).option("user", "test").option("password", "Password1234").load()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 AWS Glue 时如何查找更新的行? 的相关文章

随机推荐