我有一个带有星形模式的数据仓库 - 事实表和围绕它的多个维度。它们通过外键连接。
我有两项 AWS Glue 工作:
所以情况是:我已经使用第一份工作填写了维度表。在第二项工作中,我只需要获取事实表的新鲜数据,找到维度表中每条记录的外键,并在事实表中保留新行。
问题是,当使用书签时,AWS Glue 认为由于维度表自上次运行以来没有更改,因此什么都没有,并插入 null 作为外键。我尝试通过从生成的脚本中删除 conversion_ctx 来禁用书签,但它不起作用。
由此:
dimension_node1647201451763 = glueContext.create_dynamic_frame.from_catalog(
database="foobar-staging",
table_name="dimension",
transformation_ctx="dimension_node1647201451763",
)
Run Code Online (Sandbox Code Playgroud)
我这样做了:
foobaritem_node1647201451763 = glueContext.create_dynamic_frame.from_catalog(
database="foobar-staging",
table_name="foobar_item",
)
Run Code Online (Sandbox Code Playgroud)
但这些记录仍然没有找到。
我能想到的唯一解决方案是完全禁用书签,然后对处理的所有记录添加“不存在”检查,这将防止重复。