High-Performance DBMSs with iouring: When and How to use it
2025/12/04 by Matthias Jasny, Jasny, Matthias, Muhammad El-Hindi +7 · 19 voices
Computer Science · #Advanced Data Storage Technologies #Cloud Computing and Resource Management #Software System Performance and Reliability #cs.DB
paper · pdf · doi:10.48550/arxiv.2512.04859
openalex publication_date 2025/12/04 · openalex created_date 2025/12/06 · openalex updated_date 2026/07/28
Abstract
We study how modern database systems can leverage the Linux iouring interface for efficient, low-overhead I/O. iouring is an asynchronous system call batching interface that unifies storage and network operations, addressing limitations of existing Linux I/O interfaces. However, naively replacing traditional I/O interfaces with iouring does not necessarily yield performance benefits. To demonstrate when iouring delivers the greatest benefits and how to use it effectively in modern database systems, we evaluate it in two use cases: Integrating iouring into a storage-bound buffer manager and using it for high-throughput data shuffling in network-bound analytical workloads. We further analyze how advanced iouring features, such as registered buffers and passthrough I/O, affect end-to-end performance. Our study shows when low-level optimizations translate into tangible system-wide gains and how architectural choices influence these benefits. Building on these insights, we derive practical guidelines for designing I/O-intensive systems using iouring and validate their effectiveness in a case study of PostgreSQL's recent iouring integration, where applying our guidelines yields a performance improvement of 14%.
Discussions
- High-Performance DBMSs with io_uring: When and How to use it [hn, 194 points, 49 comments]
- High-Performance DBMSs with io_uring: When and How to use it [lobsters, 15 points, 4 comments]
- High-Performance DBMSs with io_uring: When and How to use it [hn, 9 points, 0 comments]
- TLDR: io_uring won't help much if treated as a drop-in replacement for existing database I/O architectures. Better performance will often require architectural changes. When applied, there's tons of p [bsky, 3 points, 0 comments]
- How modern database systems can leverage the Linux io_uring interface for efficient, low-overhead I/O arxiv.org/pdf/2512.048... [bsky, 3 points, 0 comments]
- High-Performance DBMSs with io_uring: When and How to use it https://arxiv.org/abs/2512.04859 https://news.ycombinator.com/item?id=46517319 [bsky, 1 points, 0 comments]
- https://arxiv.org/abs/2512.04859 Linux io_uringインターフェースを活用した高性能DBMSの研究。 io_uringをストレージバウンドなバッファマネージャに統合する事例を評価。 PostgreSQLのio_uring統合事例では、ガイドライン適用により14%の性能改善。 [bsky, 1 points, 0 comments]
- High-Performance DBMSs with io_uring: When and How to use it https://arxiv.org/abs/2512.04859 [comments] [67 points] [bsky, 0 points, 0 comments]
- High-Performance DBMSs with io_uring: When and How to use it https://lobste.rs/s/b0sfwb #databases #performance [bsky, 0 points, 0 comments]
- High-Performance DBMSs with io_uring: When and How to use it [bsky, 0 points, 0 comments]
- High-Performance DBMSs with io_uring: When and How to use it https://arxiv.org/abs/2512.04859 [bsky, 0 points, 0 comments]
- ⚡ Hackernews Top story: High-Performance DBMSs with io_uring: When and How to use it [bsky, 0 points, 0 comments]
- High-Performance DBMSs with io_uring: When and How to use it https://arxiv.org/abs/2512.04859 (https://news.ycombinator.com/item?id=46517319) [bsky, 0 points, 0 comments]
- https://bsky.app/profile/buzzing.cc.web.brid.gy/post/3mbspf3b3jnu2 [bsky, 0 points, 0 comments]
- High-Performance DBMSs with io_uring: When and How to use it https:// arxiv.org/abs/2512.04859 # arxiv [mastodon, 0 points, 0 comments]
- High-Performance DBMSs with io_uring: When and How to use it https://arxiv.org/abs/2512.04859 (https://news.ycombinator.com/item?id=46517319) [bsky, 0 points, 0 comments]
- High-Performance DBMSs with io_uring: When and How to use it #HackerNews https://arxiv.org/abs/2512.04859 [bsky, 0 points, 0 comments]
- High-Performance DBMSs with io_uring: When and How to use it [bsky, 0 points, 0 comments]
- High-Performance DBMSs with io_uring: When and How to use it https://arxiv.org/abs/2512.04859 [bsky, 0 points, 0 comments]
Related