1. 한줄 정의

  • IOPS: 스토리지 시스템이 1초당 처리할 수 있는 읽기/쓰기 작업(I/O Request)의 횟수를 의미하는 작업 빈도 지표
  • Throughput: 단위 시간(1초) 동안 스토리지와 호스트 간에 실제로 전송되는 물리적 데이터의 총량을 나타내는 전송 대역폭 지표


2. 등장 배경

  • 왜 등장했는가?
  • 저장매체 다변화에 따른 성능 측정 분리: HDD(헤드 이동 지연)에서 SSD/NVMe(병렬 플래시 셀)로 전환되며 I/O 특성 분리 측정 필요
  • 워크로드별 병목 요인 정밀 분석: 트랜잭션 빈도 위주 업무와 대용량 파일 전송 업무의 병목 구간이 상이하여 독립 지표 수립 요구
  • 기존 단일 지표(용량/단순 속도)의 문제점
  • 단순 용량 중심 설계의 오류: 용량이 커도 I/O 큐(Queue) 처리 한계로 병목 발생 시 성능 예측 불가
  • I/O 패턴 왜곡: 작은 파일 다수 전송 시 대역폭(MB/s)은 극히 낮아도 I/O 컨트롤러는 포화 상태가 되는 현상 설명 불가

3. 핵심 개념

  • 핵심 키워드: I/O Request, Block Size (4KB~1MB), Transfer Rate (MB/s), I/O Queue Depth, 랜덤 I/O vs 순차 I/O, 상관관계 공식, 스토리지 컨트롤러 한계, 대역폭 포화(Saturation)

4. 동작 원리 / 구조

  • 수학적 상관관계 공식:

$$\text{Throughput (MB/s)} = \frac{\text{IOPS} \times \text{I/O Block Size (Bytes)}}{1024 \times 1024}$$

  • Throughput: IOPS와 블록 크기의 곱에 비례
  • IOPS 한계: 블록 크기가 커질수록 스토리지 버스 대역폭 한계로 인해 IOPS 수치는 감소
  • 블록 크기별 동작 메커니즘 도식:
[ 작은 블록 (예: 4KB OLTP) ]             [ 대용량 블록 (예: 1MB Streaming) ]
┌───┐ ┌───┐ ┌───┐ ┌───┐                  ┌───────────────────────────────┐
│4KB│ │4KB│ │4KB│ │4KB│                  │              1MB              │
└───┘ └───┘ └───┘ └───┘                  └───────────────────────────────┘
  ▲     ▲     ▲     ▲                                    ▲
  └─────┼─────┼─────┘                                    │
    [ 고빈도 I/O 요청 ]                             [ 단일 대용량 I/O 전송 ]
  - IOPS : 극대화 (작업 수 폭증)                   - IOPS : 낮음 (적은 요청 수)
  - Throughput : 상대적 저조                       - Throughput : 극대화 (버스 대역폭 포화)
  - 주요 병목: CPU 인터럽트, 큐 지연                - 주요 병목: PCIe/네트워크 채널 대역폭

5. 관련 기술

  • 상위 기술: 스토리지 아키텍처(Storage Architecture), 컴퓨터 구조 I/O 서브시스템
  • 연관 기술: Latency(응답 지연시간), Queue Depth(대기열 깊이), 파일시스템 블록 할당(EXT4, XFS), 버스 인터페이스(NVMe, PCIe 5.0/6.0, CXL)
  • 하위 기술: NCQ(Native Command Queuing), NVMe Multi-Queue, I/O 스케줄러(mq-deadline, kyber)

6. 비교 기술 (IOPS vs Throughput)

  • 차이점 위주 비교:
비교 항목 IOPS (I/O Operations Per Second) Throughput (처리량 / 대역폭)
측정 대상 1초당 수행된 I/O 명령어(Read/Write) 횟수 1초당 전송된 총 데이터 볼륨(용량)
측정 단위 IOPS (Count/sec) MB/s, GB/s
핵심 결정 변수 I/O 레이턴시, 큐 깊이, 컨트롤러 병렬 처리력 버스 대역폭, 인터페이스 속도, 블록 크기
주요 I/O 특성 랜덤(Random) I/O, 소형 블록(4KB~8KB) 순차(Sequential) I/O, 대형 블록(64KB~1MB)
대표 워크로드 OLTP DB, 인메모리 캐시 miss, VDI 가상 머신 OLAP/DW 배치 작업, 비디오 스트리밍, 대용량 백업
성능 최적화 초점 레이턴시 단축, 다중 큐 활성화 인터페이스 채널 확장, 점보 프레임, 스트라이핑

