기술용어/데이터베이스

2PC(Phase Commit)

아이티신비 2024. 6. 8. 09:00

분산 데이터베이스 환경에서 원자성 보장, 2PC

정의
  • 분산 데이터베이스 환경에서 분산 트랜잭션 발생 시에 원자성을 보장하기 위하여 모든 노드에 Commit 혹은 Rollback 되는 메커니즘
필요성
  • 데이터 일관성 : 일부 지역 노드만 데이터를 갱신하는 일관성 위배 방지
  • 데이터 품질 : 지역 노드 간에 데이터 동기화를 통한 품질 확보
구조
  • Prepare 단계 : Golbal Coordinator 가 Commit Point Site 를 제외한 나머지 노드에게 Prepare 요청
  • Commit 단계 : Coordinator 가 다른 Node 들로 부터 Ack 를 받았을 때 Commit 명령
장점
  • Commit 단계 수는 신뢰성과 정비례 하지만, 오버헤드와도 정비례 함
  • 분산 DB에서 데이터 일관성 및 신뢰성 유지
특성
  • 여러 단계를 거칠수록 신뢰도는 증가하지만 반대로 오버헤드는 증가
  • 각 Note 데이터베이스의 데이터 일치성을 위해서 각 Node 마다 협력 필요
  • 2PC는 트랜잭션의 중요한 특성인 Atomicity를 보장하기 위해서 분산데이터베이스에서 이용
2단계 Commit
  • 1단계(Prepare Phase) - Global Coordinator (분산 트랜잭션 및 Global Commit을 시작하는 노드)가 분산 트랜잭션에 참여하는 노드들에 대하여 Prepare 하도록 요청하는 단계
  • 2단계(Commit Phase) - 노드에 Commit / Rollback 명령을 보내는 단계
 


 

공감과 댓글은 아이티신비에게 큰 힘이 됩니다.

블로그 글이 유용하다면 블로그를 구독해주세요.♥

'기술용어 > 데이터베이스' 카테고리의 다른 글

데이터베이스 보안  (0) 2024.06.10
데이터 마이닝(Data Mining)  (0) 2024.06.10
OLAP(OnLine Analyical Processing)  (0) 2024.06.09
MDM(Master Date Management)  (0) 2024.06.09
K-means  (1) 2024.06.08