E3-Rewrite: Learning to Rewrite SQL for Executability, Equivalence,and Efficiency
2508.09023v1
cs.DB, cs.AI, cs.CL
2025-08-14
Авторы:
Dongjie Xu, Yue Cui, Weijie Shi, Qingzhi Ma, Hanghui Guo, Jiaming Li, Yao Zhao, Ruiyuan Zhang, Shimin Di, Jia Zhu, Kai Zheng, Jiajie Xu
Резюме на русском
## Контекст
Одна из основных задач в обработке запросов к базам данных (SQL) является SQL query rewriting. Эта задача состоит в том, чтобы переписать запрос в более эффективную форму, сохраняя при этом его корректность и семантику. Данная проблема важна для оптимизации выполнения запросов, уменьшения использования ресурсов и повышения производительности. Несмотря на прогрессы в этой области, существующие подходы, основанные на предварительно определенных правилах, сталкиваются с рядом ограничений: они не могут генерировать нестандартные решения для неожиданных запросов и часто не справляются с сложными конструкциями. Исследовательская группа предлагает использовать **BERT** для SQL query rewriting, так как этот подход может улучшить применимость и универсальность решений.
## Метод
Предложенная модель **E3-Rewrite** — это рамка для SQL query rewriting, основанная на глубоком обучении и работающая в трех ключевых аспектах: executability, equivalence и efficiency. Основные компоненты этой модели:
1. **Context Construction Module**: Этот модуль построение контекста для rewriting с использованием исполнения планов запросов и демонстраций. Он формирует "bottleneck-aware prompts", которые указывают модели на основную сложность запроса, помогая генерировать более эффективные решения.
2. **Reinforcement Learning Framework**: Здесь применяется улучшенный рейтинг-функционал, который включает в себя:
- **Executability**: Убеждение в том, что результат корректно выполняется.
- **Equivalence**: Удостоверение о том, что результат эквивалентен исходному запросу.
- **Efficiency**: Оптимизация времени выполнения.
3. **Staged Curriculum Learning**: Эта стратегия позволяет модели сосредоточиться вначале на executability и equivalence, а затем, постепенно, включать в процесс оптимизацию efficiency.
## Результаты
В ходе экспериментов, проведенных на нескольких SQL-бенчмарках, **E3-Rewrite** показала следующие результаты:
- **Execution Time**: Уменьшение времени выполнения на 25.6% по сравнению с текущими лучшими методами.
- **Rewriting Success Rate**: Увеличение успешных результатов до 24.4%, что обеспечило обработку более сложных запросов, недоступных для предыдущих методов.
- **Equivalence and Execução**: Эти показатели также повысились в сравнении с современными подходами.
## Значимость
**E3-Rewrite** может использоваться в различных областях, таких как data engineering, business intelligence, и другие сферы, где SQL-запросы являются ключевым инструментом. Основные преимущества:
- Улучшение производительности запросов за счет лучшей эффективности и корректности.
- Расширение возможностей для обработки сложных запросов, которые ранее не удавалось решить.
- Влияние на рынок, позволяя разработчикам использовать более профессиональные инструменты для работы с базами данных.
## Выводы
**E3-Rewrite** доказала свою эффективность в области SQL query rewriting
Abstract
SQL query rewriting aims to reformulate a query into a more efficient form
while preserving equivalence. Most existing methods rely on predefined rewrite
rules. However, such rule-based approaches face fundamental limitations: (1)
fixed rule sets generalize poorly to novel query patterns and struggle with
complex queries; (2) a wide range of effective rewriting strategies cannot be
fully captured by declarative rules. To overcome these issues, we propose using
large language models (LLMs) to generate rewrites. LLMs can capture complex
strategies, such as evaluation reordering and CTE rewriting. Despite this
potential, directly applying LLMs often results in suboptimal or non-equivalent
rewrites due to a lack of execution awareness and semantic grounding. To
address these challenges, We present E3-Rewrite, an LLM-based SQL rewriting
framework that produces executable, equivalent, and efficient queries. It
integrates two core components: a context construction module and a
reinforcement learning framework. First, the context module leverages execution
plans and retrieved demonstrations to build bottleneck-aware prompts that guide
inference-time rewriting. Second, we design a reward function targeting
executability, equivalence, and efficiency, evaluated via syntax checks,
equivalence verification, and cost estimation. Third, to ensure stable
multi-objective learning, we adopt a staged curriculum that first emphasizes
executability and equivalence, then gradually incorporates efficiency.
Extensive experiments show that E3-Rewrite achieves up to a 25.6\% reduction in
query execution time compared to state-of-the-art methods across multiple SQL
benchmarks. Moreover, it delivers up to 24.4\% more successful rewrites,
expanding coverage to complex queries that previous systems failed to handle.
Ссылки и действия
Дополнительные ресурсы: