본문 바로가기
기타/정보처리기사

정보처리기사 필기 키워드 정리 - 3과목 : 데이터베이스 구축

by baam 2022. 4. 20.

1. 논리 데이터베이스 설계

 1-1. 데이터베이스 관리 시스템

  • 스키마 : 데이터베이스의 구조와 제약조건에 대한 명세를 기술한 것이다.
  • 외부스키마 : 프로그래머나 사용자의 입장에서 본 데이터베이스의 모습
  • 개념스키마 : 모든 응용 프로그램과 사용자들이 필요로 하는 데이터베이스 전체를 정의
  • 내부스키마 : 물리적인 저장 장치의 입장에서 본 데이터베이스의 모습

 1-2. 관계형 데이터베이스

  • 속성 : =필드, 데이터베이스를 구성하는 가장 작은 단위
  • 도메인 : 입력될 수 있는 값들의 집합
  • 튜플 : =레코드, 튜플사이에는 순서가 없다.
  • 릴레이션 : 표, 속성의 유일성/무순서/원자성, 튜플의 유일성, 무순서
  • 차수 : 속성의 개수
  • 기수 : 튜플의 개수
  • 후보키 : 유일성과 최소성을 모두 만족시키는 속성
  • 기본키 : 후보키들 중 튜플의 식별을 위해 지정된 키
  • 대체키 :  기본키로 지정된 키를 제외한 후보키
  • 슈퍼키 : 두 개 이상의 속성들의 집합으로 이루어진 키
  • 외래키 : 다른 릴레이션의 기본키를 참조하는 속성

 1-3. 논리 데이터 모델링

  • 논리적 설계의 3단계 : 논리적 데이터베이스 구조로 매핑 > 트랜잭션 인터페이스를 설계 > 스키마의 평가 및 최적화
  • 물리적 설계의 3단계 : 레코드 분석 및 형식 설계 > 저장 레코드 등을 클러스터링 > 접근 경로 설계

 1-4. E-R 다이어그램

  • 개체는 사각형, 속성은 타원, 관계는 마름모로 표시한다.
  • 관계 스키마 이상현상 :  삭제이상, 삽입이상, 갱신이상

 1-5. 정규화

  • 관계대수 : 연산자 또는 연산 규칙을 사용하여 기술하는 절차식 언어이다.
  • 순수 관계 연산자 : SELECT, PROJECT, 세타조인, 자연조인, 디비전
  • 정규화 과정 : 비정규형 > 제1정규형 > 제2정규형 > 제3정규형 > 보이스 코드 정규형 > 제4정규형 > 제5정규형
  • 제1정규형 : 모든 속성 및 도메인이 원자성을 가진다.
  • 제2정규형 : 부분 함수 종속 제거
  • 제3정규형 : 이행적 함수 종속 제거
  • 보이스 코드 정규형 : 모든 결정자가 후보키
  • 제4정규형 : 다치 종속 제거
  • 제5정규형  : 조인 종속 제거

2. SQL 응용

 2-2. DDL

  • CREATE, ALTER, DROP, TRUNCATE

2-3. DML

  • INSERT, UPDATE, DELETE, SELECT, JOIN, IN, EXISTS

 2-4. DCL

  • GRANT, REVOKE
  • WITH GRANT OPTION : 권한을 또 다른 사용하제에 부여 가능, 또다른 사용자에게 부여된 권한 회수 가능
  • WITH ADMIN OPTION : 권한을 또 다른 사용하제에 부여 가능, 또다른 사용자에게 부여된 권한 회수 불가능

3. SQL 활용

 3-1. 절차형 SQL

  • 사용자 정의 함수 : RETURN 명령 사용, 함수를 호출한 쿼리에 반황하는 단일 값을 정의하는 영역
  • 트리거 :  트리거는 RETURN을 사용하지 않는다. 트리거는 외부 변수의 입출력이 없다. 데이터제어어 사용불가

 3-2. 인덱스와 뷰

  • 기본키로 지정하는 경우를 제외하면, 인덱스는 자동으로 생성되지 않는다.
  • ALTER, DROP을 이용해서 생성,변경,삭제
  • 뷰는 논리적인 가상 테이블, 데이터는 물리적으로 존재하지 않으며 뷰의 정보는 시스템 카탈로그에 저장된다.
  • 뷰를 통해 또 다른 뷰를 정의할 수 있으며, 종속된 테이블이 제거되면 함께 제거된다.
  • 뷰는 자체 인덱스 사용이 불가능, 뷰를 변경하려면 삭제한 뒤 다시 생성

 3-3. SQL 지원 도구

  • 시스템 카탈로그 : 모든 객체에 관한 정의나 명세에 관한 정보를 메타 데이터 형태로 유지 관리하는 시스템 테이블, 데이터베이스의 스키마 정보 및 스키마들 간의 사상 정보, DBMS의 특정 모듈이 필요로 하는 정보 등이 저장된다.
  • 시스템 카탈로그 특징 : DBMS가 스스로 생성, DML을 통해 직접 변경 불가, 위치 투명성, 중복 투명성

 3-4. 병행 제어와 로킹

  • 병행제어 기법 : 로킹, 타임스탬프 기법, 낙관적 병행제어, 다중 버전 병행 제어
  • Undo, Redo

4. 물리 데이터베이스 설계

 4-1. 물리 데이터 모델 설계

  • 클러스터 : 동일한 성격의 데이터를 동일한 블록에 저장하는 물리적 저장 방법
  • 파티셔닝 : 대용량의 테이블을 논리적인 단위의 작은 테이블로 나누는 것
  • 파티션 유형 : 범위 분할, 해시분할, 조합 분할, 목록 분할
  • 스토리지 : 대용량의 데이터를 저장하기 위해 서버와 저장장치를 연결하는 기술, DAS, NAS, SAN

 4-4. 분산데이터베이스 설계

 

 

  • 분산 데이터베이스 : 물리적으로 분산되어 있는 데이터베이스를 논리적으로 통합
  • 장점 : 원격 데이터에 대한 의존도 감소, 서버 확장 용이, 신뢰도와 가용성 향상
  • 단점 : 관리의 복잡도와 개발비용 증가, 통제 기능이 취약, 오류의 잠재성, 데이터의 무결성 보장이 어렵다.
  • 분산 데이터베이스 관리 시스템의 목표 : 위치 투명성, 중복 투명성, 분할 투명성, 장애 투명성, 병행 투명성
  • 온라인 분석 시스템(OLAP) 연산 종류 : roll-up, drill-down, pivoting, slicing, dicing
  • 빅데이터 : Volume, Variety, Velocity, 다양한 형태의 비정형 데이터를 포함한다. 하둡, NoSQL, R

 

댓글