[Real MySQL] 08. 인덱스

sa46lll·2021년 12월 28일
0

Real-MySQL

목록 보기
4/9

디스크 읽기 방식

하드 디스크 드라이브(HDD)와 솔리드 스테이트 드라이브(SDD)

SSD의 장점은 기존의 디스크 드라이브보다 랜덤 I/O가 훨씬 빠르다. 데이터베이스 서버에 순자 I/O 작업은 그다지 비중이 크지 않고 랜덤 I/O를 통해 작은 데이터를 읽고 쓰는 작업이 대부분이므로 SSD는 DBMS용 스토리지에 최적이다.
하드 디스크 드라이브(HDD) 는 기계식 플래터와 움직이는 읽기/쓰기 헤드를 사용하여 데이터에 액세스하는 기존 스토리지 디바이스입니다. 솔리드 스테이트 드라이브(SSD) 는 즉시 액세스할 수 있는 메모리 칩에 데이터를 저장하는 더 빠르고 새로운 디바이스 유형이다.
SSD는 기존의 디스크 드라이브에서 데이터 저장용 플래터를 제거하고 대신 플래시 메모리를 장착하고 있습니다. 그래서 디스크 원판을 기계적으로 회전시킬 필요가 없으므로 아주 빨리 데이터를 읽고 쓸 수 있습니다.
읽기/쓰기 속도: HDD < SDD

랜덤 I/O와 순차 I/O

여러 번 쓰기 또는 읽기를 요청하는 랜덤 I/O 작업이

인덱스란?

테이블의 조회 속도를 높여주는 자료 구조이며, 테이블의 특정 레코드 위치를 알려주는 용도로 사용한다.

B-Tree 인덱스

데이터베이스의 인덱싱 알고리즘 가운데 가장 일반적이고, 범용적인 목적으로 사용된다.
binary search tree의 한계를 극복하고자 나온 자료구조이다. 데이터 높이를 자동으로 바로잡아주는 기능이 있으며, insert, delete 등의 시간은 걸리더라도 search 시간을 줄일 수 있다.

R-Tree 인덱스

B-Tree는 인덱스를 구성하는 컬럼의 값이 1차원의 스칼라값인 반면, R-Tree 인덱스는 2차원의 공간 개념 값이라는 것입니다.

Fractal-Tree의 특성

B-Tree 인덱스에서 인덱스 키를 검색하거나 변경하는 과정 중에 발생하는 가장 큰 문제는 디스크의 랜덤 I/O가 상대적으로 많이 필요하다는 것입니다. Fractal-Tree는 이러한 B-Tree의 단점을 최소화하고, 이를 순차 I/O로 변환해서 처리할 수 있다는 것이 가장 큰 장점이다.

전문 검색(Full Text search) 인덱스

함수 기반 인덱수

멀티 밸류 인덱스

클러스터링 인덱스

유니크 인덱스

외래키

profile
비열한 커비

0개의 댓글