# Neo: A Learned Query Optimizer

**Authors:** Ryan Marcus, Parimarjan Negi, Hongzi Mao, Chi Zhang, Mohammad, Alizadeh, Tim Kraska, Olga Papaemmanouil, Nesime Tatbul

arXiv: 1904.03711 · 2020-04-09

## TL;DR

Neo is a machine learning-based query optimizer that learns from existing optimizers and incoming queries, adapting to data patterns and potentially outperforming traditional optimizers.

## Contribution

Introduces Neo, a neural network-based query optimizer that bootstraps from existing systems and improves through continuous learning from query execution feedback.

## Key findings

- Neo achieves performance comparable to state-of-the-art optimizers.
- Neo can surpass traditional optimizers in certain scenarios.
- Neo adapts to data patterns and reduces reliance on manual tuning.

## Abstract

Query optimization is one of the most challenging problems in database systems. Despite the progress made over the past decades, query optimizers remain extremely complex components that require a great deal of hand-tuning for specific workloads and datasets. Motivated by this shortcoming and inspired by recent advances in applying machine learning to data management challenges, we introduce Neo (Neural Optimizer), a novel learning-based query optimizer that relies on deep neural networks to generate query executions plans. Neo bootstraps its query optimization model from existing optimizers and continues to learn from incoming queries, building upon its successes and learning from its failures. Furthermore, Neo naturally adapts to underlying data patterns and is robust to estimation errors. Experimental results demonstrate that Neo, even when bootstrapped from a simple optimizer like PostgreSQL, can learn a model that offers similar performance to state-of-the-art commercial optimizers, and in some cases even surpass them.

## Full text

_Full body text omitted from this summary view._ Fetch the complete paper as Markdown: https://tomesphere.com/paper/1904.03711/full.md

## Figures

23 figures with captions in the complete paper: https://tomesphere.com/paper/1904.03711/full.md

## References

64 references — full list in the complete paper: https://tomesphere.com/paper/1904.03711/full.md

---
Source: https://tomesphere.com/paper/1904.03711