DevGang

[DB-20] 데이터베이스 제어 본문

정보처리/DB

[DB-20] 데이터베이스 제어

별천랑 2021. 1. 30. 21:27

1. 보안 (Sequrity)

  • 무결성은 권한이 있는 사용자로부터 데이터베이스를 보호하는 것, 보안은 권한이 없는 사용자로부터 데이터베이스를 보호하는 것

2. 보안의 특성

  • 보안을 위한 데이터 단위는 테이블 전체로부터 특정 테이블의 특정한 행과 열 위치에 있는 특정한 데이터 값에 이르기까지 다양함
  • 각 사용자들은 일반적으로 서로 다른 객체에 대하여 다른 접근권리 또는 권한을 갖게 됨
  • SQL의 경우에는 보안규정에 포함된 독립적인 기능으로 뷰 기법(view mechanism)과 권한인가 서브시스템(authorization subsystem)이 있음

3. 병행 제어의 목적

  • 데이터베이스의 공유 최대화
  • 시스템의 활용도 극대화
  • 사용자에 대한 응답 시간 최소화
  • 데이터베이스의 일관성 유지

4. 병행 제어기법에 의한 트랜잭션 제어로 막을 있는 문제점

  • 갱신 분실(lost update) : 갱신작업 반영이 안 되는 현상
  • 모순성(inconsistency) : 일광성이 깨짐
  • 연쇄 복귀(cascading rollback)(회복 불능)
  • 비 완료 의존성 문제(uncommitted dependency problem)
  • 불일치 분석 문제(inconsistent analysis problem)

5. 로킹(Locking)

  • 데이터의 접근을 상호 배타적으로 만들어 병행 제어를 하는 방법(하나의 트랜잭션이 데이터를 액세스 하는 동안 다른 트랜잭션이 데이터 항목을 액세스 할 수 없도록 하는 방법)
  • 로킹 단위가 크면 병행성 수준 낮아짐

- 2단계 로킹(two phase locking)

    • 직렬성을 보장
    • 확장단계와 축소 단계의 두 단계가 있음
    • 트랜잭션의 로크 요청과 해제 요청을 2단계로 실시
    • 스케줄의 직렬성을 보장하지만 교착상태가 발생할 있다.

* 로킹의 병행성 수준

  • 차원(Page-level) 잠금 > 테이블 차원의 잠금 >  차원의 잠금

6. 회복의 정의

  • 데이터베이스에 손상이 가해졌을 손상되기 이전의 상태로 되돌리는 작업

7. 장애의 종류 

  • 트랜잭션 장애(Transaction Failure)
  • 시스템 장애(System Failure)
  • 미디어 장애(Media Failure)
  • 네트워크 장애(Network Failure)

8. 회복 기법

  • 트랜잭션으로 쓰기가 수행될 때마다, 데이터베이스가 변경되기 전에 로그 레코드를 생성
  • 갱신 기법 : 연기 갱신(종료 시점까지 연기)과 즉각 갱신(부분완료 시점에도 반영)으로 나눔
  • 그림자 페이징 기법: 일정 크기 단위로 복사본을 보관해두고 변경하는 기법
  • 검사점 기법 : 검사시점을 로그에 보관해두고 시점을 찾아 수행하는 기법
  • 미디어 회복 기법 : DB내용을 주기적으로 어딘가에 덤프(저장) 놓는 기법
  • Undo : Log 저장된 정보를 이용하여 가장 최근의 변경(트랜잭션)부터 취소하여 데이터베이스 복구
  • Redo : 트랜잭션 오류 시 가장 최근의 정상상태로 DB 되돌린 트랜잭션 다시 수행

'정보처리 > DB' 카테고리의 다른 글

[DB-22] 자료구조  (0) 2021.01.30
[DB-21] 분산 데이터베이스  (0) 2021.01.30
[DB-19] 트랜잭션  (0) 2021.01.30
[DB-18] 뷰 (VIEW)  (0) 2021.01.30
[DB-17] 시스템 카탈로그  (0) 2021.01.30
Comments