title

text

Bo Peng
Bo Peng SRAOSS, Inc. Japan Старший инженер-разработчик
10:00 02 марта
45 мин

Развёртывание PostgreSQL-кластера с балансировщиком запросов и мониторингом в Kubernetes

Kubernetes - это платформа оркестровки контейнеров с открытым исходным кодом для автоматизации развертывания, масштабирования и управления контейнерами приложений. В настоящее время все больше и больше приложений развертываются в контейнерах на Kubernetes.

Есть несколько решений для запуска кластера PostgreSQL на Kubernetes. Однако эти решения не предусматривают балансировку нагрузки. В этом выступлении я покажу вам, как объединить PostgreSQL-оператор с Pgpool-II для развертывания в Kubernetes кластера PostgreSQL с возможностью балансировки нагрузки.

Мониторинг - очень важная часть для любого реального продакшна. Хотя Kubernetes предоставляет базовый способ мониторинга состояния кластера PostgreSQL, этого недостаточно для управления кластером PostgreSQL в продакшне. Важным улучшением версии Pgpool-II 4.2 является возможность вывода более полезной статистики кластера PostgreSQL. В этом докладе я объясню, как отслеживать и визуализировать статистику кластера PostgreSQL в Prometheus для расширенного мониторинга кластера.

Видео

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

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

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

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

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

  • Олег Бартунов
    Олег Бартунов Postgres Professional генеральный директор
    Никита Глухов
    Никита Глухов Postgres Professional Разработчик
    45 мин

    JSONB изнутри

    JSONB - популярнейший тип данных в постгресе, но нам часто говорят, что его производительность нуждается в улучшении. Часто в одном поле типа JSONB одновременно находятся и короткие, и большие значения, например блоб и его метаданные. Сейчас это весьма неэффективно. Но мы придумали несколько подходов, дающих, как показывают эксперименты, весьма сильное ускорение.

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

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

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

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

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

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

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

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

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

  • Daniel Westermann
    Daniel Westermann dbi services Principal Consultant
    45 мин

    Как переносить данные из Oracle в PostgreSQL и обратно

    Использование PostgreSQL стало обычным делом во множестве организаций. В большинстве случаев PostgreSQL устанавливают в дополнение к уже имеющимся СУБД Oracle, и довольно скоро возникает закономерный вопрос: как перебрасывать данные из Oracle в PostgreSQL и наоборот? Давайте перенесёмся в прошлое, в март 2001, когда вышло новое расширение SQL стандарта, определившее общие принципы создания API для управления внешними данными: SQL/MED (ISO/IEC 9075-9:2008). Сообщество PostgreSQL довольно быстро создало фреймворк для использования рекомендаций стандарта в виде так называемых обёрток сторонних данных (foreign data wrappers). Это случилось в 2011 с выходом PostgreSQL 9.1. С тех пор число обёрток сторонних данных постоянно растёт. Сегодня благодаря им PostgreSQL может интегрировать данные почти из любого внешнего источника, будь то обычные файлы, другие реляционные СУБД или даже неструктурированные данные. В рамках этого доклада мы рассмотрим обёртку сторонних данных для Oracle и то, как её можно использовать для получения данных из Oracle в PostgreSQL. Однако обратное тоже верно: данные из PostgreSQL также можно отправить в Oracle, и это может быть важно для соблюдения требований. Обещаю, что в докладе будет две части: слайды и много демонстраций.