適用対象:Microsoft Fabric の SQL 分析エンドポイントと Warehouse
Microsoft Fabric Data Warehouseの queryinsights.sql_pool_insights は、リソース割り当てを監視し、設定変更を追跡し、プールが圧力にさらされている期間を特定します。
| 列名 | データの種類 | Description |
|---|---|---|
sql_pool_name |
nvarchar(128) | SQLプールの名前。 |
timestamp |
datetime2 | 健康診断や容量変更が行われたタイムスタンプ。 |
max_resource_percentage |
int | プールに割り当てられる最大リソース割合。 |
is_optimized_for_reads |
bit | プールが読み取り最適化ワークロードに設定されているかどうかを示します。 |
current_workspace_capacity |
nvarchar(16) | 現在作業スペースで使用されている容量。 |
is_pool_under_pressure |
bit | プールに圧力がかかっているかどうかを示します。 |
注釈
Fabric Data Warehouseでは、 SELECT プールと NON SELECT プール間でリソース隔離が行われ、競合を防ぎます。 デフォルトで2つのプールが存在します:
-
SELECT: 読み取り(SELECT)クエリを処理し、分析やレポートに最適化されています。 -
NON SELECTデータ改変(INSERT、UPDATE、DELETE)を扱い、ETLや取り込みに最適化されています。
イベントベースレポーティング
- 新しい記録は、プールの構成、作業スペース容量、または圧力状態が変化したときに記録されます。
- 圧力状態の変化は、 圧力が1分 以上維持されている場合に記録されます。
- イベントは倉庫が稼働している時のみログに記録されます。 倉庫に活動がなければ、定期的なイベントは一時停止され、活動が検出されると再開されます。 つまり、非稼働期間中は、倉庫が再び稼働するまでイベントログに空白が生じることがあります。
Permissions
Fabric Capacityワークスペース内のSQL分析エンドポイントやウェアハウスにContributor以上の権限、またはViewerのMonitor権限を持つ必要があります。
例示
このビューを使って、クエリのパフォーマンス問題とプールの圧力や設定変更を関連付けてください。 窓機能や外部ツールを使って圧力の期間を視覚化します。 以下にいくつかの例を挙げます。
A。 過去24時間の圧力期間
過去24時間で SELECT プールが圧力を受けていた期間を示します:
-- Show periods when the SELECT pool was under pressure in the last 24 hours
SELECT sql_pool_name, timestamp, is_pool_under_pressure
FROM queryinsights.sql_pool_insights
WHERE sql_pool_name = 'SELECT'
AND timestamp >= DATEADD(hour, -24, GETDATE())
AND is_pool_under_pressure = 1
ORDER BY timestamp DESC;
B: 圧力の傾向を可視化する
連続した圧力周期とギャップをウィンドウ関数で計算します:
-- Calculate consecutive pressure periods and gaps using window functions
SELECT sql_pool_name,
timestamp,
is_pool_under_pressure,
LAG(timestamp) OVER (PARTITION BY sql_pool_name ORDER BY timestamp) AS previous_event,
DATEDIFF(minute, LAG(timestamp) OVER (PARTITION BY sql_pool_name ORDER BY timestamp), timestamp) AS minutes_since_last_event
FROM queryinsights.sql_pool_insights
WHERE sql_pool_name = 'SELECT'
ORDER BY timestamp;