Azure Synapse Analytics 中專用 SQL 集區的容量限制

Azure Synapse Analytics 中專用 SQL 集區的各種元件允許的最大值。

工作負載管理

類別 描述 最大值
資料倉儲單位 (DWU) 單一專用 SQL 集區的最大 DWU Gen1:DW6000

Gen2:DW30000c
資料倉儲單位 (DWU) 每部伺服器的預設 DTU 54,000

根據預設,每個 SQL 伺服器 (例如,myserver.database.windows.net) 都有 DTU 配額 54,000,允許最多 DW6000c。 此配額只是安全限制。 您可以建立 支援票證 ,然後選取 [配額] 作為要求類型來增加配額 。 若要計算 DTU 需求,請將所需的 DWU 總數乘以 7.5,或將 9 乘以所需的 cDWU 總計。 例如:

DW6000 x 7.5 = 45,000 DTU

DW7500c x 9 = 67,500 DTU。

您可以從入口網站中的 [SQL Server] 選項檢視目前的 DTU 耗用量。 已暫停和未暫停的資料庫都會計入 DTU 配額。
資料庫連線 並行開啟會話上限 1024

並行開啟會話的數目會根據選取的 DWU 而有所不同。 DWU1000c 和更新版本最多支援 1024 個開啟的會話。 DWU500c和以下版本支援最大並行開啟會話限制 512。 請注意,可以同時執行的查詢數目有限制。 超過並行限制時,要求會進入等候處理的內部佇列。
資料庫連線 備妥語句的最大記憶體 20 MB
工作負載管理 並行查詢數目上限 128

最多會執行 128 個並行查詢,其餘查詢將會排入佇列。

當使用者指派給較高資源類別,或數據倉儲單位設定降低時,並行查詢數目可能會減少。 某些查詢,例如 DMV 查詢,一律允許執行,且不會影響並行查詢限制。 如需並行查詢執行的詳細資訊,請參閱 並行存取上限 一文。
tempdb GB 上限 每個 DW100c 399 GB。 例如,在 DWU1000c,tempdb 的大小為 3.99 TB。

資料庫物件

類別 描述 最大值
Database 大小上限 Gen1:240 TB 壓縮在磁碟上。 此空間與 tempdb 或記錄空間無關,因此此空間專用於永久數據表。 叢集數據行存放區壓縮估計為5X。 當所有數據表都是叢集數據行存放區時,此壓縮可讓資料庫成長到大約 1 PB(預設數據表類型)。

Gen2:資料行存放區數據表的無限制記憶體。 資料庫的數據列存放區部分仍然限制在磁碟上壓縮 240 TB。
Table 大小上限 數據行存放區數據表的大小無限制。
磁碟上壓縮的數據列存放區數據表 60 TB。
Table 每個資料庫的資料表數 100,000
Table 資料表的資料行數 1024 個數據行
Table 每個數據行的位元組數 相依於數據行 數據類型。 char 數據類型的限制為 8000,nvarchar 為 4000,MAX 數據類型為 2 GB。
Table 每個數據列的位元組數,已定義的大小 8060 個字節

每個數據列的位元組數目會以與頁面壓縮的SQL Server 相同的方式來計算。 與 SQL Server 一樣,支持數據列溢位記憶體,這可讓 可變長度 的數據行從數據列推送。 當可變長度數據列被下推時,只有 24 位元組的根目錄會儲存在主要記錄中。 如需詳細資訊,請參閱 超過8 KB的數據列溢位數據。
Table 每個數據表的數據分割 15,000

為了達到高效能,建議您將所需的分割區數目降到最低,同時仍支援您的商務需求。 隨著分割區數目的成長,數據定義語言 (DDL) 和數據操作語言 (DML) 作業的額外負荷會成長,並導致效能變慢。
Table 每個數據分割界限值的字元。 4000
索引 每個數據表的非叢集索引。 50

僅適用於數據列存放區數據表。
索引 每個數據表的叢集索引。 1

