본문 바로가기
🏆 자격증/⚡ 정처기

[필기] DB 구축 정리 - 2021년

by 엄지잉 2023. 7. 5.

💡 [엄지잉] 직접 풀고, 부족하다고 느끼는 내용만 따로 정리했습니다. 💡

스키마

  • 개념 스키마
    • 사용자, DB 관리자 관점
    • DB에 실제로 어떤 데이터가 저장되었으며, 데이터 간의 관계는 어떻게 되는지를 정의하는 스키마
    • 전체 관점으로 1개만 존재하며 데이터 객체 관계, 제약 조건, 접근 권한, 보안, 무결성 규칙 등 명세
  • 내부 스키마
    • 저장 장치, DB 설계자 및 개발자 관점
    • 개념 스키마를 물리적 저장장치에 구현하는 방법을 정의하는데 사용
    • 물리적 구조, 내부 레코드의 물리적 순서 등 표현
  • 외부 스키마
    • 사용자 관점의 스키마
    • 사용자 or 프로그램 입장에서 논리적 구조로 여러 개 존재

DB 설계 ⭐⭐

  • 개념적 설계
    • 개념 스키마 모델링
    • 트랜젝션 모델링
    • 독립적인 개념 스키마 설계
    • E-R 다이어그램
  • 논리적 설계 ⇒ I/F, DBMS!!
    • 트랜잭션 인터페이스 설계
    • 스키마 평가 및 정제
    • 목표 DBMS에 맞는 논리 스키마 설계
    • 논리적구조의 데이터로 모델화
  • 물리적 설계 ⇒ 레코드!!
    • 저장 레코드 양식 설계
    • 저장구조 및 액세스 경로 설정
    • 레코드 집중의 분석, 설계

뷰(VIEW) ⭐⭐

  • DMA는 보안 측면에서 뷰 활용 가능
  • 뷰 위에 다른 뷰 정의 가능
  • 독립적 idx 가질 수 없음
  • 단점 : 삽입, 삭제, 갱신 연산에 제약 따름

정규형 (아래로 내려가는 화살표임) [두부이걸다줘?] ⭐⭐

  • 비정규 릴레이션

→ 도메인이 원자값

  • 1NF

→ 부분적 함수 종속 제거

  • 2NF

→ 이행적 함수 종속 제거

  • 3NF

→ 결정자이면서 후보키가 아닌 것 제거

  • BCNF

→ 다치 종속

  • 4NF

→ 조인 종속성 이용

  • 5NF

이상(anomaly) 현상: 정규화 거치지 않아 발생하는 현상 ⭐

  • 삽입 이상
    • 릴레이션에서 데이터를 삽입할 때, 의도와 상관없이 원하지 않는 값들도 함께 삽입
  • 삭제 이상
    • 릴레이션에서 한 튜플을 삭제할 때, 의도와 상관없는 값들도 함께 삭제
  • 갱신 이상
    • 릴레이션에서 튜플에 있는 속성값을 생긴할 때, 일부 튜플의 정보만 갱신 → 정보에 모순 발생

릴레이션 관한 설명 ⭐⭐

  • 릴레이션 = 테이블
  • 튜플 = 테이블의 행 = 카디널리티
  • 속성 = 테이블의 열 = 차수
  • 릴레이션 스키마 = 릴레이션의 논리적인 구조 정의한 것

병렬 DB 환경 - 수평 분할

  • 수평 분할 : 하나의 테이블의 각 행을 다른 테이블에 분산시키는 것
  • 기법 종류
    • 범위 분할 / 해시 분할 / 리스트 분할 / 컴포지트 분할 / 라운드로빈

시스템 카탈로그

  • DBMS가 스스로 생성, 유지 ⇒ NOT 사용자가 직접
  • 시스템 자신이 필요로하는 스키마 및 여러가지 객체에 관한 정보를 포함하고 있는 시스템 DB
  • 시스템 카탈로그에 저장되는 내용 : 메타데이터

병행제어

  • 정의 : 동시에 여러 개의 트랜잭션 수행 → DB 일관성 파괴X 하도록 제어하는 것
  • 기법 종류
    • 로킹 기법 / 타임스탬프 기법 / 최적 병행수행 기법 / 다중 버전 기법

관계형DB 키

  • 후보키
    • 유일성 O, 최소성 O
  • 슈퍼키
    • 유일성 O, 최소성 X
  • 대체키
    • 기본키로 선택되지 못한 후보키
  • 외래키
    • 다른 릴레이션의 기본키를 참조하는 속성/속성 집합