정보처리기사 데이터베이스 요약


*개인 공부를 위한 포스팅이라 전체 내용 대비 누락되는 부분이 있습니다.

* 데이터베이스 정의

1. 통합된 데이터(Integrated Data)

2. 저장된 데이터(Stored Data)

3. 운영 데이터(Operational Data)

4. 공용 데이터(Shared Data)

* 데이터베이스 특징

1.실시간 접근(Real Time Accessibility)

2.계속적인 변화(Continuous Evolution)

3.동시 공용, 공유성(Concurrent Sharing)

4.내용에 의한 참조(Content Reference)

* 데이터 언어

1. DDL(데이터 정의어)

2. DML(데이터 조작어)

3. DCL(데이터 제어어)

* 데이터베이스 사용자

1. DBA

2. DA(Data Administrator) - 데이터에 대한 정의

3. DA(Data Architect) - 데이터의 구조를 체계적으로 정의

* 스키마

1. 외부스키마

2. 내부스키마(물리적 구조)

3. 개념스키마(논리적 구조)

* 데이터베이스 설계순서

1.개념적 설계(ER Diagram)

2.논리적 설계(관계형, 계층형 ,망형)

3.물리적 설계(물리적 구조 데이터)

* 릴레이션의 구조

- 속성, 튜플, 도메인[속성의 범위], 디그리[속성의 수], 카디널리티[튜플의 수], 스킴[속성의 구조], 인스턴스[튜플의 집합]

* 키의 종류

- 슈퍼키 : 한 릴레이션 내에 속성들의 집합으로 구성된 키(유일성)

- 후보키 : (유일성+최소성) 만족하는 슈퍼키

- 기본키 : 후보키 중 선택키

- 대체키 : 후보키 중 기본키를 제외한 키

- 외래키 : 릴레이션2에서 릴레이션1을 참조할 때 기준이 되는 속성

* 정합성

- 무모순성(논리적 모순이 없는 상태)

* CRUD 매트릭스

- 행은 업무프로세스, 열은 엔티티타입으로 행과 열이 만나는 교차점에 상태를 표시

* 속성 정의서

* Mapping Rule(사상)

- ERD를 릴레이션 스키마로 변환하는 과정

* 관계유형

- 식별관계 : 상위 개체의 기본키가 하위 개체의 기본키로 전이

- 비식별관계 : 상위개체의 기본키가 하위개체에 일반속성으로 전이

- 1:N / 1:1관계 해결방법 : 테이블1의 기본키를 테이블2의 외래키로 전이시킨다

- N:N 관계 해결방법 : 두 테이블의 기본키를 외래키로 가지는 새로운 릴레이션 스키마를 도출[교차 엔티티 / 2개의 1:N 관계]

* 관계 데이터 연산

- 관계 대수 : 절차적 언어

- 관계 해석 : 비절차적 언어

* 관계형 데이터의 구성 요소

- Structure(구조)

- Operation(연산)

- Constraint(제약조건)

* 데이터 웨어하우스

- 사용자의 의사결정에 도움을 주기 위해 시스템에서 추출,통합,요약된 주제중심적 데이터베이스

* 데이터 사전[시스템 카탈로그] 

- 데이터베이스에 저장된 모든 데이터 개체들에 대한 정보를 유지/관리하는 시스템

* 데이터 마이닝

- 엄청난 양의 데이터에서 가치있는 정보를 찾고자하는 연구 중 하나

* OLAP 연산

- Drill Up : 작은 범위에서 큰 범위(요약)로 접근

- Drill Down, Drill ACross, Drill Through, Pivoting, Slicing, Dicing

* 행이주, 행연결

- Row Migration : block 의 저장공간이 꽉 찼을 때 다른 block에 row 전체를 이주 저장.

- Row Chaining : 한 컬럼의 데이터 사이즈가 큰 경우  해당 로우는 여러 block에 걸쳐 저장.

* 트랜잭션의 특성

- Atomicity

- Consistency

- Isolation

- Durability

* 트랜잭션의 상태

- 활동 : 트랜잭션 실행중

- 부분적 완료 : 마지막 명령문을 실행한 직후

- 실패 : 

- 철회 : 실패 후 롤백 상태

- 완료 : 성공 후 커밋

* 철회 트랜젝션의 처리방법

- 트랜잭션 재시작(restart): 하드웨어, 소프트웨어적 오류가 원인

- 트랜잭션 폐기(kill) : 내부논리오류가 원인

* 동시성 제어의 필요성

- 갱신내용 손실

- 모순성

- 연쇄적인 복귀

* 로킹연산의 종류

- 공유잠금 : 락에 대해 read는 가능하나 write가 불가능

- 전용잠금 : read, write가 가능

* 로킹 단위

- 로킹의 단위가 큰 경우 : 제어기법 구현이 용이하나 동시성의 정도가 떨어짐

- 로킹의 단위가 작은 경우 : 제어기법 구현이 복잡하나 동시성의 정도가 향상됨

* 2단계 로킹 프로토콜

- 확장 단계 : 잠금연산만 가능하고 해제는 불가능

- 축소 단계 : 해제연산만 가능하고 잠금은 불가능

* 시간 스탬프 순서 기법

- 타임스탬프를 생성해 트랜젝션에 부여 [동시성 제어의 기준]

* 트랜잭션 스케줄

- 직렬 스케줄 : 하나의 트랜젝션 연산을 모두 실행하고 다음 트랜젝션을 수행

- 비직렬 스케줄 : 트랜잭션들을 병행수행

- 직렬가능 스케줄 : 병행수행을 하며 직렬스케줄과 동일한 결과를 도출

정보가 도움이 되셨나요?
 와 구독버튼을 꾹 눌러주세요!

+ Recent posts