Forwarded from NOP::Nuances of Programming
Опишем все службы, настроим и сконфигурируем каждый компонент, обозначив их роли и особенности. Конфигурации снабдим пояснениями, выделив преимущества и недостатки.
https://nsprg.ru/mwYoav
VK: https://nsprg.ru/vL5l2O
@nuancesprog #Docker #PostgreSQL #MongoDB #Kafka #Debezium
https://nsprg.ru/mwYoav
VK: https://nsprg.ru/vL5l2O
@nuancesprog #Docker #PostgreSQL #MongoDB #Kafka #Debezium
Forwarded from SQL и Анализ данных
⚡️ QueryTuner - open-source инструмент, который разбирает SQL-запрос и показывает, почему он может тормозить.
Подключаться к базе вообще не обязательно. Можно просто вставить SQL и получить диагностику.
Поддерживаются сразу 5 диалектов:
- PostgreSQL
- MySQL
- Oracle
- SQL Server
- SQLite
Внутри два уровня анализа.
1. Детерминированный heuristic engine
Он мгновенно ищет типичные anti-patterns:
-
- функции внутри
- leading wildcard в
- потенциально отсутствующие индексы
-
- другие проблемы производительности
Сейчас заявлено 12 правил, и для них не нужны ни LLM, ни внешний API.
2. Опциональный AI-слой
Можно подключить Qwen через Hugging Face или OpenAI. Тогда QueryTuner умеет:
- объяснять проблему человеческим языком;
- переписывать запрос;
- предлагать
- объяснять, зачем конкретный индекс нужен.
Особенно интересно, что можно передать ещё и
Например, для такого запроса:
Хороший проект для тех случаев, когда SQL уже работает, но хочется понять, почему через полгода он начнёт работать плохо.
#SQL #PostgreSQL #Database #OpenSource #DataEngineering
https://github.com/AutoShiftOps/querytuner
Подключаться к базе вообще не обязательно. Можно просто вставить SQL и получить диагностику.
Поддерживаются сразу 5 диалектов:
- PostgreSQL
- MySQL
- Oracle
- SQL Server
- SQLite
Внутри два уровня анализа.
1. Детерминированный heuristic engine
Он мгновенно ищет типичные anti-patterns:
-
SELECT *- функции внутри
WHERE- leading wildcard в
LIKE- потенциально отсутствующие индексы
-
ORDER BY без ограничения результата- другие проблемы производительности
Сейчас заявлено 12 правил, и для них не нужны ни LLM, ни внешний API.
2. Опциональный AI-слой
Можно подключить Qwen через Hugging Face или OpenAI. Тогда QueryTuner умеет:
- объяснять проблему человеческим языком;
- переписывать запрос;
- предлагать
CREATE INDEX;- объяснять, зачем конкретный индекс нужен.
Особенно интересно, что можно передать ещё и
CREATE TABLE DDL. Тогда рекомендации становятся schema-aware: инструмент видит реальные таблицы, колонки и существующие индексы. Например, для такого запроса:
SELECT *
FROM orders
WHERE YEAR(created_at) = 2026;
Хороший проект для тех случаев, когда SQL уже работает, но хочется понять, почему через полгода он начнёт работать плохо.
#SQL #PostgreSQL #Database #OpenSource #DataEngineering
https://github.com/AutoShiftOps/querytuner