適用於數據列存放區和數據行存放區數據表。
索引 索引鍵大小。 900 個字節。

僅適用於數據列存放區索引。

如果數據行中的現有數據在建立索引時未超過 900 個字節,則可以在 varchar 數據行上建立大小上限超過 900 個字節的索引。 不過,之後導致總大小超過 900 個字節的數據行的 INSERT 或 UPDATE 動作將會失敗。
索引 每個索引的索引鍵數據行。 16

僅適用於數據列存放區索引。 叢集數據行存放區索引包含所有數據行。
統計資料 合併數據行值的大小。 900 個字節。
統計資料 每個統計數據對象的數據行。 32
統計資料 針對每個數據表的數據行所建立的統計數據。 30,000
預存程序 巢狀層級上限。 8
檢視 每個檢視的資料行數 1,024
工作負載分類器 使用者定義的分類器 100

負荷

類別 描述 最大值
Polybase 載入 每列 MB 1

Polybase 會載入小於 1 MB 的數據列。 不支援將 LOB 資料類型載入具有叢集資料行存放區索引 (CCI) 的數據表。
Polybase 載入 檔案總數 1,000,000

Polybase 載入不能超過 100 萬個檔案。 您可能會遇到下列錯誤:作業失敗, 因為分割計數超過上限 1000000

查詢

類別 描述 最大值
查詢 用戶數據表上的佇列查詢。 1000
查詢 系統檢視上的並行查詢。 100
查詢 系統檢視上的佇列查詢 1000
查詢 最大參數 2098
Batch 大小上限 65,536*4096
SELECT 結果 每個數據列的數據行 4096

SELECT 結果中每個數據列的 4096 個數據行永遠不能超過 4096 個。 不保證您一律可以有 4096。 如果查詢計劃需要臨時表,每個數據表可能會套用 1024 個數據行上限。
SELECT 巢狀子查詢 32

在 SELECT 語句中,您永遠不能有超過 32 個巢狀子查詢。 不保證您一律可以有 32 個。 例如,JOIN 可以將子查詢引入查詢計劃。 子查詢的數目也可以受限於可用的記憶體。
SELECT 每個 JOIN 的數據行 1024 個數據行

在 JOIN 中,您永遠不能有超過 1024 個數據行。 不保證一律可以有 1024。 如果 JOIN 計劃需要具有比 JOIN 結果更多的數據行的臨時表,則 1024 限制會套用至臨時表。
SELECT 每個 GROUP BY 資料行的位元元組數。 8060

GROUP BY 子句中的數據行最多可以有 8060 個字節。
SELECT 每個 ORDER BY 資料行的位元元組數 8060 個字節

ORDER BY 子句中的數據行最多可以有8060個字節
每個語句的標識碼 參考的標識碼數目 65,535

查詢單一表達式中可以包含的標識碼數目有限。 超過這個數位會導致 SQL Server 錯誤 8632。 如需詳細資訊,請參閱 內部錯誤:已達到表達式服務限制。
字串常值 語句中的字串常值數目 32,500

查詢單一表達式中的字串常數數目有限。 超過這個數位會導致 SQL Server 錯誤 8632。

中繼資料

DMV 會在專用 SQL 集區暫停或調整時重設。

系統檢視 最大資料列數
sys.dm_pdw_dms_cores 100
sys.dm_pdw_dms_workers 最近 1000 個 SQL 要求的 DMS 背景工作角色總數。
sys.dm_pdw_errors 10,000
sys.dm_pdw_exec_requests 10,000
sys.dm_pdw_exec_sessions 10,000
sys.dm_pdw_request_steps 儲存在 sys.dm_pdw_exec_requests 中最近 1000 個 SQL 要求的步驟總數。
sys.dm_pdw_sql_requests 儲存在sys.dm_pdw_exec_requests的最新 1000 個 SQL 要求。

下一步

如需使用 Azure Synapse 的建議,請參閱 速查表