title

text

PGConf.Russia 2024

PGConf.Russia – международная техническая конференция по открытой СУБД PostgreSQL, ежегодно собирающая более 900 разработчиков, администраторов баз данных и IT-менеджеров для обмена опытом и профессионального общения. В программе – доклады в три потока в течение двух дней, живое общение на кофе-брейках и фуршете.

Темы встречи

  • Эксплуатация СУБД. Опыт DBA.
  • Миграция на Postgres
  • Мониторинг и настройка СУБД
  • Отказоустойчивые и масштабируемые системы
  • Новости от разработчиков
  • более
    0 участников
  • 0 докладчиков
  • 0
    минут общения
  • 46 докладов
  • гибридный
    формат

Доклады

Архив докладов

PGConf.Russia 2024
  • Николай Шаплов
    Николай Шаплов Postgres Professional Fuzzing Engeener

    Фаззинг-исследование, это когда мы подаем в программу (или ее часть) случайные входные данные (на самом деле случайность весьма условна) и смотрим что из этого получится. И так много раз на многих процессорах.

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

    Исследование функций парсинга типов данных (input-функции): для разогрева;
    Исследование функций реализующих операции между типами (op-функции): тут лучше учитывать структуру;
    Фаззинг сетевой подсистемы: давайте притворимся, что мы POSIX-вызовы, так дешевле;
    Восстановление дискового контекста: нужен день сурка.
    

  • Анатолий Анфиногенов
    Анатолий Анфиногенов ВНИИЖТ Зам. директора научного центра - начальник отдела разработки ПО

    После того, как импортозамещение состоялось, можно немного перевести дух и заняться дальнейшим развитием нашего приложения. При этом оказывается, что Postgres - это не упрощенная версия Oracle, как могло показаться некоторым в процессе миграции, а самобытная СУБД, заметно его превосходящая во многих вопросах.

    Поговорим о диапазонных типах - одном из бриллиантов в короне Postgres, про которые, как оказалось, знают далеко не все разработчики.

    Диапазонные типы позволяют эффективно решать задачи, которые в реляционной модели традиционно решались довольно громоздко; например, ведение календарей событий или объектов, поддержка версионности объектов, поиск перекрывающихся или покрывающих диапазонов, построение огибающей для системы ограничений, проверка выполнения сложных диапазонных условий и т.п.

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

  • Дмитрий Руденко
    Дмитрий Руденко Тинькофф Центр Разработки Ведущий инженер баз данных

    Всем нам хочется быть немножко Шерлоками и расследовать интересные и запутанные дела. Жизнь, однако, вносит свои коррективы и большинство задач на выходе имеют банальные решения вроде - добавьте индекс по такому-то полю. Обилие баз и команд приводит к постоянному фону таких задач. Ситуацию усложняет повсеместное использование всякого рода ORM. И сами разработчики и ORM, зачастую не особенно беспокоятся вопросами эффективного доступа к данным (построение запросов, наличие и оптимальность состава индексов итд). В докладе рассматривается инструмент мониторинга и анализа состояния баз данных Postgres созданный на основе Grafana. Особенно подробно рассмотрены части, которые помогают разработчикам самостоятельно понять, где и каким образом образуются слабые места в его взаимодействии с базой.

  • Владимир Ситников
    Владимир Ситников PostgreSQL JDBC maintainer Performance Engineer

    Доклад о базовых принципах serever-prepared statements, и о фактической реализации в PostgreSQL JDBC. Планируется рассмотреть как базовые механизмы, так и краевые случаи.

    Примерный список тем:

    1) Как задействовать server-prepared statements
    2) Какие настройки влияют на server-prepared
    3) server-prepared vs batch execution
    4) server-prepared vs concurrent executions (несолько разных подключений)
    5) server-prepared vs connection poolers
    6) Как понять, что server-prepared не работает
    7) binary/text parameter/result encoding
    8) server-prepared vs типы данных (грубо говоря, timestamptz vs timestamp vs text encoding)

Все доклады