이론 목록
관계대수와 관계해석
관계대수는 원하는 결과를 얻는 연산 순서를, 관계해석은 결과가 만족할 조건을 표현한다. 선택·투영·조인·디비전 및 일반 집합 연산의 기호와 결과를 계산할 수 있어야 한다. 투영은 고전적인 집합 의미에서 중복을 제거하며 카티션 곱은 행 수를 곱한다. 관계해석은 튜플 변수와 도메인 변수, 존재·전칭 조건을 구분한다.
함수적 종속·이상 현상·정규화
함수적 종속은 같은 결정자 값이 같은 종속자 값을 결정해야 한다는 업무 규칙이다. 정규화는 이 종속에 따라 서로 다른 사실을 분리해 삽입·갱신·삭제 이상을 줄인다. 1NF·2NF·3NF·BCNF는 원자값과 함수 종속을, 4NF·5NF는 다치·조인 종속을 다룬다. 분해에서는 정보 복원과 종속 보존을 구분하고 반정규화에는 중복 관리가 필요함을 이해한다.
물리 스키마·자료형·저장 구조와 성능
물리 설계는 논리 모델을 목표 DBMS의 테이블·칼럼·저장 구조로 구현하는 단계다. 자료형·길이·NULL·제약조건과 함께 스토리지, 행 폭, 예상 용량, 데이터 지역화를 검토한다. 물리 E-R 다이어그램과 CRUD 분석으로 업무–데이터 대응과 구조의 품질을 확인한다. 반정규화는 실제 성능 근거와 중복 데이터 관리 방안을 전제로 검토한다.
인덱스·클러스터링·파티션
인덱스는 필요한 행을 찾는 접근 구조이며 조회 이득과 갱신·저장 비용을 함께 가진다. B-tree·해시·비트맵의 특성과 복합 인덱스의 열 순서를 구분한다. 클러스터링은 관련 행의 물리적 근접성, 파티셔닝은 큰 테이블의 분할을 다룬다. 프루닝과 인덱스 사용은 다른 판단이며 물리 배치가 결과 정렬을 보장하지 않는다.
분산 데이터베이스의 분할·복제·투명성
분산 데이터베이스는 논리적으로 관련된 데이터를 여러 사이트에 두고 통합 관리한다. 수평 분할은 행을, 수직 분할은 열을 나누며 할당과 복제는 위치와 사본 수를 정하는 별도 결정이다. 완전성·재구성 가능성·분리성과 각 투명성의 의미를 구분한다. 데이터베이스 이중화는 장애 시 서비스 연속성을 위한 구성이며 백업을 대신하지 않는다.
트랜잭션·격리 수준·락·교착상태
트랜잭션은 원자성·일관성·격리성·지속성을 만족하도록 관리하는 논리적 작업 단위다. 동시 실행에서는 직렬 가능성과 더티·비반복·팬텀 읽기, 갱신 유실을 구분한다. 격리 수준은 허용 현상을 정하고 잠금·타임스탬프·검증·다중 버전은 병행 제어 방법이다. 2단계 로킹과 분산 2단계 커밋은 목적이 다르며 교착은 대기 관계의 순환을 확인해 처리한다.
로그·체크포인트·백업·복구·데이터 보호
회복은 로그·백업 등을 이용해 완료된 변경은 보존하고 미완료 변경은 취소하는 과정이다. UNDO·REDO, 지연·즉시 갱신, 체크포인트와 그림자 페이징을 구분한다. 전체·증분·차등 백업은 필요한 복원 체인이 다르며 RPO·RTO와 실제 복원 가능성을 확인한다. 데이터베이스 암호화와 DAC·MAC·RBAC 접근제어는 서로 보완하는 보호 수단이다.
데이터 전환 계획·매핑·ETL·변환
데이터 전환은 기존 데이터를 새 시스템의 구조와 업무 규칙에 맞게 옮기는 작업이다. 대상·일정·매핑·정제·검증·실패 대응을 계획하고 리허설로 확인한다. ETL은 추출·변환·적재 순서이며 ELT는 적재 후 변환하는 방식이다. 파일의 경계·인코딩·값 의미, 키 매핑과 부모·자식 적재 순서까지 맞아야 올바른 전환이다.
데이터 전환 검증·대사·재처리·롤백·품질
전환 검증은 동일한 범위·시점·변환 규칙을 기준으로 원천과 목표의 구조·건수·키·값·무결성을 비교한다. 건수와 합계가 같아도 누락과 값 오류가 숨어 있을 수 있다. 품질 분석은 완전성·정확성·유효성 등을 나누고 오류율의 분자·분모를 명확히 한다. 오류를 수정해 재처리한 뒤 재검증하고 복귀 기준과 업무 승인을 확인해야 전환을 완료할 수 있다.