−낙관적 검증
낙관적 방법에서 작업은 읽기·검증·쓰기 단계를 거치고, 어떤 실행을 허용할지는 작업들의 읽기·쓰기 집합 사이의 관계로 정한다. 충돌이 드물면 미리 기다리는 비용을 줄일 여지가 있지만, 검증에 실패한 작업은 버려진다. 낙관적이라는 이름은 성공을 가정하고 검증 시점까지 진행하는 운영 방식에서 나왔다.[각주 2]
웹 편집기의 버전 검사는 이 생각을 좁은 범위에 적용한 것으로, 저장하려는 행의 버전이 읽어둔 값과 같을 때만 변경한다. 그렇다고 한 행의 조건부 갱신과 논문의 전체 트랜잭션 검증 알고리즘을 같은 구현으로 부를 수는 없다.
다중 버전
읽는 작업에 필요한 이전 버전을 남겨 두면 쓰기와 읽기 사이의 대기 관계가 달라진다. 어느 버전을 읽게 하고 어떤 실행을 거절할지는 별도의 규칙이므로, 버전을 보관하는 일과 직렬가능성의 조건은 나눠서 봐야 한다.[각주 3]
+낙관적 검증 (1981)
Kung과 Robinson이 1981년에 제시한 낙관적 방법에서 작업은 읽기·검증·쓰기 단계를 거치고, 어떤 실행을 허용할지는 작업들의 읽기·쓰기 집합 사이의 관계로 정한다. 충돌이 드물면 미리 기다리는 비용을 줄일 여지가 있지만, 검증에 실패한 작업은 버려진다. 낙관적이라는 이름은 성공을 가정하고 검증 시점까지 진행하는 운영 방식에서 나왔다.[각주 2]
웹 편집기의 버전 검사는 이 생각을 한 행에 적용한 예다. 저장하려는 행의 버전이 읽어둔 값과 같을 때만 변경하며, 논문의 전체 트랜잭션 검증 알고리즘보다 좁은 범위를 보호한다.
다중 버전의 이론화 (1983)
Bernstein과 Goodman의 1983년 논문은 다중 버전 스케줄의 정확성을 설명하고 새 알고리즘과 기존 알고리즘을 같은 이론으로 분석했다. 읽는 작업에 필요한 이전 버전을 남겨 두면 쓰기와 읽기 사이의 대기 관계가 달라진다. 어느 버전을 읽게 하고 어떤 실행을 거절할지는 별도의 규칙이므로, 버전을 보관하는 일과 직렬가능성의 조건은 나눠서 봐야 한다.[각주 3]