ACID?

Parker.Park·2022년 9월 1일
0

코드캠프

목록 보기
32/34

ACID?

ACID는 데이터베이스 트랜잭션이 안전하게 수행된다는 것을 보장하기 위한 성질을 가르키는 약어라고 한다.

트랜잭션(transaction)은 데이터베이스의 상태를 변화시키기 위해 수행하는 작업단위를 의미한다. SQL 질의어를 통해 DB에 접근하는 것을 의미하기도한다.
ACID에 대한 세부 의미를 알아보자.

  • Atomicity
    원자성이라고 하며, 트랜잭션과 관련된 작업들이 부분적으로 실행되다가 중단되지 않는 것을 보장하는 능력이라고 한다. 예를 들어 이체를 할 경우 오르지 돈을 출금하는 작업만 성공하고 돈을 다른 사람에게 넣는 작업에 대해서도 마무리 해야한다. 중간 단계까지만 실행되고 실패하는 일이 없도록 하는 것이라고 한다.
  • Consistency
    일관성이라고 하며, 트랜잭션이이 성공적으로 끝나도 데이터베이스는 일관성있는 상태가 유지되어야 하는 것을 의미한다. 만약 이를 위반하면 트랜잭션은 중단된다.
  • Isolation
    독립성이라고 하며, 트랜잭션을 수행 시 다른 트랜잭션의 연산 작업이 끼어들지 못하도록 보장하는 것을 의미한다. 예를 들어 이체 작업하는 도중에 쿼리를 실행하면 중간에 다른 트랜잭션은 대기한 다음 이체 작업이 끝난다음 쿼리가 실행된다.
  • Durability
    지속성이라고 하며, 성공적으로 수행된 트랜잭션은 영원히 반영되어야 한다는 것을 의미한다.

참조

[ACID, 위키백과]

[[DB] Transaction 과 ACID란?, medium.com]

profile
개발자준비중

0개의 댓글