1. 데이터 모델
- 데이터 모델 : 현실세계의 정보를 이해할 수있도록 추상화하여 표현한 모델
- 데이터 모델 요소
- 구조 : 개체 타입과 개체 타입 간의 관계
- 연산 : 데이터베이스를 조작하는 요소
- 제약 조건 : 실제 데이터의 논리적인 제약 조건
- 데이터 모델 절차
- 요구조건 분석 : 외부 환경과의 상호 작용 분석을 통해 데이터에 대한 요구 분석
- 개념적 설계 : 트랜잭션을 모델링하는 단계. 개체-관계 다이어그램(ERD) 산출물
- 논리적 설계 : 트랜재견의 인터페이스 및 DBMS에 맞는 논리적 스키마 설계. 정규화 수행
- 물리적 설계 : 각 DBMS의 특성을 고려하여 데이터베이스 저장 구조로 변환하는 모델. 반 정규화 수행
2. 논리 데이터 모델
- 논리 데이터 모델 : 업무의 모습을 모델링 표기법으로 형상화하여 사람이 이해하기 쉽게 표현하는 프로세스
- 논리적 데이터 모델링 종류
- 관계 데이터 모델 : 논리적 구조가 2차원 테이블 형태로 구성. PK와 FK로 관계 표현
- 계층 데이터 모델. 트리 형태로 구성. 상하 관계 존재, 1:N 관계만 허용
- 네트워크 데이터 모델 : 그래프 형태로 구성. 상위와 하위 레코드 사이 N:M 관계 만족
- 관계 데이터 모델
- 구성
- 릴레이션(Relation) : 행과 열로 궝된 테이블
- 튜플(Tuple) : 행(Row)
- 속성(Attribute) : 열(Column)
- 카디널리티(Cardinality) : 튜플의 수
- 차수(Degree) : 속성의 수
- 스키마(Schema) : 데이터베이스의 구조, 제약조건 등의 정보를 담고 있는 기본적인 구조
- 인스턴스(Instance) : 실제 저장된 데이터의 집합
- 식별자(Identifier) : 관계형 데이터베이스에서 각각을 구분할 수 있는 개념
- 도메인(Domain) : 하나의 속성이 취할 수 있는 같은 타입의 원자값들의 집합
- 관계 대수 : 관계형 데이터베이스에서 원하는 정보와 정보 유도 기술 절차적 정형 언어
- 일반 집합 연산자 : 수학적 개념을 릴레이션에 적용
- 합집합(∪), 교집합(∩), 차집합(-), 카티션 프로덕트(x)
- 순수 관계 연산자
- 셀렉트(σ) : 조건을 만족하는 튜플 반환
- 프로젝트(π) : 조건을 만족하는 속성 반환
- 조인(⋈) : 공통 속성을 연결해 만들어진 튜플 반환
- 디비전(÷) : 특정 튜플과 관련 있는 모든 튜플 반환
- 일반 집합 연산자 : 수학적 개념을 릴레이션에 적용
- 관계 해석 : 튜플 관계 해석과 도메인 관계 해석을 하는 비절차적 언어
- 구성
- 개체-관계(E-R) 모델 : 현실 세계에 존재하는 데이터와 관계를 사람이 이해할 수 있는 형태로 표현하기 위한 모델
- 이상 현상 : 데이터의 중복성으로 발생하는 현상
- 이상 현상 종류
- 삽입 이상 : 데이터 삽입 시 원하지 않은 값들도 함께 삽입
- 삭제 이상 : 튜플 삭제 시 원하지 않은 값들도 함께 삭제
- 갱신 이상 : 튜플 속성값 갱신 시 일부 튜플의 정보만 갱신
- 함수 종속 : 속성의 의미와 속성 간 상호 관계로부터 발생한느 제약 조건
- 결정자-종속자 : X(결정자) -> Y(종속자)
- 함수 종속 종류
- 부분 함수 종속 : 기본 키가 복합 키인 경우 기본 키를 구성하는 속성 중 일부에게 종속
- 완전 함수 종속 : X->Y 관계에서 Y는 X의 전체 속성에 대해 종속하고, 부분 집합 속성에 종속하지 않는 경우
- 이행 함수 종속 : X->Y, Y->Z 종속 관계에서 X->Z 가 성립되는 경우
- 정규화(Normalization) : 데이터 중복성을 제거하여 이상 현상 방지
- 정규화 단계
- 1정규형(1NF) : 원자값으로 구성
- 2정규형(2NF) : 부분 함수 종속 제거(완전 함수적 종속 관계) -> 복합 키가 있을 때, 키의 일부에만 종속된 데이터 분리
- 3정규형(3NF) : 이행 함수 종속 제거 -> 속성에 종속적인 속성 분리
- 보이스-코드 정규형(BCNF) : 결정자가 후보키가 아닌 함수 종속 제거
- 4정규형(4NF) : 다치 종속성 제거
- 5정규형 : 조인 종속성 제거
- 반 정규화 : 성능 향상과 개발 운영의 단순화를 위해 중복, 통합, 분리 등을 ㅜ행
- 반 정규화 기법
- 테이블 병합 : 1:1, 1:M 관계를 통합하여 조인 횟수를 줄여 성능 향상
- 테이블 분할 : 테이블을 수직 또는 수평으로 분할
- 중복 테이블 추가 : 집계/진행/특정 부분만을 포함하는 테이블 추가
- 컬럼 중복화 : 조인 성능 향상을 위한 중복 허용
- 중복 관계 추가 : 성능 저하를 예방하기 위해 추가적인 관계를 맺는 방법
3. 물리 데이터 모델
- 데이터베이스 무결성 : 데이터베이스에 저장된 값과 그것이 표현하는 현실 세계의 실제 값이 일치하는 성질
- 데이터베이스 무결성 종류
- 개체 무결성 : 한 엔터티에서 같은 PK를 가질 수 없거나, PK의 속성이 NULL을 허용할 수 없는 제약조건
- 참조 무결성 : 외래키가 참조하는 다른 개체의 기본키의 값이 기본키 값이나 NULL이어야 하는 제약조건
- 속성 무결성 : 속성의 값은 지정된 규칙을 준수해야 하는 제약조건
- 사용자 무결성 : 사용자의 의미적 요구사항(트리거, 데이터 타입)을 준수해야 하는 제약조건
- 키 무결성 : 한 릴레이션에 같은 키 값을 가진 튜플들을 허용할 수 없는 제약조건
- 키(Key) : 데이터베이스에서 다른 튜플들과 구별할 수 있는 기준이 되는 속성
- 키 특성
- 유일성 : 식별자에 의해 엔터티 내에 모든 튜플들을 유일하게 구분하는 특성
- 최소성 : 최소한의 속성으로 식별자를 구분하는 특성
- 키 종류
- 기본키 : 테이블의 각 튜플들을 고유하게 식별하는 컬럼
- 대체키 : 후보키 중에서 기본키로 선택되지 않은 키
- 후보키 : 기본키와 대체키를 합친 키
- 슈퍼키 : 유일성은 만족하지만, 최소성은 만족하지 못하는 키
- 외래키 : 다른 릴레이션의 기본키로 이용되는 키
- 인덱스 : 검색 연산의 최적화를 위해 열에 대한 정보를 구성한 데이터 구조
- 파티셔닝 : 테이블 또는 인덱스 데이터를 파티션(Partition) 단위로 나누어 저장하는 기법
- 파티셔닝 유형
- Range Partitioning : 연속적인 숫자나 날짜를 기준으로 하는 파티셔닝 기법
- Hash Partitioning : 파티션 키의 해시 함수 값에 의한 파티셔닝 기법. 균등한 데이터 분할 가능
- List Partitioning : 데이터에 대한 명시적 제어가 가능한 파티셔닝 기법. 분포도가 비슷하고 조건이 많은 경우 유용.
- Composite Partitioing : 2개 이상의 파티셔닝 기법을 결합하는 파티셔닝 기법
- Round-Robin : 라운드 로빈으로 회전하면서 새로운 행을 파티션에 할당하는 기법
#회고
금결원 시험보는데 마침 정처기랑 내용이 겹쳐서 다행...
다른 기출문제 보는데 서술형으로 하면 너무 어렵다.
'개인 스터디 > 정리' 카테고리의 다른 글
[정보처리기사 실기] 7. 연계 매커니즘 구성 (0) | 2025.04.13 |
---|---|
[정보처리기사 실기] 6. 데이터베이스 기초 활용 (1) | 2025.04.11 |
[정보처리기사 실기] 4. UI 설계 (0) | 2025.04.08 |
[정보처리기사 실기] 3. UI 요구사항 확인 (0) | 2025.04.06 |
[정보처리기사 실기] 2. 현행 시스템 분석 (0) | 2025.04.03 |