1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Cognos パフォチュー事例 - DMRとリレーショナルの混在

Posted at

概要

何度かCognosプロジェクトのパフォーマンスチューニング支援で見かけた問題です。
DMR(Dimensionally Modeled Relational)のモデルと、リレーショナルのモデルを1つのクエリー内に同居させていて、レポート実行のパフォーマンスが悪化している事例です。

説明

リレーショナルモデルとは、Framework Managerでモデルを作成した際に、下図の青枠のようなクエリーサブジェクトのセットとして構成されるモデルです。一般的に使用されているモデルです。
DMRとは、同じくFMでモデル作成時に、オレンジ枠のように階層構造を持ったディメンションベースで構成されているモデルです。
image

これらのモデルは、1つのパッケージ上に共存させることも、1つのクエリー上に共存させる事も可能なのですが、1つのクエリー上に共存させた場合、レポート実行時に「ローカル処理」が発生して、レポートのレスポンス遅延が現れやすくなります。
「ローカル処理」とは、リレーショナルモデル側の結果セットと、DMRモデル側の結果セットを結合する際に、データベース上で行うのではなく、Cognos BIノード上に両結果セットを持ってきて、Cognos BIノード上で結合処理を行う事を言います。
「ローカル処理」は、基本的に1CPUコアで処理されますので、データベース上で処理を行うより、処理時間が長時間化する事になります。

レポートを開発する際は、この様なDMRモデルとリレーショナルモデルの混在が無いか、常に注意する事が必要と覚えておいて頂ければと思います。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?