Скрыть объявление

Внимание!


Наш телеграм-канал попал под массовую блокировку и, пока мы подготовили для вас резервный!


Подписывайтесь по этой ССЫЛКЕ

Скрыть объявление

На короткое время рассказываем где достать редкие курсы

Подробности ТУТ

Скрыть объявление

Мы обновили Telegram-бот!

Ссылку на новый бот и все детали ищите ТУТ и скорее подписывайтесь, чтобы не пропускать важные уведомления и новости форума

Скрыть объявление

Было ли у Вас такое, что Вы не могли найти курс? Если да, то напишите нам в Службу поддержки какой курс вам нужен и мы постараемся его найти.

Скрыть объявление

Пополняйте баланс и получайте при оплате складчин кэшбек в размере 10%

Доступно

[DevHands] PostgreSQL 17. Архитектура и тюнинг SQL-запросов (Николай Ихалайнен)

Тема в разделе "Курсы по программированию"

Цена:
50000 руб
Взнос:
954 руб
Организатор:
Организатор

Список участников складчины:

1. Организатор
Купить
  1. Организатор Организатор складчин

    [DevHands] PostgreSQL 17. Архитектура и тюнинг SQL-запросов (Николай Ихалайнен)

    [​IMG]
    На курсе вы сможете:
    • Понять, как работает внутри самая популярная открытая СУБД PostgreSQL
    • Изучить архитектуру хранения данных в PostgreSQL, типы и особенности индексов
    • Получить практику EXPLAIN, EXPLAIN ANALYZE, различных трюков оптимизации БД
      Используя свой собственный выделенный облачный PostgreSQL-сервер (8 vCPU, 12G RAM, 100G NVMe) – БЕСПЛАТНО предоставляется на время обучения
    • Разобраться в деталях, как работают современные СУБД
      Какие есть архитектурные особенности у СУБД в целом и у PostgreSQL в частности
      Что такое MVCC, ACID, WAL, LRU, PPC/TPC и другие аббревиатуры из мира СУБД
    Программа обучения:

    Встречи: 5 недель + 1 резерв (QA) + собственный настроенный PG-сервер в подарок + 45 дней практики

    Живые лекции и живые демо с автором курса, Николаем Ихалайненом. Первая, вводная встреча (архитектура СУБД) - совместная, Николая Ихалайнена с основателем devhands, Алексеем Рыбаком. Ведётся запись, ссылка выкладывается в чат. С первого же занятия мы выдаем доступ к настроенной инфраструктуре для выполнения практических заданий. Все встречи начинаются в 18:00 МСК (GMT+3), проходят в Zoom. Ссылка на Zoom-митинг «запинена» в чате.

    Занятие 1. Введение в архитектуру СУБД
    • Совместная встреча (Николай Ихалайнен, Алексей Рыбак).
    • Знакомство с основными концепциями СУБД через наивную попытку спроектировать СУБД самостоятельно (повторять не рекомендуется).
    • Постановка задачи: семейный финансовый трекер. Консольная утилита -> сервер с PPC-моделью. Файл данных. Поиск и индексный файл. Вторичные индексы. Транзакции и ACID. Изоляция, фантомные чтения. Многоверсионность (MVCC). Undo/Redo сегменты. Концепция Write-Ahead логов (WAL). Особенности ОС и железа: буферизация и отложенная синхронизация. Кеш блоков и страниц, LRU. Многопользовательская серверная архитектура, особенности PPC-модели. Блокировки. Дополнительные таблицы и отчёты: группировки, джойны, планы выполнения. Финальная схема решения и обсуждение.
    Занятие 2. Архитектура хранения данных и запросы по одной таблице
    • Темы: Метрики производительности запросов. Структура хранения строк таблицы, Heap. Хранение BLOB/CLOB, TOAST. Индексы, B-tree, Hash, GIN.Простые сканы, параллельное выполнение, EXPLAIN, EXPLAIN ANALYZE. Одноколоночные индексы стоимость выборки из индекса. Полное сканирование индекса, постраничный вывод Late Row Lookups.
    • Практика: Время исполнения запроса и ресурсы. Как PG хранит наши данные (записи в страницах HEAP и B-tree, заголовки страниц). План исполнения запросов с индексами и без. Селективность. Оптимизация полного сканирования для постраничного вывода.
    • Сбор данных и анализ графиков
    Занятие 3. Сложные индексы по нескольким колонкам и запросы с фильтрации по нескольким условиям
    • Темы: Многоколоночные индексы. Дублирующие индексы, игнорирование индекса, подсказки оптимизатору. Повышение эффективности индексов, неключевые поля, отфильтрованные, вычисляемые поля. Слияние индексов. Сортировка с помощью индексов. Оптимизация структуры БД, нормализация/денормализация. Виды JOIN: Nested Loop, Merge, Hash. CTE: Predicate Pushdown. Коррелированные подзапросы, агрегирующие функции
    • Практика: Оптимизация запросов с несколькими условиями фильтрации. Подбор оптимального состава индекса и порядка следования столбцов. Использование слияния нескольких индексов. Поиск и удаление неиспользуемых индексов. Получаем рекомендации по новым индексам: pg_qualstats и hypopg. Делаем индексы и запросы, которые работают только с индексом. Уменьшаем размер индекса фильтрацией. Генерируемые столбцы и индексы над ними. Индексы для сортировки ORDER BY. Сравнение различных методов Слияний. Оптимизация коррелированных подзапросов
    Занятие 4. Строгая типизация данных для хранимых объектов и обработка данных на стороне сервера
    • Темы: Типы данных. Использование JSON/BSON. Процедуры, выполнение обработки данных на стороне сервера. Роли и права доступа к объектам сервера. Типичные проблемы производительности PostgreSQL. (was: при миграции с других СУБД).
    • Практика: Сравнение полной выборки строки и только колонок без TOAST. Использование JSON с GIN, B-tree и HASH индексами. Процедуры, выполнение обработки данных на стороне сервера
    Занятие 5. Консистентное изменение БД, блокировки и восстановление после сбоев
    • Темы: Снимок состояния БД. ACID: Atomicity, Атомарность. Уровни изоляции. Исследование блокировок. Взаимные блокировки. Write Ahead Log, восстановление после сбоев, aciD. Резервное копирование (backup), репликация.
    • Практика: Поведение уровней изоляции на примерах, блокировки строк, сбои сериализации транзакций. Смотрим LWLock, почему база тормозит "внутри". Дампим Write Ahead Log, ищем таймлайны.
    Старт следующего потока 24-го апреля 2025 года

    Цена 50000 руб.

    Скрытый текст. Доступен только зарегистрированным пользователям.Нажмите, чтобы раскрыть...
     
  2. Похожие складчины
    Загрузка...
Наверх