아래 글은 데이터베이스 관련 개념 정리 및 작성자 공부를 위해 작성되었습니다.

 

 

📃 참고자료

https://www.youtube.com/watch?v=RXQ1kZ_JHqg&list=PLimVTOIIZt2aP6msQIw0011mfVP-oJGab&index=6 

 

 

 

 

# 논리적 데이터베이스 설계

 

1. ER 스키마 --> 관계스키마로 사상

 

 

2. 효율적인 데이터베이스 스키마 구축

 

 정규화(Normalization)

  • 키, 무결성의 개념 이해
  • 이상현상 이해
  • 함수적 종속성 이해
  • 정규화 과정 이해

 

 

* 비정규 릴레이션  → 정규화된 릴레이션

 

 

 

# 정규화의 목적

 

  • 데이터 구조의 안정성을 최대화시킨다.
  • 중복을 배제하여 삽입, 삭제, 갱신 이상의 발생을 방지한다.
  • 어떠한 릴레이션이라도 데이터베이스 내에서 표현 가능하도록 한다.
  • 데이터 삽입 시 릴레이션을 재구성 할 필요성을 줄인다.
  • 효과적인 검색 알고리즘을 생성한다.

 

 

 

 

# 제 1 정규형(1NF)

  • 릴레이션에 속한 모든 도메인이 원자값(Atomic Value)
  • 모든 속성에 입력되는 값들을 원자값을 가져야 한다.

 

 

 

 

"중복되는 항목이 없다"에 대한 정의는 학자마다 주장이 조금씩 달라서, 1NF를 만족하는 테이블에 대해서의 정확한 정의는 없다. 대부분의 학자들(에드거 F. 커드, Ramez Elmasri, Shamkant B. Navathe[3])은 1NF를 만족하는 테이블은 관계 값을 가지는 항목(테이블 내 테이블)을 허용하지 않으나, 일부 학자들(크리스토퍼 J. 데이트 등)은 이를 허용하기도 한다.

 

 

 

# 크리스토퍼 J. 데이트의 1정규형의 정의

 

  1. 열에는 위 - 아래의 순서가 없다.
  2. 행에는 좌 - 우의 순서가 없다.
  3. 중복되는 열이 없다.
  4. 모든 열과 행의 중복지점에는 (열과 행의) 해당되는 분야에서 한 개의 값을 가진다.
  5. 모든 행은 규칙적이다.

 

 

# 제 2 정규형(2NF)

 

- 키가 아닌 모든 속성들이 기본키에 완전 함수 종속

 

 

 

 

# 제 3 정규형(3NF)

 

- 키가 아닌 모든 속성들이 기본키에 이행적으로 함수 종속 되지 않은 릴레이션

 

 

 

 

# 무손실 분해(Lossless Decomposition)

  • 분해된 두 릴레이션을 조인하면 원래의 릴레이션에 들어 있는 정보를 완전하게 얻을 수 있다.
  • 여기서 손실이란 정보의 손실을 뜻한다.
  • 정보의 손실을 원래의 릴레이션을 분해한 후에 생성된 릴레이션들을 조인한 결과에 들어 있는
    정보가 원래의 릴레이션에 들어 있는 정보보다 적거나 많은 것을 포함한다.

 

 

 

반응형

+ Recent posts