Redwood: 表およびグラフに対するフィルタのパフォーマンスの向上
Oracleは、テクノロジを活用してデータベースからのデータ取得を高速化することで、計画担当者の生産性を向上させる機会を継続的に検討しています。 この更新では、ユーザー選択に基づくデータの増分フェッチを使用して、フィルタを使用した表およびグラフのパフォーマンスが向上します。
この機能では、フィルタ・バーのドロップダウン・フィルタに多数のメンバーが含まれる表またはグラフを処理するための新しいアプローチが使用されます。 前のメソッドでは、デカルト結合を使用して可能なすべてのフィルタ組合せを作成していました。
たとえば、
- 最初のフィルタで1,000人のメンバー
- 2番目のフィルタに12個のメンバー
- 第3フィルタの50メンバー
フル・デカルト結合では、600,000個の組合せが生成されます(1,000×12×50 = 600K)。 これらの組合せは、データベース問合せが繰り返されないようにサーバー・キャッシュに格納されました。 しかし、このような大きなデータセットの構築とキャッシュは、時間がかかり非効率でした。
個別問合せ最適化アプローチ:
25Cでは、個別の問合せ最適化の新しいアプローチを紹介します。 最適化されたメソッドにより、可能なすべてのフィルタ組合せを生成および格納する必要がなくなります。 かわりに、以前に選択したフィルタの関連メンバーのみを考慮して、各フィルタのデカルト結合に対して個別の問合せが実行されます。 これにより、次のことが保証されます:
- 最初のフィルタに対して1,000人のメンバーが取得されます。
- 2番目のフィルタに対して最大12個のメンバーが取得されます(最初のフィルタから選択したメンバーに基づきます)。
- 3番目のフィルタに対して最大50個のメンバーが取得されます(1番目と2番目のフィルタでの選択に基づいて)。
このターゲット・アプローチにより、不要な計算および格納結果の数が大幅に削減されます。
利点
- データ取得の削減 - すべての600Kの組合せをフェッチしてサーバー・キャッシュに格納する必要がなくなります。
- 処理の高速化 - 関連するフィルタ・メンバーのみが動的に取得され、問合せの実行時間が最小限に抑えられます。
- システム効率の向上 - メモリー使用量を削減し、サーバーの負荷を軽減して、レスポンス時間を短縮します。
これらの最適化を実装することで、フィルタのロード効率が向上し、ユーザー・エクスペリエンスが大幅に向上し、システムのオーバーヘッドが削減されます。
有効化のステップ
この機能を有効化するうえで必要な操作はありません。
ヒントと考慮事項
個別の問合せ最適化の新しいアプローチは、デフォルトで有効になっています。
フル・デカルト結合を使用して前のロジックに戻すには、次のようにMSC_OPTIMIZE_TABLE_FILTER_PERFORMANCEという名前のプロファイル・オプションを作成して設定することで、この機能を無効にできます:
- 「設定および保守」作業領域で、「サプライ・チェーン・プランニング」機能領域の「プロファイル・オプションの管理」タスクに移動します。
- 「プロファイル・オプションの管理」ページの「プロファイル・オプション」セクションで、新規アイコンをクリックします。
- 「プロファイル・オプションの作成」ページで、次のようにプロファイル・オプションを作成します:
- プロファイル・オプション・コード: MSC_OPTIMIZE_TABLE_FILTER_PERFORMANCE
- プロファイル表示名: MSC_OPTIMIZE_TABLE_FILTER_PERFORMANCE
- アプリケーション: プランニング共通
- モジュール: プランニング共通
- 開始日: 現在日
残りのフィールドは空白のままにします。
- 「保存してクローズ」をクリックします
- 「プロファイル・オプションの管理」ページのMSC_OPTIMIZE_TABLE_FILTER_PERFORMANCEプロファイル・オプションの「プロファイル・オプション・レベル」セクションで、サイト・レベルおよびユーザー・レベルの有効列および更新可能列のチェック・ボックスを選択します。
- 「保存してクローズ」をクリックします
- 作業領域の「プランニング・プロファイル・オプションの管理」ページで、MSC_OPTIMIZE_TABLE_FILTER_PERFORMANCEプロファイル・オプションを検索し、プロファイル値をFALSEに設定します。
これらのプロファイル関連の変更を行うには、管理権限を持つユーザーと作業する必要がある場合があります。
アクセス要件
次の権限を含む構成済ジョブ・ロールが割り当てられているユーザーは、この機能にアクセスできます。
- プランニング表の保守(MSC_MAINTAIN_PLANNING_TABLES_PRIV)
これらの権限は、この更新の前から使用可能でした。