DuckDB v2.0의 비동기 I/O: S3 위에서 CSV 읽기가 19배 빨라진 방법

DuckDB가 가을 출시 예정인 v2.0에 비동기 I/O를 넣습니다. 연산 워커와 별도로 블로킹 I/O 전담 스레드 풀을 두고 read-ahead로 요청을 미리 채우는 구조입니다. S3에서 Parquet 읽기 8.2초가 2.8초로, CSV 878초가 45초로 줄었습니다. PostgreSQL 18의 async I/O와 같은 문제를 다른 방식으로 푼 사례라 나란히 놓고 볼 만합니다.

2026년 8월 1일

PostgreSQL 18의 비동기 I/O, io_uring과 17년 만의 합류

PostgreSQL이 process-per-connection 모델을 지킨 채 처음으로 비동기 I/O를 도입했습니다. sync, worker, io_uring 세 모드의 구조와 트레이드오프, 그리고 cold scan에서 io_uring이 PostgreSQL 17보다 2.7배 빨라진 이유를 살펴봅니다.

2026년 4월 30일