Skip to main content

History

Overview

履歴管理のテーブル設計についてまとめているセクション。

  1. 単純に行為・出来事の事実を記録する履歴
  2. 元の行為・出来事が変更されるので、変更前の状態を記録する履歴
  3. 継続的な発生を前提にして、行為・出来事の事実を記録する履歴

Image from Gyazo

注意事項

リレーショナルモデルは履歴データが苦手

リレーショナルモデルが苦手とするデータ構造の1つとして履歴データを上げている。

データ容量

履歴を持ったテーブルを扱うと、ディスク容量増加やレコードが増えることによるパフォーマンス低下が発生する。
そして、コーディングが複雑になるという問題もあるため履歴が必要不可欠なテーブルに限定する。
ただし、クラウドでの開発であれば容量もパフォーマンスもプロジェクト規模に合わせて変更できるため制御は可能なため、プログラムの複雑さも共通処理にまとめ緩和は可能。

Resource

履歴テーブルについて