[データベース設計編]参照整合性制約機能を多用してはいけない
http://itpro.nikkeibp.co.jp/article/COLUMN/20090512/329851/
参照整合性をDBに設定していると、データ移行時にデータの挿入ができなかったり、また特殊な状況下でのデータ変更が実現できなくなるという弊害もあります。
参照整合性は、DBだけで実現できるものではなく、アプリ側でも実現が可能とも書かれています。
DBで実現するほうが、参照整合性を永続化した状態でデータを保存できますが、アプリ側での対応だとある瞬間のみしか整合性を保証できない点に気をつけましょう。
ですので私は、基本的に可能な限りDB上で参照整合性を保つようにしています。
移行のパフォーマンス劣化は確かにありますが、頻繁にデータ移行を行うわけでもありませんし。
またパフォーマンス劣化を前提にして、業務の流れを構築していきますから、その点をクリアできれば、DBでの参照整合性のほうがいろいろ便利だな〜と思っています。
2009年06月04日
この記事へのコメント
コメントを書く
この記事へのトラックバックURL
http://blog.sakura.ne.jp/tb/107012291
※ブログオーナーが承認したトラックバックのみ表示されます。
この記事へのトラックバック
http://blog.sakura.ne.jp/tb/107012291
※ブログオーナーが承認したトラックバックのみ表示されます。
この記事へのトラックバック