io_uring 在 Oracle 数据库中的应用:生产规模下的混合存储 I/O 架构
io_uring in Oracle Database: A Hybrid Storage I/O Architecture at Production Scale
浏览论文内容
中文总结 AI 辅助
本文介绍 Oracle 数据库集成 io_uring 的混合存储 I/O 架构,通过每进程环形上下文和回退机制,在异步批处理 I/O 上降低 CPU 消耗并提升吞吐量,同时保留同步路径的 pread/pwrite。
中文摘要 AI 辅助
我们描述了将 io_uring 集成到 Oracle 数据库存储层的过程,以及为在生产环境的多进程关系型数据库管理系统(RDBMS)中部署它所需做出的架构决策。我们的设计采用每进程环形上下文(ring context)以消除进程间同步,一种现已纳入 Linux 内核主线版本的共享缓冲区注册机制,以及在出错时透明回退到 libaio 的方案。在 Oracle 数据库 26ai 的内部开发版本上进行的评估显示,io_uring 的优势集中在异步批处理 I/O 路径上:在混合 OLTP 工作负载(TPC-C)中,io_uring 在保持相同吞吐量的同时,通过更高效的后台写入将服务器 CPU 利用率降低了 1.2 个百分点;在分析型查询(TPC-H)中,每次查询的 CPU 消耗(几何平均值)下降了 8.5%。单独隔离写入路径时,每次写入的 CPU 消耗降低了 29%,吞吐量提高了 34%。同步读取路径——OLTP 中的主要 I/O 类型——未显示出改进,且在非常大的 I/O 大小下 CPU 使用率甚至有所增加。这些结果促使我们采用一种混合 I/O 架构:对同步操作保留 pread/pwrite,对异步批处理 I/O 采用 io_uring,并透明回退到 libaio——这一选择性策略可能也对面临相同集成问题的其他数据库系统具有参考价值。
英文摘要
We describe the integration of io_uring into Oracle Database's storage layer and the architectural decisions required to deploy it in a production multi-process RDBMS. Our design uses per-process ring contexts that eliminate inter-process synchronization, a shared buffer registration mechanism now part of the mainline Linux kernel, and a transparent fallback to libaio on error. Evaluation on an internal development build of Oracle Database 26ai shows that io_uring's benefits concentrate on asynchronous batched I/O paths: on a mixed OLTP workload (TPC-C), io_uring delivers identical throughput while reducing server CPU utilization by 1.2 percentage points through more efficient background writes; on analytical queries (TPC-H), CPU per query drops by 8.5% (geometric mean). Isolating the write path alone shows 29% lower CPU per write and 34% higher throughput. Synchronous read paths -- the dominant I/O in OLTP -- show no improvement and even increased CPU usage for very large I/O sizes. These results motivate a hybrid I/O architecture that retains pread/pwrite for synchronous operations, adopts io_uring for asynchronous batched I/O, and falls back transparently to libaio -- a selective strategy that may also be relevant to other database systems facing the same integration question.
发表机构
- Oracle America Inc.(甲骨文美国公司)
机构由 AI 辅助整理,请以论文原文为准。