変更の開始

CURRENT ACCELERATOR 特殊レジスター

CURRENT ACCELERATOR 特殊レジスターは、Db2 が動的 SQL 照会を送信する先の優先ターゲット・アクセラレーター (複数可) を指定します。

CURRENT ACCELERATOR 特殊レジスターは、動的 SQL 照会にのみ適用されます。 静的 SQL 照会の場合には、ACCELERATOR バインド・オプションを使用して、特殊アクセラレーターを指定することができます。

同じ Db2 テーブルのセットが複数のアクセラレータで高速化されている場合、デフォルトではワークロード分散アルゴリズム(WLB)が各アクセラレータのキューの長さに基づいてクエリを分散します。 CURRENT ACCELERATOR 特殊レジスタが特定の適格なアクセラレータサーバーを指名している場合、 Db2 は、他のアクセラレータサーバーに送信する前に、そのサーバーに適格なSQLを送信することを検討します。 CURRENT ACCELERATORで指定されたアクセラレータサーバーが利用できない場合、 Db2 は他の利用可能なアクセラレータサーバーを検討します。

変更の開始FL 509 複数のアクセラレータで定義されているアクセラレータ専用テーブルでDML文を実行するには、CURRENT ACCELERATOR特殊レジスタが、そのテーブルが定義されているアクセラレータの1つを指定する必要があります。変更の終わり

以下のようなシチュエーションでは、特定のターゲット・アクセラレーターを指定すると便利です。
  • ワークロードの優先順位に基づいて、照会をさまざまなアクセラレーターに送信する場合。 優先順位がより高い照会を高速で最も能力が高いアクセラレーターに送信し、優先順位がより低い照会を低速のアクセラレーターに送信することができます。
  • 照会がリモートのアクセラレーターに送信された場合に経過時間が長くなることを避けたい場合。 WLB アルゴリズムは、照会がリモートのアクセラレーターに送信されたときに発生する待ち時間に対応しません。 ご使用の環境に、ローカルにデプロイされたアクセラレーターとリモートのアクセラレーター (災害時回復用など) の両方が含まれている場合に、優先順位がより高い照会をローカルのアクセラレーターに送信することができます。

データ・タイプは VARCHAR(8) です。

CURRENT ACCELERATOR の初期値は、次の設定のいずれかによって決定されます。
  • パッケージのバインドに対して指定された場合は、ACCELERATOR バインド・オプション。 このバインド・オプションには、デフォルト値がありません。
  • それ以外の場合、CURRENT ACCELERATOR のデフォルト設定値はブランク (優先されるアクセラレーターはなし) です。

以下のステートメントは、ACCEL1 が優先されるアクセラレーターになるように CURRENT ACCELERATOR 特殊レジスターを設定します。変更の開始
SET CURRENT ACCELERATOR = ACCEL1;
変更の終わり
変更の終わり