1차 정규형은 각로우마다 컬럼의 값이 1개씩만 있어야 합니다. 이를 컬럼이 원자값(Atomic Value)를 갖는다고 합니다
2차 정규형은 테이블의 모든 컬럼이 완전 함수적 종속을 만족하는 것입니다. 기본키 중에 특정 컬럼에만 종속된 컬럼(부분적 종속)이 없어
야 한다는 것입니다.
3차 정규형은 기본키를 제외한 속성들 간의 이행적 함수 종속이 없는 것 입니다. 풀어서 말하자면, 기본 키 이외의 다른 컬럼이 그 외 다른
컬럼을 결정할 수 없는 것입니다.
4.
구조가 다르기에 Oneby One으로 옮기는 것은 무의미 하다.
Document에 컬럼명이 같이 들어간다.
9.
1차 정규화를 통한데이터의 중복성 해결
1차 정규형은 각 로우마다 컬럼의 값이 1개씩만
있어야 합니다.
이를 컬럼이 원자값(Atomic Value)를 갖는다고
합니다. (RDBMS에서는 XML, JSON을 넣는 경우
도 있다)
2차, 3차를 통해 종속성
-> 데이터 무결성, 리소스 낭비를 방지
10.
정규화는 귤을 까는것을 이야기할 수 있고, 쿠키 통의 쿠키를
먹는 것이 MongoDB의 스키마 결정이라고 할 수 있다.
RDBMS와 MongoDB는 귤과 쿠키를 먹는 방법이 다르듯이
데이터에 접근하는 방식이 다르다.
11.
RDBMS에서는 배열 정보를위해서
XML용 필드를 별도로 주는 경우도 있다.
RDBMS의 1차 정규화에 관련하여
MongoDB에서도 중복은 발생하지 않게 할 수 있다.
(2개의 테이블을 하나의 다큐먼트로 표시한 예
중복은 없음)
12.
MongoDB의 스키마 디자인기본 원칙은 다음과 같다.
기존 RDBMS는 데이터의 관점이지만 MongoDB는 어플리케이션 관점이다.