데이터베이스 : 디스크 I/O ( 랜덤 I/O / 순차 I/O )

TopOfTheHead·2026년 2월 6일

데이터베이스

목록 보기
8/13

디스크 I/O
보조기억장치 또는 입출력 장치데이터 입출력을 담당

  • DB 성능 최적화에서 가장 중요한 성질
    。상대적으로 속도가 느리므로 ( CPU보다 수천배 느림 ) 페이지폴트의 경우도 페이지 교체 알고리즘을 통해 디스크 I/O 빈도를 최대한 감소

    성능 증진 시 디스크 I/O의 빈도를 최대한 감소하며, 발생하는 디스크 I/O도 최대한 순차 I/O이어야한다

  • 디스크 I/O 종류
    랜덤 I/O , 순차 I/O
    랜덤 I/O가 아닌 순차 I/O를 활용하면 검색속도가 획기적으로 빨라짐.

랜덤 I/O ( Random Input / Output )
데이터를 찾을때 여러 위치를 랜덤하게 접근해서 읽는 방식
디스크 헤더가 여러곳을 찾아야하므로 속도가 감소

커버링 인덱스를 사용 시 불필요한 랜덤 I/O를 감소시킬 수 있다.

  • 데이터 조회속도를 느리게 만드는 주된원인
    DB에서 랜덤 I/O가 많아질수록 조회속도는 급격하게 저하

    데이터를 찾을 때 해당 디스크 헤더에서 트랙하드웨어적으로 여러 위치를 조회해야하므로 매우 큰 조회시간이 소요
    순차 I/O의 경우 연속적으로 읽게되므로 조회속도면에서 압도적으로 유리

순차 I/O ( Sequential Input / Output )
연속된 데이터를 읽는 방식
랜덤 I/O와 달리 디스크 헤더를 통해 연속적으로 한번에 읽을 수 있어 빠르다.

  • 커버링 인덱스를 사용 시 순차 I/O를 활용하여 랜덤I/O에 비해 쿼리실행시간을 대폭감소가능
    커버링 인덱스 사용 시 인덱스 테이블에서만 조회하므로 순차 I/O를 통해 디스크 I/O를 수행
    인덱스 테이블데이터 테이블 모두 조회 시 랜덤 I/O로서 디스크 헤더트랙 상에 두 군데를 확인해야하므로 시간이 매우 소요됨.
profile
공부기록 블로그

0개의 댓글