home.social

#план_запроса — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #план_запроса, aggregated by home.social.

  1. Ускорение запросов в PostgreSQL: три рычага оптимизации и практический разбор

    В предыдущих частях серии мы разобрали, как читать планы выполнения через EXPLAIN ANALYZE , и научились автоматически ловить медленные запросы с помощью pg_stat_statements, auto_explain и log_min_duration_statement. Теперь — следующий шаг: что делать с проблемами, которые вы нашли. В этой части разбираем три рычага оптимизации: статистику планировщика, индексы и рефакторинг SQL-запросов. На демонстрационном примере покажем, как снизить стоимость запроса почти вдвое — без изменений в инфраструктуре. Оборудование, конфигурация сервера и схема БД тоже влияют на производительность, но остаются за рамками статьи — здесь сосредоточимся на том, что можно улучшить на уровне запросов.

    habr.com/ru/companies/first/ar

    #оптимизация #базы_данных #postgresql #оптимизация_запросов #план_запроса

  2. Ускорение запросов в PostgreSQL: три рычага оптимизации и практический разбор

    В предыдущих частях серии мы разобрали, как читать планы выполнения через EXPLAIN ANALYZE , и научились автоматически ловить медленные запросы с помощью pg_stat_statements, auto_explain и log_min_duration_statement. Теперь — следующий шаг: что делать с проблемами, которые вы нашли. В этой части разбираем три рычага оптимизации: статистику планировщика, индексы и рефакторинг SQL-запросов. На демонстрационном примере покажем, как снизить стоимость запроса почти вдвое — без изменений в инфраструктуре. Оборудование, конфигурация сервера и схема БД тоже влияют на производительность, но остаются за рамками статьи — здесь сосредоточимся на том, что можно улучшить на уровне запросов.

    habr.com/ru/companies/first/ar

    #оптимизация #базы_данных #postgresql #оптимизация_запросов #план_запроса

  3. Ускорение запросов в PostgreSQL: три рычага оптимизации и практический разбор

    В предыдущих частях серии мы разобрали, как читать планы выполнения через EXPLAIN ANALYZE , и научились автоматически ловить медленные запросы с помощью pg_stat_statements, auto_explain и log_min_duration_statement. Теперь — следующий шаг: что делать с проблемами, которые вы нашли. В этой части разбираем три рычага оптимизации: статистику планировщика, индексы и рефакторинг SQL-запросов. На демонстрационном примере покажем, как снизить стоимость запроса почти вдвое — без изменений в инфраструктуре. Оборудование, конфигурация сервера и схема БД тоже влияют на производительность, но остаются за рамками статьи — здесь сосредоточимся на том, что можно улучшить на уровне запросов.

    habr.com/ru/companies/first/ar

    #оптимизация #базы_данных #postgresql #оптимизация_запросов #план_запроса

  4. Ускорение запросов в PostgreSQL: три рычага оптимизации и практический разбор

    В предыдущих частях серии мы разобрали, как читать планы выполнения через EXPLAIN ANALYZE , и научились автоматически ловить медленные запросы с помощью pg_stat_statements, auto_explain и log_min_duration_statement. Теперь — следующий шаг: что делать с проблемами, которые вы нашли. В этой части разбираем три рычага оптимизации: статистику планировщика, индексы и рефакторинг SQL-запросов. На демонстрационном примере покажем, как снизить стоимость запроса почти вдвое — без изменений в инфраструктуре. Оборудование, конфигурация сервера и схема БД тоже влияют на производительность, но остаются за рамками статьи — здесь сосредоточимся на том, что можно улучшить на уровне запросов.

    habr.com/ru/companies/first/ar

    #оптимизация #базы_данных #postgresql #оптимизация_запросов #план_запроса

  5. Как найти медленный запрос в PostgreSQL: три инструмента мониторинга

    EXPLAIN ANALYZE отлично справляется с диагностикой конкретного запроса — но только если вы уже знаете, какой именно запрос виновен. На практике проблемный запрос нужно сначала найти среди тысяч других. Ждать жалоб пользователей или вручную мониторить дашборды — путь, который не масштабируется. В этой статье разберём три инструмента PostgreSQL для автоматического поиска медленных запросов: pg_stat_statements, auto_explain и log_min_duration_statement. Для каждого — настройка, ключевые параметры и когда что использовать.

    habr.com/ru/companies/first/ar

    #оптимизация #базы_данных #postgresql #оптимизация_запросов #план_запроса

  6. Как найти медленный запрос в PostgreSQL: три инструмента мониторинга

    EXPLAIN ANALYZE отлично справляется с диагностикой конкретного запроса — но только если вы уже знаете, какой именно запрос виновен. На практике проблемный запрос нужно сначала найти среди тысяч других. Ждать жалоб пользователей или вручную мониторить дашборды — путь, который не масштабируется. В этой статье разберём три инструмента PostgreSQL для автоматического поиска медленных запросов: pg_stat_statements, auto_explain и log_min_duration_statement. Для каждого — настройка, ключевые параметры и когда что использовать.

    habr.com/ru/companies/first/ar

    #оптимизация #базы_данных #postgresql #оптимизация_запросов #план_запроса

  7. Как найти медленный запрос в PostgreSQL: три инструмента мониторинга

    EXPLAIN ANALYZE отлично справляется с диагностикой конкретного запроса — но только если вы уже знаете, какой именно запрос виновен. На практике проблемный запрос нужно сначала найти среди тысяч других. Ждать жалоб пользователей или вручную мониторить дашборды — путь, который не масштабируется. В этой статье разберём три инструмента PostgreSQL для автоматического поиска медленных запросов: pg_stat_statements, auto_explain и log_min_duration_statement. Для каждого — настройка, ключевые параметры и когда что использовать.

    habr.com/ru/companies/first/ar

    #оптимизация #базы_данных #postgresql #оптимизация_запросов #план_запроса

  8. Как найти медленный запрос в PostgreSQL: три инструмента мониторинга

    EXPLAIN ANALYZE отлично справляется с диагностикой конкретного запроса — но только если вы уже знаете, какой именно запрос виновен. На практике проблемный запрос нужно сначала найти среди тысяч других. Ждать жалоб пользователей или вручную мониторить дашборды — путь, который не масштабируется. В этой статье разберём три инструмента PostgreSQL для автоматического поиска медленных запросов: pg_stat_statements, auto_explain и log_min_duration_statement. Для каждого — настройка, ключевые параметры и когда что использовать.

    habr.com/ru/companies/first/ar

    #оптимизация #базы_данных #postgresql #оптимизация_запросов #план_запроса

  9. Курс «PostgreSQL для начинающих»: #4 — Анализ запросов (ч.1 — как и зачем читать планы)

    Продолжаю публикацию расширенных транскриптов лекционного курса "PostgreSQL для начинающих" , подготовленного мной в рамках "Школы backend-разработчика" в "Тензоре" . В этой лекции мы узнаем, что такое план выполнения запроса, как и зачем его читать (и почему это совсем непросто), и о каких проблемах с производительностью базы он может сигнализировать. Разберем, что такое Seq Scan , Bitmap Heap Scan , Index Scan и почему Index Only Scan бывает нехорош, чем отличается Materialize от Memoize , а Gather Merge от "просто" Gather . Как обычно, для предпочитающих смотреть и слушать, а не читать - доступна видеозапись ( часть 1 , часть 2 ).

    habr.com/ru/companies/tensor/a

    #postgresql #sql #тензор #школа_backend #explain #план_запроса #buffers #i/o_timings

  10. Spark. План запросов на примерах

    Всем привет! В этой статье возьмем за основу пару таблиц и пройдемся по планам запросов по нарастающей: от обычного селекта до джойнов, оконок и репартиционирования. Посмотрим, чем отличаются виды планов друг от друга, что в них изменяется от запроса к запросу и разберем каждую строчку на примере партиционированной и непартиционированной таблицы.

    habr.com/ru/articles/807421/

    #apache_spark #pyspark #sql #python #bigdata #data_engineering #explain #execution_plan #план_запроса #dataframe

  11. Когда JOIN тянет ко дну: как одно изменение ускорило запрос в 75 раз

    TL;DR Иногда «убить» самый тяжёлый JOIN — проще, чем кажется. Достаточно вынести агрегат в коррелированный под-запрос и дать движку опереться на индекс.

    habr.com/ru/articles/927390/

    #postgresql #postgresql_performance #оптимизация #план_запроса

  12. Курс «PostgreSQL для начинающих»: #4 — Анализ запросов (ч.2 — узлы получения данных)

    Продолжаю публикацию расширенных транскриптов лекционного курса "PostgreSQL для начинающих" , подготовленного мной в рамках "Школы backend-разработчика" в "Тензоре" . В первой части лекции мы узнали, что такое план выполнения запроса, как и зачем его читать (и почему это совсем непросто), и о каких проблемах с производительностью базы он может сигнализировать. В этой - разберем, что такое Seq Scan , Bitmap Heap Scan , Index Scan и почему Index Only Scan бывает нехорош. Как обычно, для предпочитающих смотреть и слушать, а не читать - доступна видеозапись ( часть 1 , часть 2 ) и слайды .

    habr.com/ru/companies/tensor/a

    #postgresql #sql #тензор #школа_backend #explain #план_запроса #seq_scan #index_scan #bitmap_scan

  13. Оптимизация JOIN в PostgreSQL

    Хотите ускорить работу сложных SQL-запросов в PostgreSQL? 🚀В этой статье мы разберем, как правильно использовать JOIN, какие методы соединения выбирает PostgreSQL и как их оптимизировать. Узнайте, как индексы, статистика и параметры конфигурации влияют на производительность! 🔥

    habr.com/ru/articles/883916/

    #join #оптимизация_запросов #индексы #dba #оптимизация #план_запроса #производительность #sql_tips_and_tricks #запросы_sql #postgresql_performance

  14. Оптимизируем Shuffle в Spark

    Привет, Хабр! Меня зовут Сергей Смирнов, я аналитик в продукте CVM в X5 Tech. Я занимаюсь разработкой инструмента анализа A/B экспериментов. Мы ежедневно считаем десятки метрик для сотен экспериментов на десятки миллионов клиентов –- это терабайты данных, поэтому наш инструмент разработан на Spark. В последнее время мы заметили, что существенную часть времени работы наших Spark-приложений занимает обмен данными (Shuffle) между исполнителями. В этой статье я расскажу о том, какие оптимизации помогли нам избавиться от самых тяжёлых операций Shuffle. Речь пойдёт не только о BroadcastJoin , но и о двух других неочевидных методах – предварительное репартицирование и бакетирование .

    habr.com/ru/companies/X5Tech/a

    #spark #план_запроса #data_analysis #data_engineering #pyspark #shuffle #партицирование_в_spark #бакетирование_в_spark #оптимизация_shuffle #оптимизация_spark

  15. Курс «PostgreSQL для начинающих»: #4 — Анализ запросов (ч.2 — узлы получения данных)

    Продолжаю публикацию расширенных транскриптов лекционного курса "PostgreSQL для начинающих" , подготовленного мной в рамках "Школы backend-разработчика" в "Тензоре" . В первой части лекции мы узнали, что такое план выполнения запроса, как и зачем его читать (и почему это совсем непросто), и о каких проблемах с производительностью базы он может сигнализировать. В этой - разберем, что такое Seq Scan , Bitmap Heap Scan , Index Scan и почему Index Only Scan бывает нехорош. Как обычно, для предпочитающих смотреть и слушать, а не читать - доступна видеозапись ( часть 1 , часть 2 ) и слайды .

    habr.com/ru/companies/tensor/a

    #postgresql #sql #тензор #школа_backend #explain #план_запроса #seq_scan #index_scan #bitmap_scan

  16. Курс «PostgreSQL для начинающих»: #4 — Анализ запросов (ч.2 — узлы получения данных)

    Продолжаю публикацию расширенных транскриптов лекционного курса "PostgreSQL для начинающих" , подготовленного мной в рамках "Школы backend-разработчика" в "Тензоре" . В первой части лекции мы узнали, что такое план выполнения запроса, как и зачем его читать (и почему это совсем непросто), и о каких проблемах с производительностью базы он может сигнализировать. В этой - разберем, что такое Seq Scan , Bitmap Heap Scan , Index Scan и почему Index Only Scan бывает нехорош. Как обычно, для предпочитающих смотреть и слушать, а не читать - доступна видеозапись ( часть 1 , часть 2 ) и слайды .

    habr.com/ru/companies/tensor/a

    #postgresql #sql #тензор #школа_backend #explain #план_запроса #seq_scan #index_scan #bitmap_scan

  17. Курс «PostgreSQL для начинающих»: #4 — Анализ запросов (ч.1 — как и зачем читать планы)

    Продолжаю публикацию расширенных транскриптов лекционного курса "PostgreSQL для начинающих" , подготовленного мной в рамках "Школы backend-разработчика" в "Тензоре" . В этой лекции мы узнаем, что такое план выполнения запроса, как и зачем его читать (и почему это совсем непросто), и о каких проблемах с производительностью базы он может сигнализировать. Разберем, что такое Seq Scan , Bitmap Heap Scan , Index Scan и почему Index Only Scan бывает нехорош, чем отличается Materialize от Memoize , а Gather Merge от "просто" Gather . Как обычно, для предпочитающих смотреть и слушать, а не читать - доступна видеозапись ( часть 1 , часть 2 ).

    habr.com/ru/companies/tensor/a

    #postgresql #sql #тензор #школа_backend #explain #план_запроса #buffers #i/o_timings

  18. Курс «PostgreSQL для начинающих»: #4 — Анализ запросов (ч.1 — как и зачем читать планы)

    Продолжаю публикацию расширенных транскриптов лекционного курса "PostgreSQL для начинающих" , подготовленного мной в рамках "Школы backend-разработчика" в "Тензоре" . В этой лекции мы узнаем, что такое план выполнения запроса, как и зачем его читать (и почему это совсем непросто), и о каких проблемах с производительностью базы он может сигнализировать. Разберем, что такое Seq Scan , Bitmap Heap Scan , Index Scan и почему Index Only Scan бывает нехорош, чем отличается Materialize от Memoize , а Gather Merge от "просто" Gather . Как обычно, для предпочитающих смотреть и слушать, а не читать - доступна видеозапись ( часть 1 , часть 2 ).

    habr.com/ru/companies/tensor/a

    #postgresql #sql #тензор #школа_backend #explain #план_запроса #buffers #i/o_timings