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
'기타 > 정보처리기사' 카테고리의 다른 글
정보처리기사 필기 키워드 정리 - 5과목 : 정보 시스템 구축 관리 (0) | 2022.04.21 |
---|---|
정보처리기사 필기 키워드 정리 - 4과목 : 프로그래밍 언어 활용 (0) | 2022.04.21 |
정보처리기사 필기 키워드 정리 - 2과목 : 소프트웨어 개발 (0) | 2022.04.20 |
정보처리기사 필기 키워드 정리 - 1과목 : 소프트웨어 설계 (0) | 2022.04.19 |
댓글