Self-hosted EXPLAIN: наглядно и безопасно

С момента первой же хабрапубликации о возможностях нашего сервиса визуализации планов запросов PostgreSQL explain.tensor.ru (а было это уже больше 2 лет назад) пользователи задавали резонный вопрос: «Все у вас круто, но у нас в запр…

PostgreSQL Antipatterns: в этом плане кто-то лишний

Сегодня будет рассказ про избыточные группировки и сортировки в SQL-запросах — как они возникают, по каким признакам их можно потом вычислить и как избавиться от них. Читать далее…

«Импортозамещаем» анализ планов PostgreSQL

Вчера Hubert ‘depesz’ Lubaczewski закрыл доступ с российских IP ко всем своим сайтам, включая широко известный визуализатор планов PostgreSQL-запросов explain.depesz.com.Но это не беда, потому что в компании «Тензор» мы разработали сервис explain.tenso…

Реверс-инжинирим структуру БД PostgreSQL по плану запроса к ней

Большая часть оптимизаций запросов к базам PostgreSQL может выполняться «механически», следуя разного рода маркерам в плане выполнения запроса, которые подскажут, что и как можно ускорить. Но «глубинные» переработки алгоритма, вроде описанных в статье …

Анализируем «слона» вместе с коллегами

Если ваша жизнь DBA, сопровождающего PostgreSQL, наполнена вопросами «а почему так медленно?» и «как сделать, чтобы запрос не тормозил?», наш сервис анализа и визуализации планов запросов explain.tensor.ru сделает ее немного легче за счет привлече…

Чего «энтерпрайзу» в PostgreSQL не хватает

В конце прошлого года Иван Панченко предложил мне рассказать на внутреннем семинаре Postgres Pro, чего, по нашему опыту использования PostgreSQL в «кровавом энтерпрайзе» «Тензора», не хватает в этой СУБД.С докладом пока так и не сложилось, зато появила…

Читаем EXPLAIN на максималках

Многим, кто работает с MySQL, известно, что команда EXPLAIN используется для оптимизации запросов, получения информации об использованных и возможных индексах. Большинство разработчиков и администраторов СУБД этой информацией и ограничивается. Я же пре…