DB(2)
-
인덱스
인덱스는 데이터베이스의 테이블에 대한 검색속도를 향상시키는 기능이자 자료구조입니다. 대부분의 DB에서 이 기능을 지원합니다. 보통 책의 맨 끝부분에 있는 찾아보기 페이지와 비슷하다고 볼 수 있습니다. 만약 우리가 특정 내용을 찾아보려고 했을때 찾아보기 페이지가 없었다면 우리는 책의 모든 내용을 쭉 훑어봐야 합니다. 이를 DB와 비교해 본다면 인덱스는 찾아보기 페이지이며 모든 내용을 쭉 훑어 보는 행위가 Full Table Scan입니다. ※ Full Table Scan Full Table Scan은 말 그대로 테이블의 데이터들을 모두 스캔한다는 의미입니다. Full Table Scan은 순차적으로 접근 하기 때문에 접근 비용이 감소됩니다. Full Table Scan은 적용 가능한 인덱스가 없거나 처리 ..
2023.01.22 -
정규화
DB를 다루는데 있어 정규화는 필수입니다. 정규화는 릴레이션간의 잘못된 관계로 인해 데이터 베이스 이상현상을 해결하거나, 저장 공간을 효율적으로 사용하기 위해 릴레이션을 여러개로 분리하는 과정입니다. 그렇게 어려운 개념도 아니고 1,2,3, BCNF 정규화 부터 여러 정규화가 있지만. 넘어가면 넘어갈 수록 어플리케이션 단에서의 비용이 더 많은 경우가 있어 보통 3 정규화 혹은 BCNF 정규화 까지만 진행하는 경우가 많습니다. 여기선 제 3 정규화 까지만 설명하려고 합니다. 제 1 정규화 제 1 정규화는 릴레이션의 모든 도메인이 더이상 분해될 수 없는 원자값으로 구성되어 있어야 하는 조건입니다. 예를 들어 아래와 같은 테이블이 있다고 가정해봅시다. 학번 이름 과목 201911111 고지훈 데이터베이스, 자..
2023.01.20