1. 데이터 모델 : 현실세계의 정보들을 컴퓨터에 표현하기 위해서 단순화, 추상화하여 체계적으로 표현한 개념적 모형
2. 구성요소 : 개체, 속성, 관계
3. 종류 : 개념적 데이터 모델, 논리적 데이터 모델, 물리적 데이터 모델
4. 표시할 요소 : 구조, 연산, 제약조건
5. 개념적 데이터 모델 : 현실세계에 대한 인간의 이해를 돕기 위해 현실세계에 대한 인식을 추상적 개념으로
표현하는 과정 ex> E-R 모델
6. 논리적 데이터 모델 : 개념적 모델링 과정에서 얻은 개념적 구조를 컴퓨터가 이해하고 처리할 수 있는 컴퓨터 세계의
환경에 맞도록 변환하는 과정
7. 이상(Anomaly) : 테이블에서 일부 속성들의 종속으로 인해 데이터의 중복이 발생하고, 이 중복으로 인해 테이블
조작시 문제가 발생하는 현상
8. 이상(Anomaly)
- 삽입이상 : 테이블에 데이터를 삽입할 때 의도와는 상관없이 원하지 않은 값들로 인해 삽입할 수 없게 되는 현상
- 삭제이상 : 테이블에서 한 튜플을 삭제할 때 의도와는 상관없는 값들도 함께 삭제되는,
즉 연쇄 삭제가 발생하는 현상
- 갱신이상 : 튜플에 있는 속성값을 갱신할 때 일부 튜플의 정보만 갱신되어 정보에 불일치성이 생기는 현상
9. 함수적 종속
- x(결정자) -> y(종속자) : y는 x의 함수적 종속관계이다.
- 완전 함수적 종속, 부분 함수적 종속
10. 정규화 : 테이블의 속성들이 상호종속적인 관계를 갖는 특성을 이용하여 테이블을 무손실 분해하는 과정
11. 정규화 목적 : 가능한 중복을 제거하여 삽입, 삭제, 갱신 이상의 발생 가능성을 줄이는 것
12. 정규형 종류
- 제 1 정규형 : 도메인이 원자값만으로 되어있는 정규형
- 제 2 정규형 : 완전함수적 종속을 만족(부분함수적 종속이 제거된 상태)
- 제 3 정규형 : 이행적 함수적 종속을 만족하지 않는 것
- BCNF : 모든 결정자가 후보키인 것
- 제 4 정규형 : 다중값 종속인 것(다치종속 A -->->B)
- 제 5 정규형 : 조인 종속
13. 논리 데이터 모델
- 엔티티(Enitiy)
- 속성(Attribute)
- 주 식별자(Primary Identifier)
- 외부 식별자(Foreign Identifier)
- 관계(Relationship)
14. 물리 데이터 모델
- 테이블(Table)
- 컬럼(Column)
- 기본키(Primary Key)
- 외래키(Foreign Key)
- 관계(Relationship)
15. 반정규화 = 비정규화 : 시스템의 성능향상, 개발 및 운영의 편의성 등을 위해 정규화된 데이터 모델을 통합, 종복,
분리하는 과정으로 의도적으로 정규화 원칙을 위배하는 행위
- 통합 : 두개의 테이블에 발생하는 프로세스가 동일하게 자주처리되는 경우 고려
- 분할 : 레코드별로 사용빈도 차이가 크거나 하나의 테이블에 속성이 너무 많은경우 고려
16. 작업의 효율성을 향상시키기 위해 중복 테이블을 추가하여 반정규화를 수행해야 하는 경우
- 정규화로 인해 수행속도가 느려지는 경우
- 많은 범위의 데이터를 자주 처리해야 하는 경우
- 특정 범위의 데이터만 자주 처리해야 하는 경우
- 처리 범위를 줄이지 않고는 수행 속도를 개선할 수 없는 경우
17. 중복 속성을 추가하는 경우
- 조인이 자주발생하는 속성인 경우
- 접근 경로가 복잡한 속성인 경우
- 액세스의 조건으로 자주 사용되는 속성인 경우
- 기본키의 형태가 적절하지 않거나 여러개의 속성으로 구성되는 경우
18. 인덱스 : 데이터 레코드를 빠르게 접근하기 위해 <키 값, 포인터> 쌍으로 구성되는 데이터 구조
- 클러스터드 인덱스(Clustered Index) : 순서에 따라 정렬 한개의 릴레이션에 하나의 인덱스만 생성
- 넌클러스터드 인덱스(Non-Clustered Index) : 키 값만 정렬, 실제 데이터는 정렬은 안함, 한개의 릴레이션에
여러개의 인덱스
19. 뷰 : 사용자에게 접근이 허용된 자료만을 제한적으로 보여주기 위해 하나 이상의 기본 테이블로부터 유도된,
이름을 가지는 가상 테이블이다.
- 물리적으로 구현되어 있지 않다.
- 데이터의 논리적 독립성을 제공할 수 있다.
- 기본키를 포함한 속성(열) 집합으로 뷰를 구성해야만 삽입, 삭제, 갱신 연산 가능
20. 클러스터 : 데이터 저장 시 데이터 액세스 효율을 향상시키기 위해 동일한 성격의 데이터를 동일한 데이터 블록에
저장하는 물리적 저장 방법이다.
- 데이터 조회 속도는 향상시키지만 데이터 입력, 수정, 삭제에 대한 성능은 저하시킨다.
- 처리 범위가 넓은 경우 단일 테이블 클러스터링
- 조인이 많이 발생하는 경우 다중 테이블 클러스터링
21. 클러스터를 적용하기 적당한 테이블
- 분포도가 넓은 테이블
- 대량의 범위를 자주 조회하는 테이블
- 입력, 수정, 삭제가 자주 발생하지 않는 테이블
- 자주 조인되어 사용되는 테이블
22. 파티션 : 대용량의 테이블이나 인덱스를 작은 논리적 단위인 파티션으로 나눈 것
- 범위분할 : 지정한 열의 값을 기준으로 분할
- 해시분할 : 해시함수를 적용한 결과 값에 따라 데이터 분할(특정 파티션에 데이터가 집중되는 것을 보완하기 위한
것 / 데이터를 고르게 분산 할때 유용)
- 조합분할 : 범위분할로 분할한 다음 해시 함수를 적용하여 다시분할
'ETC > 자격증' 카테고리의 다른 글
[정보처리기사실기]서버 프로그램 구현 요약 정리 (0) | 2021.07.03 |
---|---|
[정보처리기사실기]통합 구현 요약 정리 (0) | 2021.07.03 |
[정보처리기사실기]애플리케이션 테스트 관리 요약 정리 (0) | 2021.07.03 |
[정보처리기사실기]화면 설계 요약 정리 (0) | 2021.07.03 |
[정보처리기사실기]C 언어 문제 2 (0) | 2021.06.27 |