Certificate/정보처리기사

데이터베이스 구축 언어

Dev다D 2021. 1. 4. 21:18
반응형

SQL 문법의 분류

- 데이터 정의어(DDL) : CREATE, ALTER, DROP

- 데이터 조작어(DML) : SELECT, INSERT, DELETE, UPDATE

- 데이터 제어어(DCL) : GRANT, REVOKE

DDL 대상

- 도메인(Domain)

- 스키마(Schema)

- 테이블(Table)

- 뷰(View)

- 인덱스(Index)

트리거

: 데이터베이스가 미리 정해 놓은 조건이 충족되거나, 특정 테이블에 삽입, 수정, 삭제 등의 데이터 변경 이벤트가 발생하면 DBMS에서 자동적으로 샐행되도록 구현된 프로그램이다.

윈도우 함수

- 행과 행 간의 관계를 쉽게 정의하기 위해 만든 함수이다.

- 데이터 베이스를 사용한 온라인 분석 처리 용도로 사용하기 위해서 SQL에 추가된 기능으로 OLAP(Online Analytical Processing) 함수라고도 한다.

- 집계 함수, 순위 함수, 행 순서 함수, 그룹 내 비율 함수

트랜잭션의 특징

- 트랜잭션은 데이터베이스의 논리적 연산자단위로서 밀접히 관련되어 분리될 수 없는 한 개 이상의 데이터 베이스 조작을 가리킨다.

- 원자성(atomicity) : 트랜잭션에서 정의된 연산들은 모두 성공적으로 실행되던지 아니면 전혀 실행되지 않은 상태로 남아 있어야 한다. (All or Nothing)

- 일관성(consistency) : 트랜잭션이 실행되기전의 데이터베이스 내용이 잘못되어 있지 않다면 트랜잭션이 실행된 이후에도 데이터베이스의 내용에 잘못이 있으면 안 된다.

- 고립성(isolation) : 트랜잭션이 실행되는 도중에 다른 트랜잭션의 영향을 받아 잘못된 결과를 만들어서는 안 된다.

- 지속성(durability) : 트랜잭션이 성공적으로 수행되면 그 트랜잭션이 갱신한 데이터베이스의 내용은 영구적으로 저장된다.

트랜잭션의 연산

- COMMIT : 하나의 트랜잭션이 성공적으로 끝나고, 데이터베이스 일관성이 있는 상태에 있을 때 하나의 트랜잭션이 끝났을 때 사용

- ROLLBACK : 하나의 트랜잭션이 비정상적으로 종료되어 트랜잭션 원자성이 깨질 경우 처음부터 다시 시작하거나, 부분적으로 연산을 취소

- CASCADE : 참조하는 테이블까지 연쇄적으로 제거

- RESTRICT : 다른 테이블이 삭제할 테이블 참조 중이면 제거 안 함

인덱스의 종류

- 순서 인덱스 : 데이터가 정렬된 순서로 생성되는 인덱스

- 해시 인덱스 : 해시함수에 의해 직접 데이터에 키값으로 접근하는 인덱스

- 비트맵 인덱스 : 각 칼럼에 적은 개수 값이 저장된 경우 선택하는 인덱스

- 함수기반 인덱스 : 수식이나 함수를 적용하여 만든 인덱스

데이터 모델 품질 검증 기준

- 정확성

- 완전성

- 준거성

- 최신성

- 일관성

- 활용성

애트리뷰트(Attribute)

- 개체의 특성을 기술한다.

- 데이터베이스를 구성하는 가장 작은 논리적 단위이다.

- 파일 구조상 데이터 항목 또는 데이터 필드에 해당된다.

- 애트리뷰트의 수를 차수(Degree)라고 한다.

연산자 기호

- 셀렉트(Select) : σ

- 프로젝트(Project): π

- 조인(Join) : ▷◁

- 디비전(Division) : ÷

데이터 모델링 순서

- 개념적 데이터 모델

- 논리적 데이터 모델

- 물리적 데이터 모델

데이터베이스 정규화 단계

- 제 1 정규화 : 원자화

- 제 2 정규화 : 부분 함수 종속 제거

- 제 3 정규화 : 이행 함수 종속 제거

- 제 4 정규화 : 다치 종속성 제거

- 제 5 정규화 : 조인 종속성 제거

ETL

: 조직 내/외부의 여러 소스들로부터 분석을 위한 저장소로 데이터를 이동시키는 일련의 프로세스

분산 데이터베이스 투명성

복제 투명성

- 사용자나 응용 프로그램이 접근할 데이터가 물리적으로 여러 곳에 복제되어 있는지의 여부를 알 필요가 없는 성질

병행 투명성

- 여러 사용자나 응용 프로그램이 동시에 분산 데이터베이스에 대한 트랜잭션을 수행하는 경우에도 결과에 이상이 발생하지 않는 성질

분할 투명성

- 분할 투명성 사용자가 하나의 논리적인 릴레이션이 여러 단편으로 분할되어 각 단편의 사본이 여러 장소에 저장되어 있음을 알 필요가 없는 성질

초기 데이터 구축 절차

- 구축 전략 수립

- 구축 대상 파악

- 구축 범위 확정

- 세부 고려사항 도출

데이터 베이스 암호화 적용 방식

칼럼 암호화

- API

- Plug-in

- Hybrid

블록 암호화

- TDE 방식

- 파일 암호화 방식

데이터 지역화 종류

- 시간적 지역화

- 공간적 지역화

- 순차적 지역화

스토리지 구성

- DAS(Direct Attached Storage)

- NAS(Network Attached Storage)

- SAN(Storage Area Network)

데이터베이스 이중화 형태

- 액티브-액티브(Active-Active) : 여러 노드가 동시에 가동되는 형태이다.

- 액티브-스탠바이(Active-Stanby) : 하나의 노드만 가동하고, 나머지 노드들은 대기하는 형태이다.

파티셔닝 기법

- 레인지 파티셔닝

- 해시 파티셔닝

- 리스트 파티셔닝

- 컴포지트 파티셔닝

데이터베이스 백업의 종류

- 전체 백업 : 데이터의 변경 유무에 관여하지 않고 전체 데이터의 복사본을 만드는 백업 방식

- 차분 백업 : 마지막 전체 백업 이후 변경된 모든 데이터를 백업하는 방식

- 트랜잭션 로그 백업 : 실제 데이터 파일의 내용을 백업하는 것이 아니라 로그 파일에 기록된 로그를 백업

데이터 무결성의 종류

- 참조 무결성 : 왜래 키가 참조하는 다른 개체의 기본 키에 해당하는 값이 기본 키 값이나 NULL이어야 함

- 속성 무결성 : 속성의 값은 기본값, NULL 여부, 도메인(데이터 타입, 길이)이 지정된 규칙을 준수해야 함

- 사용자 무결성 : 사용자의 의미적 요구사항을 준수해야 함

SQL 성능 튜닝 기법

- 옵티마이저 조정

- 힌트 사용

- 부분 범위 처리 사용

- 인덱스 활용

키(Key)

- 기본 키 : 테이블의 각 튜플들을 고유하게 식별하는 컬럼

- 대체 키 : 후보 키 중에서 기본 키로 선택되지 않은 키

- 후보 키 : 테이블에서 각 튜플들을 구별하는 데 기준이 되는 컬럼

- 슈퍼 키 : 릴레이션을 구성하는 모든 튜플에 대해 유일성은 만족하지만, 최소성은 만족하지 못하는 키

반응형