CS/DataBase

CS/DataBase

[DataBase] Normalization (정규화)

정규화(Normalization) 이란 ? 정규화의 기본 목표는 테이블 간 중복된 데이터를 허용하지 않는다는 것이다. 이로 인해 무결성(Integrity)을 유지할 수 있으며, DB의 저장 용량 역시 줄일 수 있다. 제1 정규화 - 1NF 제1 정규화란 테이블의 컬럼이 원자값(Atomic Value, 하나의 값)을 갖도록 테이블을 분해하는 것이다. 다음과 같은 고객취미들 테이블이 있다고 하자. 위의 테이블에서 추신수와 박세리는 여러 취미를 가지고 있기 때문에 제1 정규형을 만족하지 못하고 있다. 그렇기에 이를 제1 정규화하여 분해할 수 있는데, 제1 정규화를 진행한 테이블은 아래와 같다. 제2 정규화 - 2NF 제2 정규화는 제1 정규화를 진행한 테이블에 대해 완전 함수 종속을 만족하도록 테이블을 분해하..

CS/DataBase

[DataBase] Index (인덱스)

Index ? 인덱스란 데이터베이스 테이블의 검색 속도를 향상 시켜주는 자료구조라고 할 수 있다. 특정 컬럼에 인덱스를 생성하면 해당 컬럼의 데이터들을 정렬해서 별도의 메모리 공간에 데이터의 물리적 주소와 함께 저장한다. 인덱스를 이용하여 쿼리문을 작성하면 옵티마이저에서 판단하여 생성된 인덱스를 탈 수 있다. 옵티마이저 : 가장 효율적인 방법으로 SQL을 수행할 최적의 처리 경로를 생성해주는 DBMS의 핵심 그렇다면 Index를 왜 쓸까 ?? 인덱스의 가장 큰 특징은 데이터들이 정렬 되어있다는 점이다. 이 특징으로 조건 검색이라는 부분에서 큰 장점이 된다. 1) 조건 검색 WHERE절의 효율성 테이블 내의 데이터가 쌓이면 테이블의 튜플은 내부적으로 순서가 뒤죽박죽 저장이 되고 이를 WHERE 절로 데이터..

엥재
'CS/DataBase' 카테고리의 글 목록 (3 Page)