PARALLEL DATA LAB 

PDL Abstract

BPF-DB: A Kernel-Embedded Transactional Database Management System For eBPF Applications

Proc. ACM Manag. Data, Vol. 3, No. 3 (SIGMOD), Article 135. Publication date: June 2025..

Matthew Butrovich, Samuel Arch, Wan Shen Lim, William Zhang, Jignesh M. Patel, Andrew Pavlo

Carnegie Mellon University

http://www.pdl.cmu.edu/

Developers rely on the eBPF framework to augment operating system (OS) behavior for the betterment of database management system (DBMS) without having to modify kernel code. But eBPF’s verifier limits program complexity and data management functionality. As a result eBPF’s storage options are limited to kernel-resident, non-durable data structures that lack transactional guarantees.

Inspired by embedded DBMSs for user-space applications, this paper present BPF-DB, an OS-embedded DBMS that offers transactional data management for eBPF applications. We explore the storage management and concurrency control challenges associated with DBMS design in eBPF’s restrictive execution environment. We demonstrate BPF-DB’s capabilities with two applications based on real-world systems. The first is a Redis-compatible in-memory DBMS that uses BPF-DB as its transactional storage engine. This system matches the performance of state-of-the-art implementations while offering stronger transactional guarantees. The second application implements a stored procedure-based DBMS that provides serializable multi-statement transactions. We compare this application against VoltDB, with BPF-DB achieving 43% higher throughput. BPF-DB’s robust and high-performance transactional semantics enable emerging kernel-space applications.

KEYWORDS: Data management systems, eBPF, embedded databases, operating system extensibility

FULL PAPER: pdf