Aggregating billions of rows per second with SIMD
Blog post from QuestDB
QuestDB, an open-source time-series database designed for high-performance workloads, has significantly improved its query performance by integrating Single Instruction Multiple Data (SIMD) instructions in its version 4.2 release, achieving up to 100x faster aggregations. SIMD allows for parallel processing of data points using a single CPU instruction, enhancing the efficiency of operations such as summations and maximum calculations on large datasets. The performance gains were validated through benchmark tests comparing QuestDB's efficiency with Postgres, highlighting the impact of memory channels on scalability. QuestDB's SIMD integration is currently limited to non-keyed aggregation queries, but future updates aim to extend this capability to keyed aggregations and other SQL operations, promising further performance enhancements. The release also introduced numerous updates and fixes, including Java optimizations, metadata file format changes, and SQL parsing improvements, while maintaining its open-source nature to allow users to explore and contribute to its development.