프로그래밍/2024 정보처리기사

2024 정보처리 기사 - 물리적 데이터베이스 설계

코드자국 2024. 2. 15. 23:12
반응형

물리적 데이터베이스 설계

트랜잭션의 상태

  •   활동(Acive) : 트랜잭션이 실행 중인 상태
  •   실패(Failed) : 트랜잭션 실행에 오류가 발생하여 중단된 상태
  •   철회(Aboried) : 트랜잭션이 비정상적으로 종료되어 Rollback 연산을 수행한 상태
  •   부분 완료(Partially Committed) : 트랜잭션을 모두 성공적 으로 실행한 Commit 연산이 실행되기 직전인 상태 완 
  •   완료(Committed) : 트랜잭션을 모두 성공적으로 실행한 Commit 연산을 실행한 후의 상태

 


트랜잭션의 특성

  • Atomicity(원자성) : 트랜잭션의 연산은 데이터베이스에 모두 반영되도록 완료(Commit)되든지 아니면 전혀 반 영되지 않도록 복구(Rollback)되어야 함
  • Consistency(일관성) : 트랜잭션이 그 실행을 성공적으로 완료하면 언제나 일관성 있는 데이터베이스 상태로 변 환함
  • Isolation(독립성) : 둘 이상의 트랜잭션이 동시에 병행 실 행되는 경우 어느 하나의 트랜잭션 실행중에 다른 트랜 잭션의 연산이 끼어들 수 없음
  • Durabitly 영속성) : 성공적으로 완료된 트랜잭션의 결과 시스템이 고장나더라도 영구적으로 반영되어야

 


인덱스

  • 인덱스(Index)는 데이터 레코드를 빠르게 접근하기 위 해 <키 값, 포인터> 쌍으로 구성되는 데이터 구조이다.
  • 인덱스를 통해서 파일의 레코드에 대한 액세스를 빠르 게 수행할 수 있다.
  • 데이터 정의어(DDL) 이용하여 사용자가 생성 (CREATE), 변경(ALTER), 제거(DROP) 있다.

  • 뷰(View)는 사용자에게 접근이 허용된 자료만을 제한 적으로 보여 주기 위해 하나 이상의 기본 테이블로부터 유도된, 이름을 가지는 가상 테이블이다.
  • 뷰는 저장장치 내에 물리적으로 존재하지 않지만, 사용 자에게는 있는 것처럼 간주된다.
  • 기본 테이블의 기본키를 포함한 속성(열) 집합으로 뷰 를 구성해야만 삽입, 삭제, 갱신 연산이 가능하다.
  • 뷰가 정의된 기본 테이블이나 뷰를 삭제하면 그 테이블 이나 뷰를 기초로 정의된 다른 뷰도 자동으로 삭제된다.
  • 뷰는 독립적인 인덱스를 가질 수 없다.
  • 뷰를 정의할 때는 CREATB, 제거할 때는 DROP문을 사용한다.

파티션의 종류

 

데이터베이스에서 파티션(Patition)은 대용량의 테이 블이나 인덱스를 작은 논리적 단위인 파티션으로 나누 는 것을 말한다.

 

  • 범위 분할(Range Partioning) : 지정한 열의 값을 기준으 로 범위를 지정하여 분할함

 

  • 해시 분할(Hash Partioning)

- 해시 함수를 적용한 결과 값에 따라 데이터를 분할 한다.

- 특정 파티션에 데이터가 집중되는 범위 분할의 단점 을 보완한 것으로, 데이터를 고르게 분산할 때 유용 하다.

- 특정 데이터가 어디에 있는지 판단할 수 없다.

- 고객번호, 주민번호 등과 같이 데이터가 고른 컬럼 에 효과적이다.

  • 조합 분할(Composite Paritioning)

- 범위 분할로 분할한 다음 해시 함수를 적용하여 다 시 분할하는 방식이다.

- 범위 분할한 파티션이 너무 커서 관리가 어려울 때유용하다.

 

  • 목록 분할(List Paritioning) : 지정한 열 값에 대한 목록을 만들어 이를 기준으로 분할함

 

  • 라운드 로빈 분할(Round Robin Paritioning)

- 레코드를 균일하게 분배하는 방식이다.

- 각 레코드가 순차적으로 분배되며, 기본키가 필요없다.

 


분산 데이터베이스의 목표

  • 위치 투명성(Location Transparency) : 액세스하려는 데이 터베이스의 실제 위치를 알 필요 없이 단지 데이터베이 스의 논리적인 명칭만으로 액세스할 수 있음
  • 중복 투명성(Replication Transparency) : 동일 데이터가 여 러 곳에 중복되어 있더라도 사용자는 마치 하나의 데이 터만 존재하는 것처럼 사용하고, 시스템은 자동으로 여 러 자료에 대한 작업을 수행함
  • 병행 투명성(Concurrency Transparency) : 분산 데이터베 이스와 관련된 다수의 트랜잭션들이 동시에 실현되더 라도 그 트랜잭션의 결과는 영향을 받지 않음
  • 장애 투명성(Fallure Transparency) : 트랜잭션, DBMS, 트워크, 컴퓨터 장애에도 불구하고 트랜잭션을 정확하 처리함

 


접근통제 기술

 

접근통제는 데이터가 저장된 객체와 이를 사용하려는 주체 사이의 정보 흐름을 제한하는 것이다.

  • 임의 접근통제(DAC; Discretionary Access Control) : 데이터 에 접근하는 사용자의 신원에 따라 접근 권한을 부여하 는 방식
  • 강제 접근통제(MAC; Mandatory Access Contral) : 주체와 객체의 등급을 비교하여 접근 권한을 부여하는 방식
  • 역할기반 접근통제(RBAC; Role Based Access Contral) : 용자의 역할에 따라 접근 권한을 부여하는 방식

 


스토리지 - DAS

  •   DAS(Direct Attached Storage)는 서버와 저장장치를 전용 케이블로 직접 연결하는 방식이다.
  •   서버에서 저장장치를 관리한다.
  •   초기 구축 비용 및 유지보수 비용이 저렴하다.
  •   확장성 및 유연성이 상대적으로 떨어진다.
  •   저장 데이터가 적고 공유가 필요 없는 환경에 적합하다.
  •   스토리지(Storage) : 단일 디스크로 처리할 없는 대용 량의 데이터를 저장하기 위해 서버와 저장장치를 연결 하는 기술

 


 

반응형