重すぎるOLTP
※OLTP=オンライントランザクションシステム(多数の端末から中央のデータベースにアクセスするタイプのシステム)
デメリット
速度を要求されるシステムなのに、遅いためユーザー離脱などにつながる。
対策
- 早い段階でのプロトタイプでの性能確認(大量データでの性能確認)
- 業務要件自体が無理
- 非正規化
- 実行計画での早期確認
- 早い段階での集計表作成
DATE型の型の不統一
デメリット
規約が不十分なため、yyyymmddとyyyymmddhhmmssが混じるなど
対策
- 規約の再定義
- 時分秒があるときは00:00:00を入れると事故(意図した検索結果が出力されない)の元になる
- 日付を検索するときは原則、時分秒までいれていいとおもう(個人的には。)
- check制約を入れるのもあり
- データベースだけではなく、画面表示なども混乱することが多い(ライブラリなどで統一した表記にしておいたほうがいいかも)
データ量の想定が甘い
デメリット
システム構築後数年たって、データ量が増えすぎ、パフォーマンスが劣化する
いざ削除しようと思っても、削除していいデータかどうかわからず削除ができない
対策
- データ削除機能(物理削除)を持たせる
- 概算値でいいので、データの蓄積量を決める
- 設計段階でのCRUDの意識