반응형
1 논리 데이터 저장소 확인
1 논리 데이터 모델
1 개념
비즈니스 정보의 구조와 규칙을 명확하게 표현할 수 있는 기법
2 특성
- 정규화
- 포용성
- 완전성
- 독립성
3 속성
- 개체(Entity)
- 속성(Attributes)
- 관계(Relationship)
4 ER모델
1 개념
현실 데이터와 관계를 사람이 이해할 수 있는 형태로 표현
개체, 속성, 관계로 기술
2 ERD 기호
- 개체: 사각형
- 관계: 마름모
- 속성: 타원
- 다중 값 속성: 이중타원
- 관계-속성 연결: 선
5 정규화
1 개념
관계형 데이터베이스의 설계에서 중복을 최소화
2 이상 현상
정규화를 하지 않았을 때 생기는 문제점
- 삽입 이상: 부필요한 세부정보 입력
- 삭제 이상: 원치 않는 다른 정보가 같이 삭제
- 갱신 이상: 특정 부분만 수정되어 중복된 값이 모순
3 단계
- 1정규형(1NF): 도메인 원자값으로 구성
- 2정규형(2NF): 부분 함수 종속 제거
- 3정규형(3NF): 이행함수 종속 제거 - A->B & B->C => A->C
- BCNF: 결정자 함수 이면서 후보키가 아닌 것 제거
- 4정규형(4NF): 다치 종속성 제거
- 5정규형(5NF): 조인 종속성 제거
2 물리 데이터 저장소 설계
1 물리 데이터 모델
1 개념
2 변환 절차
2 물리 데이터 저장소 구성
1 참조무결성 제약조건
릴레이션 사이에서 참조의 일관성 보장
외래키의 값은 항상 참조되는 릴레이션에 기본키로 존재
옵션
- 제한: 참조무결성 원칙 위배 연산 거절
- 연쇄: 참조되는 릴레이션에서 이 튜플을 참조하는 튜플도 함께 삭제
- 널 값: 삭제된 튜플을 참조하는 튜플들의 외래 키에 NULL 값
ALTER TABLE EMPLOYEE ADD CONSTRAINT emp_dt_fk
FOREIGN KEY (deptno)
REFERENCES DEPARTMENT(deptno)
ON DELETE {RESTRICT | CASCADE | SET NULL};
2 인덱스 설계
1 개념
검색 최적화를 위해 열에 대한 정보를 구성한 데이터구조
2 적용 기준
인덱스 분포도가 10~15%
3 컬럼 선정
분포도가 좋은 컬럼 단독 선정
자주 조합되어 사용되는 컬럼은 결합 인덱스로 생성
수정이 빈번하지 않은 커럶 선정
4 고려사항
- 지나치게 많은 인덱스로 인한 오버헤드
- 인덱스 저장 공간
- 오버헤드
3 뷰 설계
1 속성
- REPLACE: 뷰 재생성
- FORCE: 본 테이블에 관계없이 뷰 생성
- NOFORCE: 본 테이블이 존재할 때 뷰 생성
- WITH CHECK OPTION: 서브 쿼리 내 조건을 만족하는 행만 변경
- WITH READ ONLY: DML 작업 불가
2 고려사항
- 수행속도
- 최적의 액세스 경로
4 클러스터 설계
1 적용 기준
- 인덱스 단점 해결(분포도가 넓을수록 유리)
- 대량의 범위를 자주 액세스하는 경우 적용
- 빈번한 조인이 있을 때 사용
2 고려사항
- 검색 효율은 좋으나, 입력, 수정, 삭제 시 부하 증가
- 처리 범위 문제 - 단일 테이블 클러스터링 고려
- 많은 조인 문제 - 다중 테이블 클러스터링 고려
5 파티션 설계
1 종류
- 레인지 파티셔닝
- 해시 파티셔닝
- 리스트 파티셔닝
- 범위 분할 이후 재분할
2 장점
- 성능 향상
- 가용성 향상
- 백업 가능
- 경합 감소
6 디스크 구성 설계
- 정확한 용량 산정을 통해 디스크 사용 효율 향상
- 입출력 경합 최소화
3 데이터 조작 프로시저 작성
1 데이터 조작 프로시저 개발
1 프로시저 개념
SQL을 이용해 생선된 데이터를 조작하는 프로그램
- 저장된 프로시저
- 저장된 함수
- 저장된 패키지
- 트리거
2 PL/SQL
표준 SQL을 기본으로 Oracle에서 개발한 데이터 조작 언어
작성 절차
- 데이터 저장소 연결
- 데이터 저장소 정의: 생성, 수정, 삭제 방법
- 데이터 조작 프로시저 작성: 테이블 정보 입력
- 데이터 검색 프로시저 작성: 조건에 맞는 데이터 조회
2 데이터 조작 프로시저 테스트
1 PL/SQL 테스트
DBMS_OUTPUT 패키지 활용
2 저장 객체 테스트
- 저장된 프로시저
- 저장된 함수
- 저장된 패키지
- 트리거
4 데이터 조작 프로시저 최적화
1 쿼리 성능 개선
1 개념
프로시저 수정
2 절차
- 문제 있는 SQL 식별
- 옵티마이저 통계 확인
- SQL문 재구성
- 인덱스 재구성
- 실행 계획 유지 관리
2 옵티마이저
1 개념
SQL의 최적의 처리 경로(실행 계획)를 생성해주는 DBMS 내부의 핵심 엔진
2 유형
- RBO: 규칙에 따라 질의 실행 계획 선택
- 평가 기준: 인덱스 구조, 연산자, 조건절 형태
- 장점: 사용자가 원하는 처리 경로 유도가 쉬움.
- CBO: 통계 정보로부터 모든 접근 경로를 고려한 질의 실행 계획 선택
- 평가 기준: 레코드 개수, 블록 개수, 평균 행 길이, 컬럼 값 수, 컬럼 값 분포, 인덱스 높이
- 장점: 성능 보장
3 역할
- 쿼리 변환
- 비용 산정
- 계획 생성
4 힌트 사용
옵티마이저의 실행 계획을 원하는 대로 변경
3 SQL문 재구성
- 특정 값 지정
- 별도의 SQL 사용
- 힌트 사용
- HAVING 미사용
- 인덱스만 질의 사용
4 인덱스 재구성
- 자주 쓰는 컬럼 선정
- SORT 명령어 생략
- 분포도 고려
- 변경 적은 컬럼 선정
- 결합 인덱스 사용
반응형
'자격증 > 정보처리기사' 카테고리의 다른 글
2020 정보처리기사 실기 4. 서버 프로그램 구현 (0) | 2020.11.13 |
---|---|
2020 정보처리기사 실기 3. 통합 구현 (0) | 2020.11.13 |
2020 정보처리기사 실기 1. 요구사항 확인 (0) | 2020.11.13 |
정보처리기사 필기 3. 데이터베이스 구축 - Chapter 5. 데이터 전환 (0) | 2020.08.18 |
정보처리기사 필기 3. 데이터베이스 구축 - Chapter 4. 물리 데이터베이스 설계 (0) | 2020.08.18 |