SQL Data Warehouse の容量制限SQL Data Warehouse capacity limits

Azure SQL Data Warehouse のさまざまなコンポーネントで使用できる最大値を示します。Maximum values allowed for various components of Azure SQL Data Warehouse.

ワークロード管理Workload management

CategoryCategory 説明Description 最大値Maximum
Data Warehouse ユニット (DWU)Data Warehouse Units (DWU) 1 つの SQL Data Warehouse に対する 最大 DWUMax DWU for a single SQL Data Warehouse Gen1:DW6000Gen1: DW6000
Gen2:DW30000cGen2: DW30000c
Data Warehouse ユニット (DWU)Data Warehouse Units (DWU) サーバーあたりの既定の DTUDefault DTU per server 54,00054,000
既定では、各 SQL Server (myserver.database.windows.net など) の DTU クォータは 54,000 に設定されており、最大 DW6000c が許可されます。By default, each SQL server (for example, myserver.database.windows.net) has a DTU Quota of 54,000, which allows up to DW6000c. このクォータは単に安全上の制限です。This quota is simply a safety limit. クォータを引き上げるには、サポート チケットを作成し、要求の種類として [クォータ] を選択します。You can increase your quota by creating a support ticket and selecting Quota as the request type. 実際に必要な DTU を計算するには、必要とされる DWU の合計に 7.5 を掛けるか、必要とされる cDWU の合計に 9.0 を掛けます。To calculate your DTU needs, multiply the 7.5 by the total DWU needed, or multiply 9.0 by the total cDWU needed. 例:For example:
DW6000 x 7.5 = 45,000 DTUDW6000 x 7.5 = 45,000 DTUs
DW6000c x 9.0 = 54,000 DTUDW6000c x 9.0 = 54,000 DTUs.
現在の DTU 消費量は、ポータルで SQL Server オプションから確認できます。You can view your current DTU consumption from the SQL server option in the portal. DTU クォータには、一時停止しているデータベースと一時停止していないデータベースの両方が考慮されます。Both paused and unpaused databases count toward the DTU quota.
データベース接続Database connection 同時に開かれる最大セッション数Maximum Concurrent open sessions 10241024

同時に開かれるセッションの数は、選択した DWU によって異なります。The number of concurrent open sessions will vary based on the selected DWU. DWU600c 以降では、最大で 1,024 の開かれているセッションがサポートされます。DWU600c and above support a maximum of 1024 open sessions. DWU500c 以前では、同時に開かれるセッションの上限が 512 です。DWU500c and below support a maximum concurrent open session limit of 512. 同時に実行できるクエリ数については、制限があるので注意してください。Note, there are limits on the number of queries that can execute concurrently. コンカレンシーの制限を超えると、要求は内部キューに送られ、処理の順番が来るまで待機します。When the concurrency limit is exceeded, the request goes into an internal queue where it waits to be processed.
データベース接続Database connection 準備されたステートメントに対する最大メモリ容量Maximum memory for prepared statements 20 MB20 MB
ワークロード管理Workload management 同時クエリの最大数Maximum concurrent queries 128128

SQL Data Warehouse は、最大 128 個の同時実行クエリと、キューに残っているクエリを実行します。SQL Data Warehouse can execute a maximum of 128 concurrent queries and queues remaining queries.

ユーザーが割り当てられているリソース クラスが高いほど、または SQL Data Warehouse の Data Warehouse ユニットの設定が低いほど、同時実行クエリの数が減る可能性があります。The number of concurrent queries can decrease when users are assigned to higher resource classes or when SQL Data Warehouse has a lower data warehouse unit setting. 一部のクエリ (DMV クエリなど) は、常に実行を許可され、同時実行クエリの制限に影響しません。Some queries, like DMV queries, are always allowed to run and do not impact the concurrent query limit. コンカレント クエリの詳細については、コンカレンシーの最大値に関する記事を参照してください。For more details on concurrent query execution, see the concurrency maximums article.
tempdbtempdb 最大 GBMaximum GB DW100 あたり 399 GB です。399 GB per DW100. そのため、DWU1000 では、tempdb のサイズは 3.99 TB になります。Therefore at DWU1000, tempdb is sized to 3.99 TB.

データベース オブジェクトDatabase objects

CategoryCategory 説明Description 最大値Maximum
DatabaseDatabase 最大サイズMax size Gen1:240 TB (ディスク上の圧縮)。Gen1: 240 TB compressed on disk. この領域は tempdb またはログ領域から独立しています。そのため、この領域はパーマネント テーブル専用です。This space is independent of tempdb or log space, and therefore this space is dedicated to permanent tables. クラスター化列ストアの圧縮率は約 5 倍になります。Clustered columnstore compression is estimated at 5X. このため、すべてのテーブルをクラスター化列ストア (既定のテーブルの種類) にした場合、データベースを約 1 PB まで拡大できるようになります。This compression allows the database to grow to approximately 1 PB when all tables are clustered columnstore (the default table type).

