−데이터베이스 트랜잭션은 이 문제를 상태 전이의 경계로 다뤘다. Gray의 1981년 정리는 트랜잭션을 상태 변환으로 설명하며 원자성, 일관성, 지속성을 핵심 성질로 제시한다.[각주 15]이후 널리 쓰인 ACID라는 표현에는 격리성까지 포함되며, 이 약어는 Härder와 Reuter의 1983년 논문에서 정리되었다.[각주 16] 즉 장애와 동시 접근이 있어도 유효한 상태만 관찰하게 하려면, 락·격리 수준·원자적 커밋·복구 같은 별도 계약이 필요하다.
이 계보에서 상태는 단순히 메모리에 기록된 값이 아니라, 소유자·전이 순서·관찰 가능성·장애 후 복구까지 함께 정의해야 하는 시스템 자원이 되었다. 이걸 해결 하기위해 이벤트 소싱과 최종 일관성이 이야기되지만, 이 각각의 해법 또한 문제 전체의 해법이 아니라, 사건 기록과 복제본 수렴을 다루는 서로 다른 설계 선택지일 뿐이다.
+데이터베이스 트랜잭션은 이 문제를 상태 전이의 경계로 다뤘다. Gray의 1981년 정리는 트랜잭션을 상태 변환으로 설명하며 원자성, 일관성, 지속성을 핵심 성질로 제시한다.[각주 15]이후 널리 쓰인 ACID라는 표현에는 격리성까지 포함되며, 이 약어는 Härder와 Reuter의 1983년 논문에서 정리되었다.[각주 16] 즉 장애와 동시 접근 아래에서 정의한 무결성 제약과 격리 수준에 맞는 상태 전이를 제공하려면, 락이나 MVCC 같은 동시성 제어, commit/abort 경계, 로그와 복구, 그리고 여러 참여자가 있는 경우 원자적 커밋 프로토콜 같은 별도의 계약이 필요하다는 점이다.
이 계보에서 상태는 단순히 메모리에 기록된 값이 아니라, 소유자·전이 순서·관찰 가능성·장애 후 복구까지 함께 정의해야 하는 시스템 자원이 되었다. 이후 분산 상태를 다루는 설계에서는 이벤트 소싱과 최종 일관성 같은 선택지도 널리 사용되었다.
이 각각의 해법 또한 문제 전체의 해법이 아니라, 사건 기록과 복제본 수렴을 다루는 서로 다른 설계 선택지일 뿐이다.