概要
Cognos BIのDMRモデルにおける、レポート実行時のパフォーマンスチューニング事例です。
クロス集計などで、列または行に複数のデータアイテムをネストされた状態で配置する事は多いと思います。
例えば、列に「Company name」「Area name」「Department」の3つのアイテムを置いた場合に、それぞれのアイテムが異なるディメンションに存在する場合、例えば以下の画像の事例では、
Company name = 4種類
Area name = 5種類
Department = 6種類
であった場合に、クロスジョインで全アイテムの全メンバーの組み合わせ(120通り)が計算され、結果セットイメージの仮想キューブを作成する処理が非常に重くなります。
対応策
以下のように、親子関係を持たせる事ができるデータアイテム同士は、同一ディメンションの同一階層内に配置するDMRモデリングを構成する事により、計算パターンが非常に少なくなり、仮想キューブ作成処理が軽くなりレスポンスが向上します。
「ディメンションの統合」という選択肢は、DMRモデリングでは覚えておいて頂ければと思います。