Computer Science/데이터베이스
Transaction이란? - 1 (정의, 특징-ACID)
들어가며 모 기업 면접에서 대규모 트랜잭션 관리하는 코드를 짜보고 싶다고 이야기했다. 그랬더니 "Isolation"에 대해 아냐는 물음이 들어왔고, 아무말도 할 수 없었다. 나중에 찾아보니 ACID 이야기가 나와 대충 아는 내용이 기억은 났지만, 트랜잭션을 하고 싶다는 사람이 바로 답이 나오지 않은 것은 부끄러웠다. 그래서 공부하는 내용을 정리해보려고 한다. 1. 정의 트랜잭션이란 하나 또는 그 이상의 명령을 통해 데이터베이스의 상태를 변화시키는 단일 논리 단위를 말한다. 실제 비즈니스 로직에서 어떤 요구사항이 수행될 때는 한 번 이상 데이터베이스를 접근하게 되는데, 이 모든 접근을 하나로 묶어 트랜잭션이라 한다. 가령, 인터넷으로 사과를 주문하는 상황을 가정했을 때 수행할 수 있는 접근은 다음과 같다...