상세 컨텐츠

본문 제목

정보처리기사 실기시험 준비 [3]

정보처리기사/정보처리기사 실기

by JORDON 2023. 4. 16. 21:31

본문

반응형

논리 데이터저장소 및 물리 데이터 저장소 설계

논리데이터 저장소 (추상적인 데이터 저장소)

  • 데이터 및 데이터간의 연관성, 제약조건을 식별하여 논리적 구조로 조직화 하여 모델링 표기법으로 형상화한 데이터의 저장소

물리데이터 저장소

  • 논리데이터 저장소에 저장된 데이터와 구조들을 DBMS 의 특성을 고려하여 저장한 하드웨어적 저장장치

데이터 모델링

  • 실체(Entity)와 관계(Relation)를 중심으로 명확하고 체계적으로 표현하여 문서화하는 기법
  • 사용자, 설계자, 개발자 간에 효율적인 의사소통 수단을 제공
  • 데이터 체계 구축을 통한 고품질 소프트웨어와 유지보수 비용의 감소효과를 기대
  • 업무흐름 파악이 용이

데이터 모델링 절차

  1. 개념 데이터모델링 - 전사의 정보요건을 표현한 상위수준의 모델
  2. 논리 데이터 모델링 - 엔티티와 속성들의 관계를 구조적으로 정의하는 단계
  3. 물리 데이터 모델링
  4. 데이터베이스 구축

논리 데이터 모델링을 구성하는 3요소를 서술하시오!

  • 엔티티, 속성, 관계 (Entity, Attribute, Relation)

논리 데이터 모델링 정의

  • 개념모델로부터 업무영역의 업무 데이터 및 규칙을 구체적으로 표현한 모델
  • 엔터티타입, 속성, 관계, 프로세스
  • 특정 DBMS로 부터 독립적이다. (ex 물리 데이터가 아니라 논리데이터니까..)
  • 모든 업무 데이터를 정규화하여 모델링한다.

정규화(Normalization)

  • 중복성을 최소화하고 정보의 일관성을 보장하기 위한 개념
  • 정확성, 일치성, 단순성, 비종속성, 안정성 보장
  • 정규화 수준이 높을수록 데이터 정확성, 유연한 데이터 구축가능하나 물리적 접근이 복잡해지고 길이가 짧은 데이터 생성으로 과도한 조인 발생

물리데이터 모델링

  • 설계 단계에서의 정보 요건을 정확하고 완전하게 표현한 모델
  • 데이터베이스 생성을 위한 물리 구조로 변환
  • 적용 DBMS에 적합한 성능조정 수행

반정규화

  • 정규화에 충실하여 모델링을 수해앟여 종속성,  활용성은 향상되나 수행속도가 증가하는 경우가 발생하여 성능에 중점을 두어 정규화하는 방법
  • 데이터 모델링 규칙에 얽매이지 않고 수행
  • 시스템이 물리적으로 구현되었을때 성능향상을 목적으로 한다.

반정규화

  • 모델링 수행후 종속성 활용성은 향상되었으나 수행속도가 증가하였다. 이를 극복하기 위해, 물리적 데이터 모델링을 설계시 성능에 중점을 두어 행하는 방법

물리데이터 저장소 구성

  • 물리데이터 저장소 설계에 따라 데이터저장소에 실제 데이터가 저장될 물리적 공간을 구성
  • 테이블 제약조건 설계 - 참조 무결성을 관리하기 위한 제약조건(Constraint)을 정의

물리데이터 저장소 구성시 정의해야하는 참조무결성에 대해 간단히 약술하시오.

  • 관련 있는 테이블사이에 참조하는 외래키값은 항상 참조되는 테이블에 기본키로 존재해야한다.

인덱스 설계

  • 인덱스는 테이블에 대한 검색속도를 향상시킬 수 있는 확실한 수단
  • 순차적 접근 - 튜플수가 많아지면 대량의 데이터에 대한 검색 방법으로는 적당하지 않다.
  • 이진검색 - 데이터가 정렬되어 있다면 적은 비교횟수로 원하는 튜플을 찾을 수 있다. (정렬이 어려움 / 비용증가)
  • 인덱스 검색 - 실제 데이터는 정렬되어 있지 않지만 마치 정렬되어 있는 것과 같은 효과를 얻을 수 있다.
  • 인덱스 수가 많으면 인덱스를 재정렬하는데 많은 시간이 소모됨으로 DBMS의 성능을 저하 시킨다.
  • 인덱스로 지정한 컬럼에 의해 검색했을 때 검색 결과가 전체 튜플의 10~15% 미만일때 인덱스 효과가 있다.

뷰 설계

  • 테이블을 기초로 하는 가상(논리)의 테이블
  • REPLACE - 뷰가 존재하는 경우 재생성
  • FORCE - 기본 테이블의 존재 여부에 관계없이 뷰 생성
  • NOFORCE - 기본 테이블이 존재 할떄만 뷰 생성
  • WITH CHECK  OPTION - Sub-Query 내의 조건을 만족하는 행만 변경
  • WITH READ ONLY - DML 작업 불가

클러스터 설계

  • 지정된 컬럼 값이 순서대로 데이터 행을 저장하는 방법으로 하나 혹은 그 이상의 데이블들을 같은 클러스터내에 저장이 가능
  • 인덱스의 단점을 해결한 기법
  • 검색 효율은 높여주나 입력, 수정, 삭제 시 부하가 증가함을 고려
  • Union, Distinct, Order by, Group by가 빈번한 컬럼은 효율이 안좋음

파티션 설계

  • 대용량DB는 몇 개의 중요한 트랜잭션 테이블에서 데이터가 증가함으로 보다 작은 단위로 나눔으로써 성능 저하 방지와 관리의 용의성을 위해 사용하는 기법
  • 범위분할 - 지정한 열의 값을 기준으로 숫자, 날짜 기준으로 분할
  • 해시분할 - 해시 함수에 따라 데이터를 분할
  • 조합분할 - 범위분할 이후 해시함수를 적용하여 다시 분할
  • Disk Striping 으로 입출력 성능을 향상
반응형

관련글 더보기

댓글 영역