XA 트랜잭션
여러 개의 노드 또는 다른 종료의 데이터베이스가 참여하는 하나의 트랜잭션(=분산 트랜잭션)을 의미합니다.
Goldilocks DBMS 에서는 이를 Global Transaction 이라고 칭하고 있습니다.
XA 트랜잭션의 로직
1. AP 에서 트랜잭션 관리자에게, 트랜잭션을 시작을 알립니다.
2. 트랜잭션 관리자는 어느 노드가 트랜잭션에 참여하는지 확인합니다. 다음 각 노드에 트랜잭션의 시작을 알립니다.
3. AP 에서 SQL 문장을 통해 작업을 수행합니다.
4. 모든 작업이 완료되면 AP 에서 트랜잭션 관리자에게 트랜잭션을 종료를 알립니다.
5. 트랜잭션 관리자는 각 데이터베이스 노드에 커밋과 롤백을 동시에 하도록 지시하며 이 때 2 단계 커밋을 수행합니다.
2단계 커밋은 아래 URL 을 참고 하시면 됩니다.
'Database > 개념' 카테고리의 다른 글
[DATABASE] 데이터베이스 스캔방식 설정으로 쿼리 응답속도 높이는 방법 알아보기 (0) | 2018.08.17 |
---|---|
[DATABASE] 데이터베이스 정규화 1NF, 2NF, 3NF, BCNF, 4NF, 5NF 알아보기 (1) | 2018.06.18 |
[DATABASE] 데이터베이스 OLAP 과 OLTP 의 차이점, 그리고 DW 의미 알아보기 (0) | 2018.05.26 |
[DATABASE] 데이터베이스 속도와 처리량 Latency 와 Throughput 의미 파악하기 (0) | 2018.01.22 |
[DATABASE] 데이터베이스 블락의 옵션 PCTFREE, PCTUSED, INITRANS, MAXTRANS 의미 파악하기 (0) | 2017.09.29 |