49. 병행제어 기법의 종류가 아닌 것은?
① 로킹 기법 ❷ 시분할 기법
③ 타임 스탬프 기법 ④ 다중 버전 기법
문제 분석
병행제어(Concurrency Control)란?
- 여러 트랜잭션이 동시에 실행될 때, 데이터의 일관성과 무결성을 유지하는 기법
- 트랜잭션 간 충돌을 방지하고 데이터베이스가 올바르게 동작하도록 보장
💡 문제에서 "병행제어 기법이 아닌 것"을 찾는 것이 핵심!
각 선택지 분석
✅ ① 로킹(Locking) 기법 → O (병행제어 기법)
- 데이터에 Lock(잠금)을 설정하여 동시에 접근하지 못하게 하는 기법
- 대표적인 방법:
- 공유(Shared) Lock: 여러 트랜잭션이 읽기는 가능하지만, 쓰기는 불가능
- 배타(Exclusive) Lock: 한 트랜잭션이 독점적으로 읽고 쓸 수 있음
- 💡 트랜잭션 충돌을 방지하는 가장 전통적인 방법!
✅ ③ 타임 스탬프(Timestamp) 기법 → O (병행제어 기법)
- 트랜잭션이 시작될 때 타임 스탬프(시간 정보)를 부여하여 순서를 정하는 기법
- 오래된 트랜잭션이 우선권을 가지며, 순서가 어긋나면 실행을 거부
- 💡 Lock 없이도 동시 실행을 조정 가능!
✅ ④ 다중 버전(Multi-Version) 기법 → O (병행제어 기법)
- 하나의 데이터를 여러 개의 버전으로 관리하여 읽기 작업과 쓰기 작업을 충돌 없이 수행
- 예: MVCC(Multi-Version Concurrency Control)
- 💡 오라클, PostgreSQL 등에서 널리 사용됨
❌ ② 시분할 기법(Time Sharing) → X (병행제어 기법이 아님!)
- 운영체제에서 CPU를 여러 프로세스가 번갈아 가며 사용하도록 하는 기법
- 데이터베이스의 병행제어와는 직접적인 관련이 없음
- 💡 CPU 자원을 나누어 쓰는 개념이지, 데이터 동시성 제어가 아님!
정답: ② 시분할 기법(Time Sharing)
이유:
- 시분할 기법은 운영체제의 프로세스 스케줄링 기법이지, 데이터베이스 병행제어 기법이 아님
- 병행제어는 트랜잭션의 충돌 방지를 위해 Lock, 타임스탬프, 다중 버전 등의 기법을 사용함
🎯 핵심 정리:
병행제어 기법에는 로킹, 타임스탬프, 다중 버전 기법 등이 있으며, 시분할 기법은 운영체제의 CPU 관리 방식이므로 병행제어와 관련 없음!
반응형
'기출문제 > 정보처리기사' 카테고리의 다른 글
2021년 2회 정보처리기사 기출문제 51번 (0) | 2025.03.23 |
---|---|
2021년 2회 정보처리기사 기출문제 50번 (1) | 2025.03.22 |
2021년 2회 정보처리기사 기출문제 48번 (0) | 2025.03.22 |
2021년 2회 정보처리기사 기출문제 47번 (0) | 2025.03.22 |
2021년 2회 정보처리기사 기출문제 46번 (0) | 2025.03.22 |