dbt - 如何让创建表创建自动增量列

问题描述

我们正在构建一个数据仓库,并且倾向于使用 dbt(数据构建工具)。在编写模型的过程中,我们需要有一个自增(标识)列。我们如何指示 dbt 生成它创建的 create table 语句的那部分?

解决方法

我很确定这是不可能的。我最近有这个要求,但我无法解决自动递增的 id。但是,我也强烈反对这样做的必要性。现代仓库的好处是计算速度很快 - 您最好使用 dbt surrogate_key 宏来即时计算散列(冲突可能非常低)。它是确定性的(意味着它每次都会在假设基础数据不变的情况下进行相同的计算)并且您不必担心管理状态。