정보처리기사
트랜젝션 성질
- 원자성(Atomicity): Commit, Rollback
- 일관성(Consistency): 무결성
- 격리성(Isolation)
- 영속성(Durability)
무결성
- 개체 무결성: PK - Not Null & Unique
- 참조 무결성: FK 값은 피참조 릴레이션의 PK 값이거나 NULL 값
- 도메인 무결성
- 키 무결성: 테이블에 최소 1개의 키가 존재해야 함
스키마
: DB의 구조와 제약 조건에 관한 전반적이 명세(Specification)를 기술한 메타데이터(DB에 대한 데이터)의 집합
- 외부 스키마
: 사용자의 입장에서 필요로 하는 DB의 논리적 구조 - 개념 스키마
: DB의 전체를 정의, 조직 전체의 DB로 하나만 존재 - 내부 스키마
: 물리적인 저장장치의 입장에서 본 DB의 논리적 구조
- 독립성
- 논리적 독립성: 개념 스키마의 변경은 외부 스키마에 영향을 미치지 않음
- 물리적 독립성: 내부 스키마의 변경은 개념, 외부 스키마에 영향을 미치지 않음
투명성
- 분할 투명성(Division Transparency): 하나의 데이터가 여러 장소에 저장
- 위치 투명성(Location Transparency)
- 지역사상 투명성: 각 지역시스템 이름과 무관한 이름 사용 가능
- 중복 투명성(Replication Transparency)
- 장애 투명성(Failure Transparency)
- 병행 투명성(Concurrency Transparency): 다수 Transaction 동시 수행 시 결과의 일관성 유지
데이터 모델링 3단계
- 개념
- ERD 생성
- 트랜잭션 모델링
- 개념 스키마 설계
- 논리
- 정규화
- Transaction Interface 설계
- 개념 스키마를 평가 및 정제
- 물리
- 성능 향상(인덱스, 파티션, 반정규화 등)
- 물리적 스키마(저장 레코드 양식, 접근 경로) 설계
반정규화
: 데이터 베이스 정규화 후 성능향상을 위해 정규화 기법에 위배된 의도적 수행기법
- 종류
- 테이블 분할: 수평분할 / 수직분할
- 테이블 중복: 통계 테이블 추가 / 진행 테이블 추가
- 컬럼 중복: 중복 컬럼 추가 / 파생 컬럼 추가
관계 대수(Relation Algebra) & 관계 해석 (Relation Calculus)
관계 대수(Relation Algebra)
- 주어진 릴레이션 조작을 위한 연산 집합
- 일반 집합 연산: 합집합(∪), 교집합(∩), 차집합(-), 카티션 프로덕트(X)
- 순수 관계 연산: SELECT(σ), PROJECT(∏), DIVISION(÷), JOIN(▷◁)
- DIVISION(÷)
- R ÷ S: R 튜플 중 S에 속한 튜플 중 S에 속하지 않은 속성값 추출
- DIVISION(÷)
- 절차적 언어
- 원하는 정보를 얻기 위해 어떻게 (how) 질의를 해석하는지를 기술관계 해석 (Relation Calculus)
- 비절차적 언어
- 원하는 정보가 무엇 (what) 인지만 명시
E-R 다이어그램(ERD) 속성 표기법
Key
- Super Key: 유일성-대상을 유일하게 식별할 수 있으면 충족
- Candidate Key: 유일성 + 최소성
- Alternate Key: PK가 아닌 후보키
- Primary Key: AK 중 가정 적합한 키(예: 학교에서 PK는 학번)
Trigger: 삽입, 갱신, 삭제 등의 이벤트가 발생할 때마다 관련 작어빙 자동으로 수행되는 절차형 SQL
참고 자료
'Certificate > 정보처리기사' 카테고리의 다른 글
[정보처리기사] 2020년 1회차 (5)정보시스템 구축관리 (0) | 2023.07.19 |
---|---|
[정보처리기사] 2020년 1회차 (4)프로그래밍 언어 활용 (0) | 2023.07.19 |
[정보처리기사] 2020년 1회차 (2)소프트웨어 개발 (0) | 2023.07.18 |
[정보처리기사] 2020년 1회차 (1)소프트웨어 설계 (0) | 2023.07.18 |
[정보처리기사] 2020년 3회차 (5)정보시스템 구축관리 (0) | 2023.07.18 |