고속 디스크 I/O는 로컬 저장소가 OS와 물리적으로 가까이 있으며, OS가 디스크를 직접 제어할 수 있기 때문에 가능합니다. 반대로 네트워크 환경에서는 OS가 파일 I/O를 직접 제어하지 못하고, 중간 계층(네트워크, 공유 프로토콜, 원격 장치)의 영향을 받기 때문에 처리 속도에서 큰 차이가 발생합니다.
로컬 디스크는 운영체제 커널이 직접 제어합니다.
파일 시스템, 캐시 관리, 블록 할당, 쓰기 버퍼 등이 커널 공간에서 동작하기 때문에 지연(latency)이 최소화됩니다.
반면 SMB 등 네트워크 파일 시스템은 유저 공간에서 네트워크를 통해 명령이 전달되므로 I/O가 느립니다.
로컬 디스크는 OS 또는 하드웨어 수준에서 쓰기 버퍼(write-back buffer), 읽기 캐시(read-ahead)를 활용합니다.
예시: Windows는 NTFS 파일 시스템을 통해 쓰기 캐시를 활성화하여 실제 디스크 쓰기 전에 메모리에 기록 → 고속 처리 가능.
반면, 네트워크 경로의 공유 폴더는 이러한 버퍼링을 제약받거나 아예 사용할 수 없음.
InfluxDB와 같은 DB는 고성능을 위해 mmap(memory-mapped file), direct I/O를 사용합니다.
이러한 기능은 로컬 디스크에서만 안정적으로 작동합니다.
네트워크 디스크는 이러한 low-level 기능을 지원하지 않거나, 일부만 제한적으로 지원하여 성능 저하 유발.
SATA, NVMe, USB 3.x 등은 5Gbps ~ 32Gbps까지의 대역폭을 제공합니다.
반면 100Mbps ~ 1Gbps 수준의 네트워크는 이미 프로토콜 오버헤드가 포함되어 실제 사용 대역폭이 더 적습니다.
특히 SMB는 파일 시스템 수준의 제어 정보를 주고받는 통신량까지 포함되므로 실효 속도는 더 떨어집니다.
로컬 디스크는 microseconds(μs) 단위의 응답속도.
네트워크 디스크는 milliseconds(ms) 단위의 왕복 시간이 필요 → 다수의 I/O 요청 시 지연 누적.
OS는 로컬 디스크에 대해 I/O 스케줄링, 동시 처리, 우선순위 조정 등을 내부적으로 제어합니다.
반면 네트워크 드라이브는 OS가 직접적으로 명령 큐를 제어하지 못하므로 이러한 최적화가 적용되지 않습니다.