본문 바로가기

전체 글

(53)
동시성 제어 동시성 제어(Concurrency Control)**는 데이터베이스 시스템에서 여러 트랜잭션이 동시에 실행될 때 발생할 수 있는 문제를 해결하고, 데이터의 일관성과 무결성을 유지하기 위한 기술과 메커니즘을 의미합니다. 동시성 제어는 트랜잭션이 동시에 실행되면서도 서로 영향을 미치지 않고, 데이터베이스의 ACID 속성을 유지하는 데 필수적입니다.동시성 제어의 주요 문제더티 읽기 (Dirty Read):하나의 트랜잭션이 커밋되지 않은 다른 트랜잭션의 데이터를 읽는 상황입니다. 만약 읽은 트랜잭션이 롤백되면, 읽은 데이터는 무효가 됩니다.비 반복 읽기 (Non-repeatable Read):동일한 트랜잭션이 같은 데이터를 두 번 읽었을 때, 두 번째 읽기에서 데이터가 변경된 경우입니다. 이는 트랜잭션이 실행되..
트랜잭션(Transaction)은 데이터베이스 시스템 트랜잭션(Transaction)**은 데이터베이스 시스템에서 데이터베이스의 상태를 변환하는 하나의 작업 단위를 나타냅니다. 트랜잭션은 데이터베이스에서의 작업을 일관되게 수행하기 위해 일련의 연산들을 묶어 관리하는 메커니즘을 제공합니다. 데이터베이스 트랜잭션은 ACID 속성을 만족해야 합니다.트랜잭션의 ACID 속성원자성 (Atomicity):트랜잭션은 원자적으로 실행되어야 합니다. 즉, 트랜잭션 내의 모든 작업이 완전히 실행되거나 전혀 실행되지 않아야 합니다. 중간 상태는 허용되지 않습니다. 예를 들어, 은행 계좌 이체 작업에서 돈을 송금하고 받는 두 작업이 포함될 때, 둘 중 하나라도 실패하면 전체 작업이 취소되어야 합니다.일관성 (Consistency):트랜잭션이 완료되면 데이터베이스는 일관된 상태를..
트랜잭션(Transaction) 트랜잭션(Transaction)은 데이터베이스에서 일관성과 무결성을 유지하며 데이터를 처리하기 위한 핵심 개념입니다. 트랜잭션은 데이터베이스 작업의 원자성, 일관성, 고립성, 지속성(ACID 속성)을 보장하는 단위입니다.1. 트랜잭션의 정의트랜잭션은 데이터베이스에 대한 일련의 작업들을 하나의 논리적 단위로 묶은 것입니다. 트랜잭션은 성공적으로 완료되거나 실패하여 모두 되돌려지거나 하는 원자성(Atomicity)을 가지며, 이를 통해 데이터의 일관성을 유지합니다.2. 트랜잭션의 주요 속성 (ACID 속성)트랜잭션은 다음 네 가지 주요 속성을 보장합니다:원자성 (Atomicity):트랜잭션은 '모두 수행되거나 아무것도 수행되지 않는다'는 원칙을 따릅니다. 트랜잭션이 중간에 실패하면, 모든 작업이 원래 상태로..