검색
색인
2단계 커미트, 二段階-, two-phase commit, 2PC
복수의 컴퓨터에 분산 배치되어 있는 데이터베이스를 갱신할 때 커미트 처리(commit processing)를 갱신 준비 단계와 갱신 단계의 2단계로 나누어 제어하는 것. ①1단계: 응용 프로그램데이터베이스의 갱신 처리 마지막 단계에서 ‘커미트’라는 명령을 내린다. 커미트 명령을 접수한 마스터 컴퓨터는 갱신 대상의 모든 서버에 대해서 ‘커미트 준비’라는 지시를 보낸다. 각 서버는 실제로 데이터를 갱신할 준비가 되어 있으면 ‘준비 완료’라고 응답한다. ②2단계: 마스터의 컴퓨터는 모든 서버로부터 ‘준비 완료’의 응답을 받으면 각 서버에 ‘커미트 처리’를 지시한다. 이 지시를 받은 각 서버는 실제로 자기 디스크(magnetic disk)의 데이터를 갱신한다. 어느 한 대의 서버에서도 처리에 이상이 있으면 마스터 컴퓨터는 모든 서버에 후퇴 회복(rollback) 처리를 명령한다. 이것으로 처리 중이던 데이터 갱신을 모두 무효화된다. 대부분의 관계형 데이터베이스 관리 시스템(RDBMS)은 2단계 커미트 기능을 가지고 있다.