TGViewer
LEFT JOIN LEFT JOIN @leftjoin · 41.9K subscribers
Post #1817 6.83K
От запроса до результата: как работает SQL-движок
SQL-движок — это логический уровень между пользователем и данными в базе, который отвечает за обработку запроса и формирование результата. Но как он это делает?

Один из авторов проекта Dolt (как его описывают сами разработчики — БД, которая работает, как репозиторий на GitHub) написал целую статью про опыт работы с их движком go-mysql-server. Хотя акцент именно на этот движок, он также рассказывает про разные подходы и принципы работы SQL-движков в целом.

Если кратко:
🔵Выполнение запроса можно разделить на 7 шагов — парсинг, привязка к данным в БД, упрощение плана выполнения, оптимизация порядка выполнения джойнов, оценка эффективности плана, выполнение, вывод результатов.
🔵Сначала движок проверяет корректность запроса. Он формирует абстрактное синтаксическое дерево на этапе парсинга, а затем сопоставляет его с данными в базе.
🔵Если запрос был составлен правильно, то движок начинает формировать оптимальный план работы — наиболее быстрый и требующий минимально необходимое количество ресурсов, с учетом всех функций, джойнов и агрегаций. Для этого он старается как можно скорее «отбросить» все строки и колонки, которые не нужны в запросе, а также просчитывает разные варианты выполнения и выбирает самый быстрый.
🔵В конце концов, движок конвертирует выбранный план в исполняемый формат и выдает юзеру долгожданный результат.

Автор каждый пункт разбирает подробно — как движок парсит запрос, с какими сущностями в БД сопоставляет на стадии привязки и как подбирает оптимальный способ выполнения запроса, еще и с картинками. В общем, почитать любопытно, даже если с Dolt работать не планируете.
  • 🔥 14
  • 👍 7
  • ⚡ 3
  • ❤ 2
More from @leftjoin
  1. Sep 28, 2026В одной ячейке Excel можно будет хранить массивы значений Наконец-то важные новости и не п…
  2. Sep 25, 2026Новый ИИ-бенчмарк подвезли Тем, как ИИ пишет код, взламывает сайты или решает математическ…
  3. Sep 23, 2026Как грамотно делегировать задачи ИИ Внедрение искусственного интеллекта и агентов в работу…
  4. Sep 18, 2026Что делать с тепловыми картами и хороплетами? Все виды графиков и чартов по-своему хороши…
  5. Sep 16, 20263D-карты СУБД Отвлечемся от новостей про ИИ и скандалов вокруг OpenAI и посмотрим, что вну…
  6. Sep 14, 2026Решение математических проблем это не просто бенчмарк На прошлой неделе разгорелся серьезн…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →