title

text

Дмитрий Долгов
Дмитрий Долгов Zalando SE Senior Software Engineer
11:05 03 марта
45 мин

Сколько нужно инженеров, чтобы скобки заработали?

Недавно появившийся в PostgreSQL, jsonb subscripting не выглядит так же захватывающе, как другие улучшения в jsonb. Но те изменения, которые видны пользователю - всего лишь верхушка айсберга. Как много людей было вовлечено в разработку, и какие решения были сделаны в дизайне? Как много времени это заняло, и какие хорошие/плохие идеи существуют для продвижения патча? Эти и несколько других вопросов будут целью это презентации.

Другие доклады

  • Антон Дорошкевич
    Антон Дорошкевич ИнфоСофт Руководитель Отдела-ИТ
    45 мин

    Сжатие на уровне СУБД в реалиях 1С

    В PostgresPro Enterprise есть замечательный механизм сжатия. 2020 год мною был посвящён исследованию этого механизма в реальной работе 1С. Накоплены некоторые статистические данные и конечно тонкости использования и поведения 1С по сравнению с другой популярной СУБД, которыми и хочу поделиться.

  • Álvaro Hernández
    Álvaro Hernández OnGres Founder
    180 мин

    Как преобразовать Postgres в облачную платформу

    Сводится ли развёртывание Postgres на Kubernetes к простой перераспаковке в контейнере? Или Postgres может использовать другой cloud-native софт для более качественной интеграции с K8s? Мы поговорим об этом на данном мастер-классе и продемонстрируем несколько примеров на StackGres:

    • Как преобразовать Postgres в контейнер без инициализации с несколькими контейнерами-"прицепами" для создания пула соединений, резервного копирования, агентов и т.п.
    • Определение высокоуровневых CRD в качестве единого API для взаимодействия с Postgres оператором.
    • Использование авторизации на основе K8s RBAC для аутентификации пользователя веб-интерфейса управления.
    • Использование Prometheus для мониторинга; сборка узла, использование экспортёров и Postgres, и PgBouncer.
    • Проксирование трафика Postgres traffic через Envoy. Завершение работы Postgres SSL с помощью плагина Envoy, который также экспортирует метрики "проводного" протокола в Prometheus.
    • Использование Fluentbit для сбора логов Postgres и их пересылки в Fluentd, который хранит их в централизованной постгрессовой базе данных.

    Во время мастер-класса вы сможете повторить все действия на собственном Kubernetes-кластере и с лёгкостью пройти путь от новичка до профи в Postgres на Kubernetes! Вы сможете создавать собственный Postgres-as-a-Service на Kubernetes всего за несколько минут!

  • Александр Никитин
    Александр Никитин ЗАО ЦФТ Администратор баз данных
    22 мин

    Неочевидные моменты процесса копирования и переноса баз данных и кластеров PostgreSQL

    Копирование и перенос баз данных и кластеров PostgreSQL, казалось бы, что может быть проще?

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

  • Николай Самохвалов
    Николай Самохвалов Nombox LLC Основатель
    180 мин

    Бесшовная оптимизация запросов PostgreSQL, версия 2.0

    Существует два способа анализировать SQL-запросы:

    1. На макроуровне: в этом случае мы анализируем рабочую нагрузку как единое целое (есть три основных подхода: использование метрик из pg_stat_statements или аналогичного модуля, анализ логов с помощью pgBadger или другого похожего решения и запрос выборки в представлении pg_stat_activity).

    2. На микроуровне: в этом случае мы погружаемся в детали исполнения одного конкретного запроса (тут главную роль играет команда EXPLAIN).

    Между этими двумя подходами есть немало "белых пятен", которые обнаруживаются с ростом нагрузки. Главные проблемы:

    • Нужно переключаться между макро- и микроуровнем без больших накладных расходов.
    • Требуется надёжная проверка гипотез относительно возможных оптимизаций.
    • Есть необходимость минимизации рисков при развёртывании новой функциональности.

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

    В рамках данного мастер-класса мы разберёмся, как можно настроить процесс беспроблемной и бесшовной оптимизации SQL-запросов в вашей организации: а) какие инструменты следует выбрать в вашем конкретном случае? б) как эффективно заполнить вышеупомянутые пробелы в сфере анализа запросов?