데이터베이스 10강을 보며 배운내용
디스크와 메모리의 입출력(i/o)를 줄이기 위해 인덱스가 나왔다
인덱스
DBMS에서 요청된 레코드에 빠르게 접근할 수 있도록,
지원하는 데이터와 관련된 부가적인 구조
인덱스만 메모리에 올리니까 속도가 무지 빨라진다
탐색키
검색할 때 사용할 수 있는 키
인덱스 평가기준
상황에 따라 밑의 기준에 따라 어떤 인덱스를 쓸지 정한다
- 접근 시간: 찾는 데 걸리는 시간
- 유지 비용: 삽입/수정/삭제 갱신 비용
- 공간 비용: 인덱스 구조에 의해 사용되는 부가적인 공간 비용
인덱스 종류
순서 인덱스, 해시 인덱스
순서 인덱스
모든 탐색키가 순차적으로 정렬되어 있다
사전을 생각하면 편하다
밀집 인덱스
모든 레코드에 [ 탐색키 값 | 포인터 ] 쌍 가지고 있다
해당 레코드로 바로 이동 가능 but 사이즈가 커진다
희소 인덱스
일부의 탐색키 값만 가진다
사이즈가 작지만 레코드 검색을 시켜줘야 한다
다단계 인덱스
밀집 인덱스에 블럭이 많아지면 공간도 많아진다
밀집 인덱스 + 희소 인덱스 합친 형태
내부 인덱스와 외부 인덱스로 구성
B+트리
이진 탐색 트리 + 다단계 인덱스
'Computer Science > Database :: 데이터베이스' 카테고리의 다른 글
데이터베이스 12강 :: 트랜잭션, 동시성, 스케줄 (0) | 2022.04.27 |
---|---|
데이터베이스 11강 :: 해싱, 정적 해싱, 동적 해싱, 비트맵 인덱스 (0) | 2022.04.20 |
데이터베이스 9강 :: 물리적 저장 장치, 파일 구조, 저장 장치 접근 (0) | 2022.04.07 |
데이터베이스 8강 :: 1~7강 중간점검 (0) | 2022.03.30 |
데이터베이스 7강 :: 함수적 종속성, 정규화 (0) | 2022.03.16 |