Gen2:240 TB (行ストア) および無制限のストレージ (列ストア テーブル)Gen2: 240TB for rowstore and unlimited storage for columnstore tables
テーブルTable 最大サイズMax size 60 TB (ディスク上の圧縮)60 TB compressed on disk
テーブルTable データベースあたりのテーブル数Tables per database 100,000100,000
テーブルTable テーブルあたりの列数Columns per table 1,024 列1024 columns
テーブルTable 列あたりのバイト数Bytes per column 列の データ型によって決まります。Dependent on column data type. 上限は、char データ型では 8000 GB、nvarchar データ型では 4000 GB、MAX データ型では 2 GB です。Limit is 8000 for char data types, 4000 for nvarchar, or 2 GB for MAX data types.
テーブルTable 行あたりのバイト数 (定義されたサイズ)Bytes per row, defined size 8060 バイト8060 bytes

行あたりのバイト数は、ページ圧縮を有効にした SQL Server の場合と同様に計算されます。The number of bytes per row is calculated in the same manner as it is for SQL Server with page compression. SQL Data Warehouse では SQL Server と同様に行オーバーフロー ストレージがサポートされており、可変長列を行外にプッシュできます。Like SQL Server, SQL Data Warehouse supports row-overflow storage, which enables variable length columns to be pushed off-row. 可変長行を行外にプッシュする場合、メイン レコードには 24 バイト ルートのみが格納されます。When variable length rows are pushed off-row, only 24-byte root is stored in the main record. 詳細については、「8 KB を超える場合の行オーバーフロー データ」を参照してください。For more information, see Row-Overflow Data Exceeding 8-KB.
テーブルTable テーブルあたりのパーティション数Partitions per table 15,00015,000

高パフォーマンスを実現するには、ビジネス要件を満たしながら、必要なパーティション数を最小限に抑えることをお勧めします。For high performance, we recommend minimizing the number of partitions you need while still supporting your business requirements. パーティションの数が増えるに従い、データ定義言語 (DDL) およびデータ操作言語 (DML) の操作のオーバーヘッドが拡大し、パフォーマンスの低下を引き起こします。As the number of partitions grows, the overhead for Data Definition Language (DDL) and Data Manipulation Language (DML) operations grows and causes slower performance.
テーブルTable パーティション境界値あたりの文字数Characters per partition boundary value. 40004000
IndexIndex テーブルあたりの非クラスター化インデックス数Non-clustered indexes per table. 5050

行ストア テーブルのみに適用されます。Applies to rowstore tables only.
IndexIndex テーブルあたりのクラスター化インデックス数Clustered indexes per table. 11

行ストア テーブルと列ストア テーブルの両方に適用されます。Applies to both rowstore and columnstore tables.
IndexIndex インデックス キーのサイズIndex key size. 900 バイト900 bytes.

行ストア インデックスにのみに適用されます。Applies to rowstore indexes only.

インデックスの作成時には varchar 列の既存のデータが 900 バイトを超えていない場合でも、最大サイズが 900 バイトを超える、varchar 列のインデックスが作成されることがあります。Indexes on varchar columns with a maximum size of more than 900 bytes can be created if the existing data in the columns does not exceed 900 bytes when the index is created. ただし、その後の列に対する INSERT または UPDATE 操作は、合計サイズが 900 バイトを超えてしまう場合、失敗します。However, later INSERT or UPDATE actions on the columns that cause the total size to exceed 900 bytes will fail.
IndexIndex インデックスあたりのキー列数Key columns per index. 1616

行ストア インデックスにのみに適用されます。Applies to rowstore indexes only. クラスター化列ストア インデックスには、すべての列が含まれます。Clustered columnstore indexes include all columns.
統計Statistics 組み合わせ列値のサイズSize of the combined column values. 900 バイト900 bytes.
統計Statistics 統計オブジェクトあたりの列数Columns per statistics object. 3232
統計Statistics テーブルごとに、列に対して作成される統計Statistics created on columns per table. 30,00030,000
ストアド プロシージャStored Procedures 入れ子レベルの最大数Maximum levels of nesting. 88
表示View ビューあたりの列数Columns per view 1,0241,024

読み込みLoads

CategoryCategory 説明Description 最大値Maximum
Polybase 読み込みPolybase Loads 行あたりの MB 数MB per row 11

Polybase では、1 MB 未満の行を読み込みます。Polybase loads rows that are smaller than 1 MB. クラスター化列ストア インデックス (CCI) を使用して LOB データ型をテーブルに読み込むことはサポートされていません。Loading LOB data types into tables with a Clustered Columnstore Index (CCI) is not supported.

クエリQueries

