Study/MySQL

디스크 읽기 방식 HDD VS SSD

kanado 2026. 3. 1. 18:09

CPU랑 메모리

CPU랑 메모리는 전기로만 움직이는 장치로, 기술이 발전하면서 속도가 엄청 빠르게 좋아졌다.

  • CPU → 계산 속도 엄청 빨라짐
  • 메모리 → 데이터 읽고 쓰는 속도 엄청 빨라짐

하드디스크(HDD)랑 SSD(Solid State Drive)

하드디스크(HDD)는 안에 원판이 실제로 돌아가는 기계 장치로

  • 물리적으로 움직여야 함
  • 읽을 위치까지 헤드가 이동해야 함
  • 시간이 오래 걸림

👉 그래서 CPU/메모리만큼 빨리 발전하지 못했다.


이러한 기계식 하드디스크 드라이브를 대체하기 위해 전자식 저장 매체인 SSD(Solid State Drive)가 출시됨.

  • SSD는 기존 하드디스크 드라이브에서 원판를 제거하고, 그 대신 플래시 메모리를 장착
  • 움직이는 부품 없음
  • 그냥 전기 신호로 바로 읽음
  • 위치 이동 개념이 거의 없음

👉 랜덤으로 읽어도 속도 거의 차이 없음


순차 I/O vs 랜덤 I/O

한 페이지 = 16KB이고, 3페이지를 디스크에 기록해야 하는 상황에서
순차 I/O : 3 × 16KB를 한 번에 요청, 시스템콜 1번, 디스크 헤드 1번 이동

👉 한 번에 쭉 기록
랜덤 I/O : 16KB씩 따로따로 요청, 시스템콜 3번, 디스크 헤드 3번 이동

👉 위치를 계속 바꿔가며 기록

HDD는 읽기/쓰기 헤드가 움직여야 해서, 원하는 위치까지 이동해야 데이터 읽기 가능하다.

  • 문제는 데이터를 읽는 시간보다 "헤드를 이동하는 시간"이 더 오래 걸린다.
  • 순차 I/O → 헤드 1번 이동, 랜덤 I/O → 헤드 여러 번 이동 👉 랜덤이 훨씬 느림

SSD의 장점은 기존 하드 디스크 드라이브보다 랜덤I/O가 훨씬 빠르다는것이다.

  • 데이터 베이스서버에서 순차I/0 작업은 그다지 비중이 크지 않고,
  • 랜덤I/O를 통해 작은 데이터를 읽고 쓰는 작업이 대부분이므로 SSD의 장점은 DBMS용 스토리지에 최적이라고 볼 수 있다.

SSD는 랜덤/순차 차이가 없을까?

SSD는 원판, 헤드, 기계적 이동 없음으로 랜덤 I/O = 순차 I/O 거의 차이 없어야 한다.

SSD 드라이브에서도 랜덤I/O는 여전히 순차I/0보다 전체 스루풋(Throughpu)이 떨어진다.

DB는 왜 랜덤 I/O가 많을까?

데이터베이스는 보통 다음과 같은 작업을 반복한다.

  • 회원 한 명 조회
  • 주문 한 건 조회
  • 인덱스 따라가며 특정 레코드 찾기

👉 랜덤 I/O 폭증 구조로, DB에서는 랜덤 I/O가 작업 부하의 핵심이다.

그럼 쿼리 튜닝은 뭘 하는 걸까?

랜덤 I/O를 순차 I/O로 바꾸는 건 거의 불가능해서 👉 랜덤 I/O 횟수를 줄이는 것이 중요하다.