改变 Table 分布(Azure 数据仓库)
Alter Table Distribution (Azure Data warehouse)
为了赶着下班,我 运行 在一个新的 table 上插入了一个大的插入,它有一个 Round Robin 分布。我知道这不太可能,但是有没有办法将 table 的分布从循环法更改为哈希分布?
很遗憾,ALTER TABLE
不支持更改 Azure SQL 数据仓库中 table 的分布。您可以做的下一个最好的事情是使用 CTAS
创建 table 的副本,删除原始 table,然后重命名新的,如下所示:
CREATE TABLE dbo.yourTable2
WITH (
CLUSTERED COLUMNSTORE INDEX,
DISTRIBUTION = HASH ( yourColumn )
)
AS
SELECT *
FROM dbo.yourTable
OPTION ( LABEL = 'CTAS: Change distribution on dbo.yourTable' );
GO
DROP TABLE dbo.yourTable
GO
RENAME OBJECT dbo.yourTable2 TO yourTable;
GO
为了赶着下班,我 运行 在一个新的 table 上插入了一个大的插入,它有一个 Round Robin 分布。我知道这不太可能,但是有没有办法将 table 的分布从循环法更改为哈希分布?
很遗憾,ALTER TABLE
不支持更改 Azure SQL 数据仓库中 table 的分布。您可以做的下一个最好的事情是使用 CTAS
创建 table 的副本,删除原始 table,然后重命名新的,如下所示:
CREATE TABLE dbo.yourTable2
WITH (
CLUSTERED COLUMNSTORE INDEX,
DISTRIBUTION = HASH ( yourColumn )
)
AS
SELECT *
FROM dbo.yourTable
OPTION ( LABEL = 'CTAS: Change distribution on dbo.yourTable' );
GO
DROP TABLE dbo.yourTable
GO
RENAME OBJECT dbo.yourTable2 TO yourTable;
GO