이번 시간에는 Database에서 Transaction과 ACID에 대해서 알아보는 시간을 갖도록 하겠다. ACID의 개념을 이해하기 전에 우선 Transaction의 개념을 알아야한다. 데이터베이스에서는 데이터에 대한 하나의 논리적 실행단계를 트랜잭션(Transaction)이라 한다. 쉽게 말해서 여러 작업들을 하나로 묶은 단위이다. 예를 들어, 은행에서 계좌이체를 트랜잭션이라고 할 수 있는데, 계좌이체 자체의 구현은 내부적으로 여러 단계로 이루어질 수 있지만 전체적으로는 '송신자 계좌의 금액 감소', '수신자 계좌의 금액 증가'가 한 동작으로 이루어져야 하는 것을 의미한다. 이 한 덩어리의 작업들은 모두 실행되거나, 실행되지 않는다. (all-or-nothing) ACID는 데이터베이스 트랙잭션이 안..