본문 바로가기

IT개념/정보처리산업기사

[정처산기] 물리적 설계

728x90

물리적 설계

논리 데이터베이스 구조로부터 효율적인 물리적 구조 데이터베이스를 설계하는 과정
(성능 UP 저장공간 DOWN, 보안, 백업, 회복 용이한 구조)


설계 단계

  1. 개발 DBMS 선정
  2. 칼럼 데이터 타입, 사이즈 정의
  3. 데이터 사용량 분석
  4. 역정규화(DeNormalization)
  5. Index, View, Stored Procedure, Trigger 등 정의
  6. 데이터베이스 생성

Stored Procedure

연속된 SQL문들을 하나로 모아 SQL 서버에 저장해놓은 것, 메소드와 같은 역할함


데이터 사용량 분석

데이터 사용량 분석해서 사용이 빈번한 테이블을 찾는다.
정규화는 항상 검증단계를 거쳐서 시스템의 성능저하를 일으키므로 역정규화(정규화에 위배되는 행위)를 하여 성능향상시킴


DB 튜닝(Tuning)

  1. DB구축과정 : 요구사항 분석 -> DB 설계 -> DB 구축 -> 테스트(DB 튜닝) -> 유지 보수

DB 튜닝

DB의 여러요소를 조정, 조율, 최적화 하는 작업


로킹(Locking)

병행 제어(동시성 제어, Concurrency Control) : 동시에 여러 작업 시, 데이터베이스의 일관성 유지를 위해 트랜잭션간 상호 작용을 제어함
하나의 트랜잭션이 데이터를 엑세스 할 땐 다른 트랜젝션이 그 데이;터를 액세스 할 수 없도록 함
로킹 단위가 크면 로크 수가 작고 관리가 수월해지고 병행성 수준이 떨어진다
로킹 단위가 작으면 로크 수가 적고 관리가 복잡해지고 병행성 수준이 높아진다.


병행제어 목적

  1. 데이터베이스 공유 최대화
  2. 시스템 활용도 최대화
  3. 일관성 유지
  4. 응답시간 최소화

인덱스 설계

테이블 검색 속도를 향상시키는 수단,
검색이 필요한 컬럼을 따로 정렬하여 빠르게 데이터를 찾을 수 있도록 함(이진검색기법 사용)
데이터의 추가, 삭제가 있을 때마다 인덱스도 재정렬 해야하므로 꼭 필요한 컬럼에 지정을 해야한다.

고유 인덱스는 좋은 선택성(Selectivity) 을 가진다.
예를들어 성별은 값이 12개밖에 안지니므로 효율적이지 않다.
검색했을 때 튜플 결과가 10
15%가 나오는 컬럼으로 인덱스를 지정하여야한다.

고유 인덱스 : 중복 값을 허용하지 않는 인덱스 / 기본키는 인덱스의 성질을 가지고 있음
선택성(분포도) : 전체 행수 분의 해당 값

Clustered Index : 물리적으로 데이터를 정렬


Subject Area

데이터 모델을 작은 업무 단위로 쪼개어 구분, 관리하는 기능



데이터 웨어하우스(Data Warehouse)

사용자의 의사결정에 도움주기 위해 추출, 변환, 통합, 요약된 데이터베이스

1)출현 배경

OLTP(On-Line Transaction Processing) : 금융전산에 이용 // 현 전산 시스템의 공로
OLAP(On-Line Analytical Processing) : 이용자가 직접 검색, 분석하는 애플리케이션) // 현 전산 시스템의 한계
DSS(Decision Support System) : 의사 결정 지원 시스템
EIS(Executive Information System) : 최고 경영자 정보 시스템

2) 주제 중심적(subject-oriented) 구성

데이터 웨어 하우스는 조직의 주유 주제 중심으로 데이터를 구성함
예를들어 기존 시스템은 저축, 대출, 신용도, 주소등 으로 데이터를 구성하면
데이터 웨어 하우스는 고객, 자금운용, 기획 등 주제를 중심으로 데이터를 구성함


3) 통합된(integrated)내용

데이터 웨어 하우스는 통합되어 있음 (자료의 표현, 이름, 계산단위 등이 일관성 있음)


4) 시간에 따라 변화되는(time-variant) 값의 유지 >매 순간 최신의 값을 유지하는 데이터베이스와는 다르게 스냅샷으로 갱신하지 않으면 값이 계속 유지됨
5) 비갱신성 > 검색만 가능(read only)하기 때문 갱신 이상의 염려가 없음

데이터 마이닝(Data Mining)

규모로 저장된 데이터 안에서 체계적이고 자동적으로 통계적 규칙이나 패턴을 분석하여 가치있는 정보를 추출하는 과정이다.


### OLAP(On-Line Analytical Processing) 개념

데이터 마이닝 기법중 하나로 데이터 웨어하우스를 다차원적으로 분석하고 시각화 하는 과정 (수강생 수를 강의별 혹은 지역별, 기간별 등 다양한 차원에서 분석)

  • 데이터 큐브 : 데이터를 추상화하고 우리가 상상못하는 데이터를 효과적으로 운용할 수 있게 함, 기존에는 2차원 표로 데이터를 집계했으나 다차원으로 집계함
  • 셀(cell) : 하나의 데이터가 저장되는 공간(큐브에서 가장 작은 육면체)

OLAP 연산

  1. Drill Up(Roll-up) : 작은 범위-> 큰 범위 단계적 접근 분석
  2. Drill Down : Drill Up 반대
  3. Drill Across : 다른 큐브 데이터에 건너서(across) 접근
  4. Drill Through : OLAP에서 Data Warehouse 혹은 상세데이터에 접근
  5. Pivoting : 열과 행을 바꿈
  6. Slicing : 큐브를 특정 관점으로 잘라서 봄
  7. Dicing : Slicing에서 더 쪼개어 봄

OLAP 종류

  1. ROLAP(관계형 온라인 분석 처리) : 기본 구조 관계형 데이터베이스
    장점 : 관계형 데이터베이스 이용, 이해 쉽고 확장성이 좋음
    단점 : 다차원 데이터 보기 힘듬
  2. MOLAP(다차원 온라인 분석 처리) : ROLAP 단점 보완
    단점 : 다차원 데이터 외 분석 어려움
  3. HOLAP(Hybrid OLAP) : ROLAP, MOLAP의 장점만 모음

객체지향 데이터 베이스(OOOB)

정보를 객체료 표현하는 데이터 베이스 모델, 속성과 메소드로 구성됨