DB - 정규화, KEY

jppark·2020년 12월 4일

데이터베이스

목록 보기
1/2
  • entity / attribution / relation
    그룹 / 정보 / 관계
  • 정규화

    • DB 설계를 재구성하는 테크닉
    • 불필요한 데이터 제거
  • 1정규화 (Atomic columns)

    • column의 값이 atomic 해야 함.
    • 그렇지 않다면 조회, join에서의 문제 발생
  • 2정규화 (no partial dependencies)

    • 부분종속성을 없애기 위해 테이블을 쪼개는 것.
    • 예를 들어, 한 row에 js와 js에 관련된 내용(역사, 설명 등 공통적인 성격)이 있고 타입(앞/뒷단)에 따른 lib들?(nodejs, reactjs)이 있다고 하면 불필요하게 부분적인 내용이 두번 들어가게 됨.
  • 3정규화 (No treansitive dependencies)

KEY

DB라는건 데이터를 저장하고 더 나아가 잘 관리하려고 하는것이 목적임.
관리의 한 부분으로는 조회라는 것이 있을 수 있는데 고유한 행을 식별해내기 위해 이를 구분해 줄 수 있는 key가 필요하다.

키의 종류

  • 후보키
    • 한 테이블 내의 모든 행을 유일하게 구분할 수 있는 컬럼부분집합들의 후보
  • 기본키
    • 후보키 중 하나.
  • 대체키
    • 후보키에서 기본키를 뺀 것
  • 중복키
    • 두 개 이상의 속성을 합쳐서 식별자로 갖는 것.
  • 외래키
    • 다른 테이블의 모든 행을 식별할 수 있는 키.

0개의 댓글