3) 処理効率分析
アクセス分析の結果を基にデータベースの処理効率を改善する。主要なものとして以下の3つがある。
1] データの非正規化
データの正規化を第3正規形まで行うと冗長性のないデータ項目グループを得られるが、細分化されたすべてのエンティティをデータベースから読み取り、データを形成することは処理効率の面から好ましくない場合がある。
データベースを多様な処理に対応させることと処理効率の問題はトレードオフの関係にある。したがって、処理効率を重視する場合は、ある程度柔軟性を犠牲にし、一度正規化したものを処理効率の観点から非正規化することを検討する。
2] 資源競合の解消
同一エンティティに対して異なるユーザビューが同時にアクセスした場合、資源競合が発生し処理効率が低下する恐れがある。
データベース設計を行う際に、ユーザビューの発生頻度やアクセス経路などを考慮し、資源競合の最小化をはかっておく必要がある。
3] 導出データ項目の保持
導出データ項目とは、そのデータ項目の値が他のひとつもしくは複数のデータ項目から得られるものをいう。
例えば受注金額は受注量と単価のデータから求められるから導出データ項目である。
導出データ項目はデータベース上に持つ必要のない項目ではあるが、処理効率の観点から持つほうがよい場合がある。
導出データ項目を保持しない場合の導出のためのデータベース入出力回数が、導出元のデータ項目との整合性を維持するためのデータベース入出力回数より異常に多い場合は、導出データ項目をデータベースに保持したほうが処理効率がよい。
4) DBMSへの展開
アクセス分析、処理効率分析の結果を反映した概念データモデルを、実装する「関係データベース」、「階層データベース」などに展開する。