Новый функционал Dasha 1.8 дашборда PostgreSQL: рекомендации по индексам, ввод-вывод, анализ логов
d_bulashev 22 минуты назад Новый функционал Dasha 1.8 дашборда PostgreSQL: рекомендации по индексам, ввод-вывод, анализ логов Простой 4 мин 712 PostgreSQL * Обзор Рекомендации по индексамПанель на странице индексов...
<5 — 2026'da uzaya kaç SpaceX Starship fırlatması ulaşacak?
В сфере искусственного интеллекта произошло заметное событие. d_bulashev 22 минуты назад Новый функционал Dasha 1. 8 дашборда PostgreSQL: рекомендации по индексам, ввод-вывод, анализ логов Простой 4 мин 712 PostgreSQL * Обзор Рекомендации по индексамПанель на странице индексов разбирает запросы из pg_stat_statements со всех хостов кластера парсером PostgreSQL и предлагает недостающие btree-индексы. Для каждого кандидата выводятся колонки и порядок ключа, текст запроса CREATE INDEX, список покрываемых запросов и их доля в общем времени выполнения.
Показаны счётчики INSERT, UPDATE и DELETE по таблице. Для партиционированной таблицы формируется скрипт с ON ONLY, CONCURRENTLY и ATTACH PARTITION. Индекс - “Кандидат” не предлагается, если существующий индекс уже его покрывает.
Технические детали
Условие IS NULL по колонке с редкими NULL уходит в предикат частичного индекса, а не в ключ. Предупреждений три: те же колонки уже есть в другом индексе, на таблице уже десяток индексов, запись в таблицу идёт заметно чаще чтения. Рекомендация эвристическая, DDL не выполняется.
В дальнейшем планирую добавить разбор запросов, которые есть в логах, а не только в pg_stat_statements. Рекомендации можно подкрепить планами auto_explain из логов кластера. У кандидата выводятся число планов за последний час с Seq Scan, время этих узлов и число строк, отброшенных фильтром.
Если планировщик ошибся в оценке числа строк таблицы, появляется предупреждение: сначала ANALYZE, потом CREATE INDEX. Ввод-выводСтраница “I/O” на основе pg_stat_io. Ввод-вывод сервера разложен по типу процесса, объекту и контексту (normal, vacuum, bulkread, bulkwrite).
Отраслевые последствия
На PostgreSQL 18 в график и детализацию попадает и журнал предзаписи. Показывается эффективность shared_buffers, утилизация от процессов автоочистки и массовых операций. История строится по снимкам pg_stat_io (настраивается интервал сбора, хранится в своей базке), Есть Live режим, можно без снимков и своей базы смотреть дельты pg_stat_io.
Графики показывают счётчики или время. Для времени нужно включить track_io_timing, track_wal_io_timing. Проверки схемыСтраница проверок схемы собирает дефекты структуры, которые не видны, пока не приведут к аварии.
Проверок пока семнадцать, будут добавляться. Среди них последовательность на грани исчерпания, таблица без первичного/уникального ключа, UNLOGGED-таблица или последовательность, схема, в которой PUBLIC может создавать объекты (CVE-2018-1058), UUID в varchar, таблицы без колонок, имя объекта, совпадающее с зарезервированным словом или требующее кавычек. В отчёт входят и находки со страниц индексов и внешних ключей: невалидные ограничения, несовпадение типов во внешних ключах, nullable-ключи, похожие ключи и индексы, B-tree по массивам.
Этот прогресс даёт важные сигналы о будущем отрасли, и технологический мир внимательно наблюдает.






