분산 트랜잭션

Code_Builder·2024년 8월 13일
0
post-thumbnail

분산트랜잭션이란?

DB 혹은 System에 걸쳐 수행되는 트랜잭션으로, 서로 다른 데이터 저장소에서 동시에 실행 가능

특징

  • ACID 속성: 모든 작업이 성공적으로 완료되거나 전혀 수행되지 않아야 함

  • 2단계 커밋 프로토콜: 트랜잭션의 준비 상태와 커밋 상태를 확인하여 모든 참여 시스템이 트랜잭션을 성공적으로 완료할 수 있도록 함

2PC: 트랜잭션의 성공 여부를 두 단계로 결정하여 데이터의 일관성을 유지

  • 장애 처리: 분산 트랜잭션은 네트워크나 시스템 장애가 발생할 경우에도 데이터의 일관성을 유지할 수 있는 메커니즘이 필요함

  • 복잡성: 여러 시스템 간의 상호작용으로 인해 분산 트랜잭션은 구현과 관리가 복잡함

사용 이유

  • 데이터 일관성 유지: 분산 트랜잭션을 통해 데이터를 동시에 변경해야 할 경우, 모든 시스템이 동일한 상태를 유지할 수 있도록 함

  • 신뢰성 향상: 2PC와 같은 프로토콜을 사용하여 실패한 트랜잭션을 안전하게 롤백할 수 있음

  • 확장성: 분산 시스템은 여러 서버와 데이터베이스에 걸쳐 작업을 분산시킬 수 있기때문에 시스템의 성능을 향상시키고 부하를 분산 가능함
profile
사소한일에도 최선을 다하기

0개의 댓글

관련 채용 정보