0

我正在将 SQL Server 数据库迁移到 Azure 数据仓库。我在早期的数据库中有维度表,其中有暗 id(基本上是整数值),并且这些在事实表中被引用以便于获取数据。这些暗淡的 id 是使用标识列生成的。

现在,在 Azure 数据仓库中,标识列值是随机生成的,我不确定是否在此处使用这些暗淡的 id。如果不使用这些 id,则可以使用文本列,但这会增加查找时间,进而影响性能。

那么,谁能建议我应该如何在 Azure 数据仓库中处理这些暗淡的 id?

问候,

普拉提克

4

1 回答 1

3

您可以在 Azure SQL 数据仓库中使用标识列。这些值不是“随机的”,只是它们的排序方式与您在 SQL Server 的 SMP 版本上看到的方式不同。

https://docs.microsoft.com/en-us/azure/sql-data-warehouse/sql-data-warehouse-tables-identity

如果您更喜欢替代方案,可以使用这样的计算在行插入期间分配代理键:

cast((select max(dim_sk) from dw.dim_xxx) + row_number() over (order by getdate()) as bigint) as dim_sk
于 2018-11-23T12:41:47.337 回答