728x90
반응형
정규화 (Normalization)
- 비즈니스 운영에 필요한 데이터들을 관계형 데이터베이스에 적합한 구조로 변환하는 과정
- 정규화가 되지 않은 데이터들은 이상현상을 일으킨다.
제 1정규형 (1NF)
- 각 컬럼은 하나의 데이터만 가지고 있어야 한다.
- 한 컬럼의 데이터들은 같은 타입을 가져야 한다.
- 컬럼의 순서가 데이터에 영향을 미쳐서는 안된다.
- 1NF를 만족시키지 못한 커피 테이블
커피이름 / 커피가격 / 커피사이즈 / 커피온도
Americano 3000, 3500, 4000 T,G,V H, I
Peach Ice Tea 4000, 4500 T, V I
- 1NF를 만족시킨 커피 테이블
커피이름 / 커피가격 / 커피사이즈 / 커피온도
Americano 3000 T H
Americano 3000 T I
Americano 3500 G H
Americano 3500 G I
Americano 4000 V H
Americano 4000 V I
- 2NF ~ 3NF 정도는 일반적인 정규화로 본다.
- 정규화에 너무 집착하면 성능에 문제가 발생하기 때문에 오히려 정규화를 다시 되돌리는 역정규화를 하기도 한다.
- 정규화의 성능 저하에 지쳐서 NO-SQL 데이터베이스를 쓰기도 한다.
(정규화를 최소한으로 하여 물리 용량을 굉장히 낭비하고, 조회속도를 엄청나게 올린 방식의 데이터 베이스를 NO-SQL이라고 한다.)
728x90
반응형
'DB > Oracle' 카테고리의 다른 글
[Oracle DB] 시퀀스(Sequence) (0) | 2023.04.27 |
---|---|
[Oracle DB] 트랜잭션(Transaction) (0) | 2023.04.27 |
[Oracle DB] 테이블 수정하기 (0) | 2023.04.23 |
[Oracle DB] 제약 조건 (0) | 2023.04.23 |
[Oracle DB] 데이터 추가, 수정, 삭제하기 (0) | 2023.04.23 |