pgtools: IDE для ежедневной работы с PostgreSQL
Автор pgtools рассказывает, зачем создал бесплатную настольную IDE, какие рабочие задачи она решает и какая обратная связь нужна проекту.
Читать материалРазбор планов выполнения запросов PostgreSQL и поиск узких мест.
Автор pgtools рассказывает, зачем создал бесплатную настольную IDE, какие рабочие задачи она решает и какая обратная связь нужна проекту.
Читать материалРазбираем, когда PostgreSQL не использует обычный индекс из-за функции в WHERE, как работает индекс по выражению, где помогает lower(email), date_trunc, JSONB-выражения и частичные индексы.
Читать материалПочему планировщик отказывается от параллелизма, какие операции должны быть parallel safe и как читать Gather в плане.
Читать материалКак исследовать планы UPDATE, DELETE и INSERT и почему EXPLAIN ANALYZE для изменяющих запросов требует особой осторожности.
Читать материалКак HashAggregate, GroupAggregate, Sort и Unique реализуют группировку и удаление дублей в PostgreSQL.
Читать материалКак Append показывает работу с партициями, почему нужен partition pruning и что происходит без фильтра по ключу партиционирования.
Читать материалРазница между временем до первой строки и полным временем запроса, цена построения хеша и роль work_mem при Hash Join.
Читать материалКак лексикографический порядок ключей определяет доступный префикс индекса, диапазонный поиск и поддержку ORDER BY.
Читать материалКак отличить навигацию по индексу от последующей фильтрации и переписать условия, чтобы составной индекс использовался эффективнее.
Читать материалЧто означают Recheck Cond, exact и lossy heap blocks и как нехватка work_mem влияет на Bitmap Heap Scan.
Читать материалКак Bitmap Index Scan и Bitmap Heap Scan объединяют точность индекса с последовательным чтением страниц таблицы.
Читать материалЧем отличаются способы анти-соединения в PostgreSQL и почему NULL превращает NOT IN в опасную логическую ловушку.
Читать материалКак CREATE STATISTICS помогает планировщику учитывать зависимости между столбцами, частые сочетания значений и выражения.
Читать материалКак PostgreSQL выбирает алгоритм соединения и почему Nested Loop, Hash Join и Merge Join хороши для разных объёмов и условий.
Читать материалПочему Index Only Scan всё равно обращается к таблице, как visibility map влияет на Heap Fetches и при чём здесь VACUUM.
Читать материалКак стоимость, статистика и корреляция данных помогают планировщику выбирать между последовательным и индексным сканированием.
Читать материалСравнение предварительной агрегации в CTE и коррелированного LATERAL JOIN для массовых и точечных запросов PostgreSQL.
Читать материалРазбор запроса, в котором несколько соединений размножают строки перед GROUP BY, и способов агрегировать данные до JOIN.
Читать материалЧетыре распространённые причины Seq Scan: маленькая таблица, выражение над столбцом, низкая селективность и неточная статистика.
Читать материалКак устроено дерево плана PostgreSQL, что означают startup cost и total cost и в каком порядке читать узлы выполнения.
Читать материалВведение в EXPLAIN, EXPLAIN ANALYZE и BUFFERS: чем отличаются планы и как безопасно начинать анализ запросов PostgreSQL.
Читать материал