본문 바로가기
기타/정보처리기사

정보처리기사 정처기 | 데이터베이스 병행제어(Concurrency Control) | 필기&실기 개념

by YUNI Heo 2023. 7. 10.
반응형

 

✅ 병행제어(Concurrency Control)

https://velog.io/@ha0kim/%EB%8F%99%EC%8B%9C%EC%84%B1-%EC%A0%9C%EC%96%B4

병행 제어(Concurrency Control) 기법은 다중 트랜잭션 환경에서 데이터베이스의 일관성과 무결성을 유지하기 위해 트랜잭션들의 동시 실행을 조절하는 기법입니다. 병행 제어는 동시성을 향상시키고 성능을 개선하기 위해 여러 트랜잭션을 동시에 실행할 수 있도록 하면서도 데이터의 일관성을 보장합니다. 이러한 기법은 트랜잭션들 간의 상호작용과 충돌을 방지하고 데이터베이스에 대한 일관된 접근을 제공합니다.

 

💡 로킹(Locking)

https://blog.dbwatch.com/database-locks-how-to-monitor-and-manage-it

로킹(Locking)은 병행 제어 기법 중 하나로, 같은 자원을 액세스하는 다중 트랜잭션 환경에서 데이터베이스의 일관성과 무결성을 유지하기 위해 트랜잭션의 순차적 진행을 보장하는 직렬화 기법입니다. 로킹은 트랜잭션들이 공유하는 자원에 대한 잠금(lock)을 획득하고 해제함으로써 동시에 실행되는 트랜잭션들 간의 충돌을 방지합니다. 잠금은 트랜잭션들이 자원을 읽거나 수정할 때 사용되며, 트랜잭션이 해당 자원에 대한 잠금을 획득하면 다른 트랜잭션은 그 자원에 대한 액세스를 기다려야 합니다.



로킹을 통해 트랜잭션들이 순차적으로 실행되어 데이터베이스의 일관성과 무결성을 유지할 수 있습니다. 하지만 과도한 로킹은 동시성을 제한하고 성능을 저하시킬 수 있으므로 로킹의 효율적인 관리가 필요합니다.

반응형