2. 디스크 I/O 이해

박은서's avatar
Feb 09, 2026
2. 디스크 I/O 이해

1. 디스크 I/O

1️⃣ 디스크 I/O 란?

Disk Input/Output (= 디스크 입출력)

프로그램이나 DB가 디스크(SSD/HDD)에 있는 데이터를 읽거나 쓰는 작업

2️⃣ 특징

  • 가장 느린 작업 중 하나
    • HDD는 물리적으로 디스크를 회전시키고 헤드를 이동해야 함 → 기계 동작 → 느림
    • SSD는 전자식이라 빠르지만 그래도 메모리보다 느림
  • CPU나 메모리 속도에 비해 수천~수백만 배 느림
  • DB 성능 튜닝의 핵심 포인트

2. 디스크 I/O 방식

1️⃣ 시퀀셜 엑세스 (Sequential Access, 순차 접근)

1) 시퀀셜 엑세스란?

데이터를 연속된 위치에서 차례대로 읽는 방식

2) 예시

  • 책을 1페이지부터 순서대로 읽기
  • 파일의 처음부터 끝까지 스캔하기

3) 시퀀셜 엑세스의 장점

  • 빠름!
  • 디스크 헤드를 많이 움직이지 않음
  • HDD든 SSD든 효율적

4) DB에서 예

  • 테이블 전체 스캔 (Full table scan)
  • 정렬된 인덱스를 순서대로 탐색

5) 필기 정리

notion image

2️⃣ 랜덤 엑세스(인덱스 목차, 랜덤 접근, 임의 접근, Random Access)

1) 랜덤 엑세스란?

데이터를 임의의 위치에서 직접 읽는 방식

2) 예시

  • 책에서 1페이지 읽다가 갑자기 200페이지로 뛰기

3) 랜덤 엑세스의 특징

  • HDD에서는 매우 느림
    • (헤드가 원하는 위치로 계속 이동해야 함)
  • SSD에서는 훨씬 낫지만 여전히 순차보다 느린 경우가 많음

4) DB에서 예

  • 인덱스로 특정 레코드를 하나씩 찾기
  • 여러 위치를 왔다갔다 읽는 패턴

5) 필기 정리

notion image

3️⃣ 캐시(Cache)

1) 캐시란?

자주 쓰는 데이터를 빠른 메모리에 저장해 두었다가 재사용하는 구조

2) 캐시가 필요한 이유

  • 디스크 I/O가 느리기 때문!
  • 한번 읽었던 데이터를 메모리에 저장해두면 다시 읽을 때 디스크를 가지 않아도 됨

3) 캐시의 종류

  • 메모리 캐시
  • CPU 캐시(L1/L2/L3)
  • DB 버퍼 캐시(예: MySQL InnoDB Buffer Pool)

4) 캐시의 장점

  • 디스크 I/O를 줄여서 성능 향상
  • 요청 처리 속도가 폭발적으로 빨라짐

5) 필기 정리

notion image
Share article