プライマリ・コンテンツに移動
Oracle® Fusion Middleware Oracle Business Intelligence Enterprise Editionメタデータ・リポジトリ作成者ガイド
12c (12.2.1.2.0)
E82973-02
目次へ移動
目次

前
前へ
次
次へ

可用性の高い集計をリフレッシュするためのダブル・バッファリングの使用方法

複数の集計の永続性ターゲットにわたる集計クローンがある場合、集計をリフレッシュする際はダブル・バッファリングを使用して停止時間を作らないようにできます。

ダブル・バッファリングを設定するには、リフレッシュを制御するように集計作成および削除SQL文を手動でコールします。

始めに、最初のターゲット上の集計を削除します。次に、最初のターゲットで集計を作成し、非アクティブ・スキーマとして集計が削除されていないターゲットを指定し、リフレッシュで古いデータが使用されないようにします。その後、各ターゲットに対してこのプロセスを繰り返します。最後のターゲットをリフレッシュする際は、その時点までに他のスキーマのデータはすでにリフレッシュされているため、非アクティブ・スキーマを指定する必要はありません。

非アクティブ・スキーマを指定する場合は、集計作成文の前にリクエスト変数INACTIVE_SCHEMASを設定します。次に例を示します。

set variable INACTIVE_SCHEMAS='"tgt2".."double2"' :

非アクティブ・スキーマとしてリフレッシュされていないスキーマのみ指定します。すでにリフレッシュ済または削除済のスキーマを指定しないでください。

複数の非アクティブ・スキーマを指定する場合は、カンマ区切りのリストを使用します。リストに空白がないことを確認します。

「2つのターゲット上の集計クローンのリフレッシュ」の例は、2つのターゲット上で集計をリフレッシュするためのダブル・バッファリングの使用方法を示しています。

注意:

複数の集計の永続性ターゲットにまたがる集計クローンがある場合、追加のインスタンスが、初期インスタンスのリフレッシュ時に問合せの負荷を引き受けるホット・スペアとなります。集計クローンは、受信問合せのロード・バランシングでは使用されません。

2つのターゲット上の集計クローンのリフレッシュ

ターゲットtgt1とtgt2上に次の集計クローンがあるとします。

"myfactaggr"
for "FACT_1"("MEASURE_1")
at levels ("INCR"."DIM1_LEVEL1Dim"."DIM1_LEVEL1 Detail")
using connection pool "tgt1"."cp"
in "tgt1".."double1",

"myfactaggr"
for "FACT_1"("MEASURE_1")
at levels ("INCR"."DIM1_LEVEL1Dim"."DIM1_LEVEL1 Detail")
using connection pool "tgt2"."cp"
in "tgt2".."double2";
  1. 次のようにして最初のターゲット上の集計クローンを削除します。

    set variable LOGLEVEL=7 : delete aggregates "tgt1".."double1"."myfactaggr";
    
  2. 最初のターゲットの集計を作成し、2番目のターゲットを非アクティブ・スキーマとして指定して、そのデータがリフレッシュで使用されないようにします。

    set variable LOGLEVEL=7, INACTIVE_SCHEMAS='"tgt2".."double2"' : create aggregates
    "myfactaggr"
    for "FACT_1"("MEASURE_1")
    at levels ("INCR"."DIM1_LEVEL1Dim"."DIM1_LEVEL1 Detail")
    using connection pool "tgt1"."cp"
    in "tgt1".."double1";
    
  3. 次のようにして2番目のターゲットの集計クローンを削除します。

    set variable LOGLEVEL=7 : delete aggregates "tgt2".."double2"."myfactaggr";
    
  4. 2番目のターゲットの集計クローンを作成します。最初のターゲットはすでにリフレッシュされているめた、非アクティブ・スキーマは指定しないでください。

    set variable LOGLEVEL=7 : create aggregates
    "myfactaggr"
    for "FACT_1"("MEASURE_1")
    at levels ("INCR"."DIM1_LEVEL1Dim"."DIM1_LEVEL1 Detail")
    using connection pool "tgt2"."cp"
    in "tgt2".."double2";