セッション変数の作成
変数値をユーザー・セッションに固有にし、ユーザーがOracle Analyticsにログインするときに設定する必要がある場合は、セッション変数を作成します。 たとえば、ユーザー部門や販売リージョンなどです。
セッション変数を定義して保存すると、データ・フィルタおよび式に追加できます。
セマンティック・モデルでは、初期化ブロック内にセッション変数を作成して定義します。 スタンドアロン・セッション変数を作成して定義し、後で初期化ブロックに関連付けることはできません。
セッション変数を作成するときは、次の情報を考慮してください:
-
初期化ブロックに複数の変数を追加する場合、変数は初期化問合せの列順序と一致する必要があります。 これは、問合せの実行時に各変数が適切な値を受け取るようにするためです。
-
変数の移入に使用される初期化問合せは、変数値に必要な物理表を参照する必要があります。 セマンティック・モデルの物理レイヤーに変数値を提供する物理表を含める必要はありません。
-
「任意のユーザーが値を設定できるようにします」オプションを使用すると、分析またはダッシュボード(What If分析など)で変数値を設定できます。 ユーザー指定の変数値はOracle Analytics問合せエンジンに渡され、基礎となる計算で使用されます。
-
「セキュリティ・センシティブ」オプションは、仮想プライベート・データベース(VPD)などの行レベルのデータベース・セキュリティ戦略を使用する場合、変数をセキュリティに敏感であると識別します。 このオプションおよびデータベースの「仮想プライベート・データベース」データ・ソース・プロパティが選択されている場合、Oracle Analytics問合せエンジンは、セキュリティ依存変数のリストを各予測キャッシュ・ヒットに一致させます。 キャッシュ・ヒットは、すべてのセキュリティ依存変数を含むキャッシュ・エントリに対してのみ発生します。
-
階層列の選択ステップをオーバーライドする変数を作成する場合は、JSON構文を使用して初期化問合せを記述します。 選択ステップを上書きするために変数で使用される初期化問合せを参照してください。
-
オブジェクト権限は変数に適用されないため、変数の値はセキュアではなく、変数の名前を知っている人や推測できる人はだれでも式で使用できます。 このため、Oracleでは、パスワードのような機密データを変数に配置しないことをお薦めします。
セッション変数を作成するには、次のステップに従います:
- ホーム・ページで、「ナビゲータ」
をクリックし、「セマンティック・モデル」をクリックします。 - 「セマンティック・モデル」ページで、セマンティック・モデルをクリックして開きます。
- 「変数」
をクリックします。 - 「作成」
をクリックし、「初期化ブロックの作成」をクリックします。 - 「初期化ブロックの作成」で、「名前」フィールドに移動し、初期化ブロック名を入力します。
- 「タイプ」フィールドに移動し、「セッション」を選択します。 「OK」をクリックします。
- 「変数」タブが表示されていることを確認し、「Select文: DEFAULT」フィールドに移動して初期化問合せを入力します。
- 「接続プール」に移動し、「選択」をクリックして、初期化ブロックで使用する接続プールを参照して選択します。
- 「変数の追加」
をクリックし、一意の名前を入力します。 - デフォルト値を指定するには、次のいずれかのオプションを使用します。
- 「値」フィールドに移動し、デフォルト値を入力します。
- デフォルト値としてnullが必要な場合は、「値」を空白のままにします。
- 「詳細ビュー」をクリックし、「式エディタを開く」をクリックしてデフォルト値を決定する式を作成します。
- オプショナル: ユーザーが分析またはダッシュボードで変数値を設定できるようにするには、「任意のユーザーが値を設定できるようにする」を選択します(What If分析など)。
- オプション: 「セキュリティ・センシティブ」を選択すると、仮想プライベート・データベース(VPD)などの行レベル・データベース・セキュリティ戦略を使用する際に、その変数をセキュリティ・センシティブと識別できます。
- オプショナル: 「変数の追加」をクリックして別の変数を追加し、「上に移動」および「下に移動」を使用して変数を正しい順序で配置します。
- オプショナル: 「問合せのテスト」をクリックして初期化問合せから返された変数値をレビューし、変数が正しい値を受信していることを確認します。
- 「保存」をクリックします。