지식/Python

[Database] Transaction

ZeroAct 2023. 8. 24.
728x90
반응형

Transaction 이란 하나 또는 그 이상의 database operations 의 묶음을 의미한다.

이 묶음은 하나의 작업으로 수행된다.

Transaction 은 operation 들이 한번에 일관적으로 수행되는 것을 보장하고 error 가 났을 때 operation 하나하나의 결과 상태가 아닌 transaction 수행 전의 상태로 돌아갈 수 있도록 rollback 할 수 있다.

 

4 가지 주요 원칙이 있는데 앞글자를 따서 ACID 라고 부른다.

  1. Atomicity: 여러 명령들이 나눠질 수 없는 하나의 작업으로 취급된다. 성공하면 모든 것이 성공하는 것이고 실패한다면 모든 것이 실패하는 것이다.
  2. Consistency: 모든 데이터는 정의된 규칙에 의해 일관적이어야 한다.
  3. Isolation: 한 transaction 은 다른 transaction 들과 독립적이어야 하며 서로 영향을 주지 못해야 한다.
  4. Durability: db 밖에서 무슨일이 있더라도 데이터는 안전해야 한다.

 

728x90
반응형

'지식 > Python' 카테고리의 다른 글

[python] Factory Pattern  (0) 2023.02.26
[python] 시간, 타입 체크 데코레이터  (2) 2023.02.26

댓글