TIL

8.1 디스크 읽기 방식

여전히 데이터 저장 매체는 컴퓨터에서 가장 느린 부분이다. 데이터베이스 성능 튜닝은 어떻게 디스크 I/O를 줄이느냐가 관건일 때가 상당히 많다.

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

8.1.2 랜덤 I/O와 순차 I/O

랜덤 I/O나 순차 I/O나 하드 디스크 드라이브의 플래터(원판)를 돌려 데이터 위치로 디스크 헤더를 이동시킨 다음 데이터를 읽는 것을 의미한다. img.png

일반적으로 쿼리 튜닝이란 랜덤 I/O 자체를 줄이는 것이 목적이다. 랜덤 I/O를 줄인다는 것은 쿼리를 처리하는 데 꼭 필요한 데이터만 읽도록 쿼리를 개선하는 것을 의미한다.

인덱스 레인지 스캔은 주로 랜덤 I/O를, 풀 테이블 스캔은 순차 I/O를 사용한다. 그래서 읽을 범위가 많은 경우에는 인덱스를 사용하지 않고 풀 테이블 스캔을 유도할 때도 있다.