기출문제/정보처리기사
2020년 3회 정보처리기사 기출문제 54번
엉클지니
2025. 4. 9. 16:48
54. 데이터베이스 로그(log)를 필요로 하는 회복 기법은?
❶ 즉각 갱신 기법 ② 대수적 코딩 방법
③ 타임 스탬프 기법 ④ 폴딩 기법
✅ 문제 다시 보기
54. 데이터베이스 로그(log)를 필요로 하는 회복 기법은?
❶ 즉각 갱신 기법
② 대수적 코딩 방법
③ 타임 스탬프 기법
④ 폴딩 기법
🔍 1. 문제 분석
이 문제는 데이터베이스의 회복 기법(Recovery Techniques)에 대한 문제예요.
여기서 핵심 키워드는 바로 "로그(log)"입니다!
💡 **"어떤 회복 기법이 로그를 필요로 하냐?"**를 묻는 것이죠!
📘 2. 보기별 해설
보기 번호 보기 이름 설명 로그 사용 여부
❶ | 즉각 갱신 기법 | 트랜잭션이 완료되지 않았더라도 데이터를 바로 DB에 반영. | ✅ 필요함 |
② | 대수적 코딩 방법 | 에러를 검출하고 정정하기 위한 에러 제어 코드의 한 방식. | ❌ 관련 없음 |
③ | 타임 스탬프 기법 | 동시성 제어를 위해 트랜잭션마다 시간 정보 부여. 회복과 직접 무관. | ❌ 사용 안 함 |
④ | 폴딩 기법 | 해싱 기법 중 하나로, 파일 주소 계산 방식임. 회복 기법과 무관. | ❌ 사용 안 함 |
🧠 3. 핵심 개념 정리: "즉각 갱신 기법"이란?
📌 즉각 갱신 기법(Immediate Update)
- 트랜잭션의 변경 사항을 commit 전에 바로 DB에 반영함.
- 이때 문제가 생기면 로그를 이용해 이전 상태로 되돌려야 하므로 로그가 필수!
🔥 그래서 이 기법은 반드시 UNDO/REDO 로그를 사용해요!
💾 로그(Log)란?
- 트랜잭션의 작업 이력을 기록하는 일지 같은 거예요!
- 회복 시 중요한 단서가 됨.
- 잘못된 작업은 UNDO (되돌리기)
- 완료된 작업은 REDO (다시 반영)
✍️ 4. 예시로 쉽게 이해하기
예를 들어서 볼게요! 📚
시점 동작 내용 DB 상태 로그 기록
T1 시작 | 트랜잭션 T1 시작 | A=100 | BEGIN T1 |
갱신 | A ← A + 50 | A=150 | UNDO: A=100, REDO: A=150 |
충돌 발생 | 시스템 오류 | ? | 로그를 이용해 복구 필요! |
💥 오류 발생 시에는 로그를 보고
- A=100으로 되돌릴지(UNDO),
- A=150을 다시 반영할지(REDO)를 판단합니다.
✅ 결론 정리
정답은 ❶ 즉각 갱신 기법입니다! 🎯
🌟 핵심 포인트 정리
구분 내용
관련 키워드 | 회복 기법, 로그(Log), 즉각 갱신 |
왜 로그 필요? | 트랜잭션 도중 DB에 반영되기 때문에 오류 시 복구용 |
기억 팁 | "즉각 갱신" → "바로 저장하니 기록(로그) 꼭 필요!" 📝 |
😊 마무리 꿀팁!
💡 회복 기법에서 로그를 사용하는 건 대표적으로 즉각 갱신 기법과 지연 갱신 기법이에요!
- 즉각 갱신: 로그 필수 (UNDO/REDO 모두 가능)
- 지연 갱신: 로그는 commit 후 반영 → 주로 REDO 사용
궁금한 점 더 있으면 얼마든지 물어봐 주세요! 함께 합격까지 달려봐요! 🚀✍️📘