Teach Your DBMS to LIKE Strings: Fast and General Pattern Matching for Wildcard Joins and Filters

📅 2026-08-24
📈 Citations: 0
Influential: 0
📄 PDF
🤖 AI Summary
论文提出基于Aho-Corasick算法的新连接算法和利用代码生成基础设施优化LIKE谓词,以解决数据库管理系统中通配符操作效率低下的问题。
📝 Abstract
Nowadays, modern applications do more than just store text -- they need to derive meaningful insights from it. To do that, they usually rely on wildcard queries with LIKE predicate to extract patterns. However, modern database management systems (DBMSs) handle these wildcard operations poorly, resorting to nested loops for joins and expensive interpreted evaluation for filters. To address the former, we propose a new join algorithm based on the Aho-Corasick algorithm, which significantly reduces the time complexity. For wildcard filtering, we leverage the code-generation infrastructure to improve performance: we generate specialized code for the LIKE predicate, eliminating the overhead of interpreting the pattern per tuple. Our experimental results show that the new wildcard join algorithm significantly outperforms both baseline DuckDB and Umbra, achieving speedups of up to 30.6x and 114.75x, respectively. The new wildcard filter approach likewise outperforms both baselines, achieving a speedup of 13.3x in a filter-focused stress benchmark. We believe these two techniques will play key roles for high-performance text analytics in modern query engines.
Problem

Research questions and friction points this paper is trying to address.

wildcard queries
LIKE predicate
database management systems
pattern matching
Innovation

Methods, ideas, or system contributions that make the work stand out.

Aho-Corasick algorithm
code-generation
LIKE predicate
wildcard join
filter performance