7. 장점 및 효과

  • 정밀한 인프라 사이징(Sizing): 워크로드 성격(트랜잭션 vs 스트리밍)에 부합하는 정확한 스토리지 스펙 산정
  • 클라우드 비용 최적화: AWS EBS(gp3, io2) 등 클라우드 스토리지 프로비저닝 시 IOPS와 처리량을 독립 분리 과금하여 비용 절감
  • SLA 준수 및 병목 진단: I/O 성능 저하 발생 시 레이턴시/IOPS 포화인지, 대역폭 한계인지 명확한 원인 분리 가능

8. 단점 및 한계

  • 공급업체 스펙 과장: 단일 수치(최대 1,000,000 IOPS 등)는 100% 읽기 및 4KB 극소 블록 기준인 경우가 많아 실제 워크로드와 괴리
  • 상호 종속적 제약: 물리 버스(Bandwidth)의 최대 한계에 도달하면 아무리 큐 깊이를 늘려도 IOPS가 더 이상 증가하지 않는 트레이드오프 존재
  • Latency 미반영: IOPS와 처리량이 높아도 Queue Depth가 과도하게 길어지면 엔드유저 체감 응답시간(Latency)은 급격히 악화

9. 적용 사례

  • DBMS/OLTP 환경 (IOPS 집중): 은행 계좌 이체, 전자상거래 주문 등 4KB~8KB 단위의 빈번한 랜덤 트랜잭션 처리
  • 빅데이터 분석/AI 학습 (Throughput 집중): Hadoop/Spark 분산 파일시스템 읽기, 대규모 이미지/비디오 데이터셋 로딩
  • 하이브리드 워크로드 설계: DB 트랜잭션 로그(WAL)는 고IOPS 로우 레이턴시 NVMe 배치, 데이터 백업 볼륨은 고Throughput 대용량 스토리지 배치

10. 고려사항

  • I/O 프로파일링 선행: fio, iostat, perf 등의 툴을 통해 타깃 워크로드의 Read/Write 비율 및 평균 블록 크기 선측정
  • Queue Depth 최적화: 너무 낮으면 병렬성을 활용하지 못하고, 너무 높으면 큐 대기 시간 증가로 Latency Spikes 발생
  • 얼라인먼트(Block Alignment): OS 파일시스템 블록 크기와 물리 스토리지 섹터/페이지 크기를 일치시켜 중복 I/O 발생 방지

11. 발전 방향 및 시사점

  • NVMe-oF(Over Fabrics) 및 CXL 결합: 원격 스토리지에서도 네트워크 레이턴시를 최소화하여 로컬 디스크 수준의 극단적 IOPS 제공
  • 소프트웨어 정의 스토리지(SDS) 자동 티어링: AI 기반 I/O 패턴 분석을 통해 핫 데이터(고IOPS)와 웜/콜드 데이터(고Throughput/용량)를 실시간 재배치
  • 기술사적 시사점: 스토리지 아키텍처 수립 시 IOPS, Throughput, Latency 3요소 간의 트레이드오프를 수식 기반으로 정량화하여 제시하는 것이 핵심 답안 차별화 포인트임

12. 기술 관계도

[ 물리적 회전 원판 (HDD) 시대 ]
  │ - 기계적 헤드 이동(Seek Time)으로 극심한 Latency
  │ - IOPS: 수백 단위 한계, Sequential 중심 Throughput 설계
  ▼
[ 플래시 메모리 / SATA·SAS SSD 도입 ]
  │ - 전자적 셀 접근, 기계적 탐색 지연 제거
  │ - 레거시 AHCI 프로토콜(단일 큐, 32 Depth) 인터페이스 병목 직면
  ▼
[ NVMe 표준화 및 PCIe 직접 연계 ] ──▶ 프로토콜 병목 해소
  │ - Multi-Queue 지원 (최대 64,000 Queues × 64,000 Depth)
  │ - IOPS 수십만~수백만 단위로 비약적 상승
  ▼
┌──────────────────────────────────────────────────────────┐
│ [ 현대 스토리지 워크로드 분화 및 클라우드 프로비저닝 ] │
├─────────────────────────────┬────────────────────────────┤
▼                             ▼                            ▼
[ 고IOPS 요구 (OLTP/DB) ]     [ 고Throughput (BigData/AI) ] [ 대용량 아카이빙 (Cold) ]
- 초저지연, Random I/O        - 대역폭 극대화, Sequential   - 비용 최적화
- NVMe SSD, io2 Block Express - GP3, 분산 FS (HDFS/Lustre)  - Object Storage (S3)
└─────────────────────────────┴────────────────────────────┘

출처:

  • Hennessy & Patterson, *"Computer Architecture: A Quantitative Approach"* (6th Edition)
  • AWS Documentation, *"Amazon EBS Volume Types & I/O Characteristics"* (2025)
  • IBM Redbooks, *"Storage Performance Primer: Measuring IOPS, Throughput, and Latency"* (2024)

+ Recent posts