次の方法で共有


リソース ガバナー リソース プール

SQL Server リソース ガバナーのリソース プールは、データベース エンジン インスタンスの物理リソースのサブセットを表します。 各リソース プールは、1 つまたは複数のワークロード グループを含めることができます。 セッションの起動時に、リソース ガバナーの分類子によって、セッションは指定されたワークロード グループに割り当てられます。セッションの実行にはワークロード グループに割り当てられたリソースを使用する必要があります。

リソース プールの概念

リソース プール (プール) は、サーバーの物理リソースを表します。 プールは、SQL Server インスタンス内部の仮想 SQL Server インスタンスと考えることができます。

プールは 2 つの部分で構成されます。 1 つは他のプールと重複しない部分であり、最小限のリソース予約をサポートします。 もう 1 つは他のプールと共有される部分であり、最大限のリソース消費をサポートします。 このリリースのリソース ガバナーでは、各リソースに次のいずれかを指定することで、プール リソースが設定されます。

  • CPU の最小値、最大値、または上限値

  • メモリの最小値または最大値

最小値と最大値はそれぞれ、上記の各リソースについて、プールで最低限保証されるリソースの可用性およびプールの最大サイズを表します。

CPU の上限値はハードの最大値です。 この値を上回る CPU 容量があっても使用されません。

すべてのプールの最小値の合計が、サーバー リソースの 100% を超えないようにする必要があります。 最大値と上限値は、最小値~ 100% (両方を含む) の間で設定できます。

プールに 0 以外の最小値が定義されている場合は、他のプールの有効な最大値が再調整されます。 プールに設定されている最大値または他のプールの最小値の合計のいずれか大きい方が、100% から引かれます。

次の表は、前述の概念を説明しています。 表に示されているのは、内部プール、既定のプール、および 2 つのユーザー定義プールの設定です。 有効な最大 % および共有 % の計算には、次の式が使用されます。

  • min(X,Y) は、X と Y の小さい方の値を意味します。

  • sum(X) はすべてのプールの X 値の合計を意味します。

  • 共有 % の合計 = 100 - sum(最小 %)。

  • 有効な最大 % = min(X,Y)。

  • 共有 % = 有効な最大 % - 最小 %。

プール名

最小 % の設定

最大 % の設定

有効な最大 % の計算値

共有 % の計算値

解説

内部

0

100

100

0

内部プールには有効な最大 % と共有 % が適用されません。

既定

0

100

30

30

有効な最大値の計算式は、min(100,100-(20+50)) = 30 です。 共有 % の計算式は、有効な最大値 - 最小値 = 30 です。

プール 1

20

100

50

30

有効な最大値の計算式は、min(100,100-50) = 50 です。 共有 % の計算式は、有効な最大値 - 最小値 = 30 です。

プール 2

50

70

70

20

有効な最大値の計算式は、min(70,100-20) = 70 です。 共有 % の計算式は、有効な最大値 - 最小値 = 20 です。

前のテーブルを例として、別のプールが作成されたときに行われる調整について説明します。 作成するのはプール 3 で、その最小 % の設定は 5 です。

プール名

最小 % の設定

最大 % の設定

有効な最大 % の計算値

共有 % の計算値

解説

内部

0

100

100

0

内部プールには有効な最大 % と共有 % が適用されません。

既定

0

100

25

25

有効な最大値の計算式は、min(100,100-(20+50+5)) = 25 です。 共有 % の計算式は、有効な最大値 - 最小値 = 25 です。

プール 1

20

100

45

25

有効な最大値の計算式は、min(100,100-55) = 45 です。 共有 % の計算式は、有効な最大値 - 最小値 = 25 です。

プール 2

50

70

70

20

有効な最大値の計算式は、min(70,100-25) = 70 です。 共有 % の計算式は、有効な最大値 - 最小値 = 20 です。

プール 3

5

100

30

25

有効な最大値の計算式は、min(100,100-70) = 30 です。 共有 % の計算式は、有効な最大値 - 最小値 = 25 です。

プールの共有部分は、使用可能なリソースの行き先を示すために使用されます。 ただし、リソースが消費されると、共有部分は指定のプールに移動し、共有されません。 これにより、指定のプールに要求がなく、かつそのプールに対して構成されたリソースを他のプールのために解放できる場合は、リソース使用率が向上する可能性があります。

プール構成の極端なケースを次に示します。

  • すべてのプールで最小値が定義され、その合計がサーバー リソースの 100% を表しているケース。 この場合、有効な最大値は最小値と等しくなります。 このとき、いずれかのプール内でサーバー リソースが消費されているかどうかにかかわらず、リソースを重複しない断片に分割した場合と同等の状態になります。

  • すべてのプールの最小値がゼロであるケース。 すべてのプールが使用可能なリソースの確保を求めて競合し、それぞれの最終的なサイズが各プールのリソース消費に基づいて決まります。 ポリシーなどその他の要因も、最終的なプール サイズの決定に影響します。

リソース ガバナーでは、内部プールと既定のプールの 2 つのリソース プールが事前に定義されます。

内部プール

内部プールは、SQL Server 自体が消費するリソースを表します。 このプールは、常に内部グループのみを含んでおり、一切変更できません。 内部プールによるリソースの消費は制限されません。 このプール内のワークロードはサーバーの機能に不可欠と見なされ、内部プールが他のプールを圧迫して他のプールに設定されている制限に違反することになっても、リソース ガバナーはこれを許可します。

注意

内部プールおよび内部グループのリソース使用量は、全体的なリソース使用量から差し引かれません。 パーセンテージは、使用可能なリソース全体から計算されます。

既定のプール

既定のプールは、事前に定義される最初のユーザー プールです。 構成が行われる前の既定のプールには、既定のグループのみが含まれています。 既定のプールは作成または削除できませんが、変更することは可能です。 既定のプールには、既定のグループ以外にユーザー定義グループを含めることができます。

注意

既定のグループは変更できますが、既定のプールから移動することはできません。

ユーザー定義のリソース プール

リソース ガバナーには、リソース プールを作成、変更、および削除するための DDL ステートメントが用意されています。

リソース プール タスク

タスクの説明

トピック

リソース プールを作成する方法について説明します。

リソース プールの作成

リソース プールの設定を変更する方法について説明します。

リソース プールの設定の変更

リソース プールを削除する方法について説明します。

リソース プールの削除

関連項目

概念

リソース ガバナー

リソース ガバナー ワークロード グループ

リソース ガバナーの分類子関数

テンプレートを使用してリソース ガバナーを構成する

リソース ガバナー プロパティの表示