데이터베이스 관리에서 중요한 두 가지 개념인 병행 제어와 데이터베이스 회복에 대해 알아보겠습니다. 병행 제어는 여러 트랜잭션이 동시에 실행되면서 데이터베이스의 일관성을 유지하도록 하는 기법이며, 데이터베이스 회복은 장애로 인해 손상된 데이터를 복구하는 작업입니다.
병행제어
병행제어의 문제점 (★)
데이터 | 트랜잭션1 | 트랜잭션2 |
1000 | READ(1000) | |
1000 | ADD(1000) | |
2000 | STORE(2000) | READ(2000) |
1000 | 장애로 ROLLBACK |
데이터 | 트랜잭션1 | 트랜잭션2 |
1000 | READ(1000) | |
1000 | ADD(1000) | |
2000 | STORE(2000) | |
2000 | READ(2000) | |
2000 | ADD(2000) | |
4000 | STORE(4000) | |
1000 | 장애로 ROLLBACK |
병행제어 기법 (★)
구분 | 로크 수 | 병행성 | 오버헤드 |
로킹 단위가 크면 | 적어짐 | 낮아짐 | 감소 |
로킹 단위가 작으면 | 많아짐 | 높아짐 | 증가 |
데이터베이스 회복(Database Recovery)
장애의 유형
유형 | 설명 |
트랜잭션 장애 | 트랜잭션의 실행 시 논리적인 오류로 발생할 수 있는 에러 상황 |
시스템 장애 | H/W 시스템 자체에서 발생할 수 있는 에러 상황 |
미디어 장애 | 디스크 자체의 손상으로 발생할 수 있는 에러 상황 |
Undo와 Redo
Undo | Redo |
트랜잭션 로그를 이용하여 오류와 관련된 모든 변경을 취소하여 복구 수행 |
트랜잭션 로그를 이용하여 오류가 발생한 트랜잭션을 재실행하여 복구수행 |
로그 파일
회복 기법 (★)
병행 제어와 데이터베이스 회복은 데이터베이스 관리에서 중요한 부분입니다. 이 개념들을 잘 이해하고 적절히 활용하면 데이터베이스의 성능과 안정성을 크게 향상시킬 수 있습니다. 2024년에 정보처리기사를 따기 위해 노력하는 모두에게 행운을 빕니다!
[정보처리기사 실기 공부] 메모리 관리 (0) | 2024.06.04 |
---|---|
[정보처리기사 실기 공부] 데이터 전환 (0) | 2024.05.25 |
[정보처리기사 실기 공부] 절차형 SQL (0) | 2024.05.20 |
[정보처리기사 실기 공부] 그룹 함수와 윈도우 함수 (0) | 2024.05.16 |
[정보처리기사 실기 공부] SELECT 쿼리 활용 (2) (0) | 2024.05.13 |