这更像是一个理论问题:我有一个场景,我希望在DBT中执行从源表到目标表的删除+插入操作。(通过PK匹配,删除现有记录,然后插入)。
DBT似乎不支持BigQuery的增量策略(它支持Snowflake)。
相反,它通过删除和重新插入给定分区来提供插入+覆盖。这并不能解决我的特殊需求。
这背后有什么原因吗?
我认为您需要merge
,它应该完成与删除和插入相同的操作,但性能更好。关于合并语句的BQ文档。
delete+insert
仅在Snowflake中支持,以支持表的PK实际上不是唯一的边缘情况。源。在Snowflake上,merge
也是首选/性能更好。