На первую страницу Курсы для IT специалистов Курсы ИБ Психология - Управление - Маркетинг Курсы для пользователей  

Телефон: +7(495)933-00-06 / О компании / Наши координаты / Карта сайта /  ВЕРСИЯ ДЛЯ СЛАБОВИДЯЩИХ  

 

Курсы PostgreSQL


Курс: PostgreSQL 16. Оптимизация запросов: PP.16.QPT

Целью обучения является приобретение теоретических знаний и практических навыков, связанных с выполнением задач по администрированию и оптимизации запросов в PostgreSQL.

Отличия от предыдущей версии курса:

• учтены нововведения версий PostgreSQL 14, 15 и 16;
• длительность курса увеличена до трех дней, а темы разбиты по модулям;
• в тему «Методы доступа» вошла информация из старых тем «Последовательный доступ», «Индексный доступ» и «Сканирование по битовой карте»;
• в новую тему «Параллельный доступ» перенесена вся информация про параллельные возможности методов доступа;
• в новой теме «Типы индексов» рассказано про хеш-индекс, GiST, SP-GiST, GIN и BRIN;
• новый модуль «Сортировка и группировка» детально рассказывает о сортировке и группировке;
• старая тема «Статистика» разделена на две, которые выделены в новый модуль «Статистика»;
• новый модуль «Оптимизация запросов» состоит из четырех тем, две из которых («Материализация» и «Функции») новые, а бывшая «Приемы оптимизации» переименована в «Подходы к настройке» и существенно переработана.

Ориентирован: Специалисты, деятельность которых связана с администрированием и оптимизацией баз данных
Предварительный уровень подготовки:
• знакомство с ОС Unix;
• уверенное владение SQL (знакомство с PL/pgSQL не обязательно, но полезно);
• знания и навыки PostgreSQL в объеме курса DBA1 «Администрирование PostgreSQL. Базовый курс» или DEV1 «Разработка серверной части приложений PostgreSQL 16. Базовый курс» (рекомендуется обучение)
Продолжительность: 3 дня, 24 академических часа.

Программа курса

Демонстрационная база данных

Тема 1. «Авиаперевозки»

Цели и задачи.

• Предметная область и общая схема демобазы.
• Подробное описание объектов.

Выполнение запросов

Тема 2. Планирование и выполнение

Общие подходы к оптимизации.
• Простой протокол и этапы обработки запросов.
• Расширенный протокол.
• Подробнее о планировании.

Доступ к данным

Тема 3. Методы доступа

• Последовательное сканирование (Seq Scan).
• Сканирование индекса (Index Scan).
• Сканирование по битовой карте (Bitmap Scan).
• Сканирование только индекса (Index-Only Scan).
• Сравнение эффективности методов доступа.

Тема 4. Параллельный доступ

• Параллельные планы.
• Размер пула процессов.
• Параллельное последовательное сканирование.
• Параллельный индексный доступ.

Тема 5. Типы индексов

• Хэш-индекс.
• GiST (Generalized search tree).
• Класс операторов.
• SP- GiST (Space Partitioning GiST).
• GIN (Generalized Inverted Index).
• BRIN (Block Range INdex).

Сортировка и группировка

Тема 6. Сортировка

• Получение отсортированных данных.
• Сортировка в памяти.
• Внешняя сортировка.
• Инкрементальная сортировка.
• Сортировка в параллельных планах.
• Сортировка при построении индекса.
• Оконные функции с сортировкой.

Тема 7. Группировка

• Применение группировки.
• Группировка хешированием.
• Группировка сортировкой.
• Комбинированная группировка.
• Группировка в параллельных планах.
• Оконные функции.

Способы соединения

Тема 8. Соединение вложенным циклом

• Общие соображения о соединениях.
• Соединение вложенным циклом.
• Модификации: левые, полу- и анти- соединения.
• Вычислительная сложность.
• Вложенный цикл в параллельных планах.

Тема 9. Соединение хешированием

• Последовательное соединение хэшированием: одно- и двухпроходное.
• Вычислительная сложность.
• Параллельное соединение хэшированием: одно- и двухпроходное.

Тема 10. Соединение слиянием

• Алгоритм соединения слиянием.
• Вычислительная сложность.
• Соединение слиянием в параллельных планах.

Статистика

Тема 11. Базовая статистика

• Базовая статистика.
• Наиболее частые значения и гистограммы.
• Статистика элементов составных значений
• Использование статистики для оценки кардинальности и селективности.
• Частные и общие планы выполнения.
• Частичный индекс и индекс по выражению.

Тема 12. Расширенная статистика

• Функциональная зависимость.
• Наиболее частые комбинации значений.
• Число уникальных комбинаций значений.
• Статистика по выражениям.

Оптимизация запросов

Тема 13. Профилирование

• Профилирование как инструмент для поиска узких мест.
• Выбор подзадачи для профилирования.
• Средства построения профиля.

Тема 14. Материализация

• Материализация в запросах.
• Временные таблицы.
• Управление порядком соединений.
• Материализованные представления.

Тема 15. Функции

• Категории изменчивости.
• Подстановка кода функции в текст запроса.
• Вызов табличных функций.
• Настройки COST и ROWS.
• Вспомогательные функции планировщика.
• Конфигурационные параметры.

Тема 16. Подходы к настройке

• Что настраивать?
• Настройка сервера.
• Настройка приложения.
• Запросы.

После окончания курса слушатель сможет:

• Детально понимать механизмы планирования и выполнения запросов,
• Настраивать параметры экземпляра, связанные с производительностью,
• Выполнять поиск проблемных запросов и их оптимизацию.