본문 바로가기

Database

(2)
Lock의 개념 Lock에 대해서 정리해보려한다. Lock이란?? 데이터의 일관성을 보장하기 위한 방법. Lock의 종류는 2가지로 나뉜다. Shared Lock (공유 Lock 또는 Read Lock) 데이터를 조회할때 사용. Read Lock이 걸려있을때는 다른 Read Lock을 설정할 수 있음 데이터에 Lock을 걸었지만 다른 사용자나 기기에선 조회가 가능하지만 변경이 불가능 Exclusive Lock (배타적 Lock 또는 Write lock) 데이터를 변경할때 사용, Write Lock이 걸려있을때는 다른 Write Lock을 설정할 수 없음. Dead Lock이란? - 2개 이상의 트랜잭션이 리소스의 Lock을 할당받기위해서 발생하는 교착상태 Dead Lock 해결방안 - Dead Lock을 발견하면 하나의..
Transaction이란? 데이터베이스의 상태를 변화시키기 해서 수행하는 작업의 단위 하나의 작업을 수행하기위해 모아놓은 데이터베이스들의 연산 집합을 뜻하며 "데이터베이스의 상태를 변화시키는 하나의 논리적기능을 수행하는 작업 단위" 이다 ※ 트랜잭션의 특징 원자성 (Atomicity) 일관성 (Consistency) 독립성 (Isolation) 지속성 (Durability) ACID 원자성 : 트랜잭션이 데이터베이스에 모두 반영되던가, 아니면 전혀 반영되지 않아야 한다는 것 일관성 : 트랜잭션의 작업처리 결과가 항상 일관되야 한다는 것 독립성: 하나의 트랜잭션에는 다른 트랜잭션이 관여할 수 없다는 것 지속성: 트랜잭션이 성공적으로 완료되었을 경우 결과는 영구적으로 반영되야한다는 것