CategoryCategory 説明Description 最大値Maximum
QueryQuery ユーザー テーブルに対する、キューに置かれるクエリ数Queued queries on user tables. 10001000
QueryQuery システム ビューに対する同時クエリ数Concurrent queries on system views. 100100
QueryQuery システム ビューに対する、キューに置かれるクエリ数Queued queries on system views 10001000
QueryQuery パラメーターの最大個数Maximum parameters 20982098
BatchBatch 最大サイズMaximum size 65,536*409665,536*4096
SELECT の結果セットSELECT results 行あたりの列数Columns per row 40964096

SELECT の結果セットで、許容される行あたりの列数の上限は 4096 個です。You can never have more than 4096 columns per row in the SELECT result. 常に 4096 個が保証されるわけではありません。There is no guarantee that you can always have 4096. クエリ プランで一時テーブルが必要な場合、テーブルあたりの列数の最大値として 1024 が適用される可能性があります。If the query plan requires a temporary table, the 1024 columns per table maximum might apply.
SELECTSELECT 入れ子になったサブクエリの数Nested subqueries 3232

SELECT ステートメントで許容される入れ子になったサブクエリの数は 32 個までです。You can never have more than 32 nested subqueries in a SELECT statement. 常に 32 個が保証されるわけではありません。There is no guarantee that you can always have 32. たとえば、JOIN によって、クエリ プランにサブクエリが導入されることがあります。For example, a JOIN can introduce a subquery into the query plan. サブクエリの数はまた、使用できるメモリによって制限される場合があります。The number of subqueries can also be limited by available memory.
SELECTSELECT JOIN あたりの列数Columns per JOIN 1,024 列1024 columns

JOIN で許容される列数は 1,024 個までです。You can never have more than 1024 columns in the JOIN. 常に 1024 列が保証されるわけではありません。There is no guarantee that you can always have 1024. JOIN プランで、列数が JOIN の結果を上回る一時テーブルが必要な場合、一時テーブルには 1024 の制限が適用されます。If the JOIN plan requires a temporary table with more columns than the JOIN result, the 1024 limit applies to the temporary table.
SELECTSELECT GROUP BY の列あたりのバイト数Bytes per GROUP BY columns. 8060バイト8060

GROUP BY 句内の列に許容されるバイト数は、最大で 8,060 バイトです。The columns in the GROUP BY clause can have a maximum of 8060 bytes.
SELECTSELECT ORDER BY 列あたりのバイト数Bytes per ORDER BY columns 8060 バイト8060 bytes

ORDER BY 句内の列に許容されるバイト数は、最大で 8,060 バイトです。The columns in the ORDER BY clause can have a maximum of 8060 bytes
ステートメントあたりの識別子Identifiers per statement 参照される識別子の数Number of referenced identifiers 65,53565,535

SQL Data Warehouse では、1 つのクエリ式に含めることができる識別子の数を制限しています。SQL Data Warehouse limits the number of identifiers that can be contained in a single expression of a query. この数を超えると、SQL Server エラー 8632 が発生します。Exceeding this number results in SQL Server error 8632. 詳細については、内部エラー: 式サービスの制限値に達していますに関するページをご覧ください。For more information, see Internal error: An expression services limit has been reached.
文字列リテラルString literals ステートメントの文字列リテラルの数Number of string literals in a statement 20,00020,000

SQL Data Warehouse では、1 つのクエリ式に含めることができる文字列定数の数を制限しています。SQL Data Warehouse limits the number of string constants in a single expression of a query. この数を超えると、SQL Server エラー 8632 が発生します。Exceeding this number results in SQL Server error 8632.

MetadataMetadata

システム ビューSystem view 最大行数Maximum rows
sys.dm_pdw_component_health_alertssys.dm_pdw_component_health_alerts 10,00010,000
sys.dm_pdw_dms_coressys.dm_pdw_dms_cores 100100
sys.dm_pdw_dms_workerssys.dm_pdw_dms_workers 最新の 1000 個の SQL 要求に対する DMS ワーカーの総数Total number of DMS workers for the most recent 1000 SQL requests.
sys.dm_pdw_errorssys.dm_pdw_errors 10,00010,000
sys.dm_pdw_exec_requestssys.dm_pdw_exec_requests 10,00010,000
sys.dm_pdw_exec_sessionssys.dm_pdw_exec_sessions 10,00010,000
sys.dm_pdw_request_stepssys.dm_pdw_request_steps sys.dm_pdw_exec_requests に格納された最新の 1000 個の SQL 要求に対するステップの総数Total number of steps for the most recent 1000 SQL requests that are stored in sys.dm_pdw_exec_requests.
sys.dm_pdw_os_event_logssys.dm_pdw_os_event_logs 10,00010,000
sys.dm_pdw_sql_requestssys.dm_pdw_sql_requests sys.dm_pdw_exec_requests に格納された最新の 1000 個の SQL 要求The most recent 1000 SQL requests that are stored in sys.dm_pdw_exec_requests.

次の手順Next steps

SQL Data Warehouse の使用に関する推奨事項については、チート シートに関するページを参照してください。For recommendations on using SQL Data Warehouse, see the Cheat Sheet.