DuckDB acelera las consultas remotas hasta 3,7 veces con I/O asíncrono
Asynchronous I/O in DuckDB: Work, Thread, Work
A partir de la v2.0, DuckDB soporta lecturas asíncronas de archivos Parquet y CSV, lo que permite saturar el ancho de banda en configuraciones de computación y almacenamiento separados, como EC2 y S3. En pruebas con TPC-H Query 6, el tiempo de ejecución bajó de 8,23 segundos a 2,84 segundos, y con ajustes adicionales, a 2,23 segundos. La implementación incluye un pool de hilos ASYNC, una cola de lectura anticipada y gestión de memoria para evitar problemas de OOM.
Si no podemos emitir suficientes solicitudes concurrentes para usar el ancho de banda de red disponible, el rendimiento puede sufrir drásticamente, con hilos pasando gran parte de su tiempo esperando lecturas remotas en lugar de procesar datos.