title

text

Николай Шаплов
Николай Шаплов Postgres Professional Fuzzing Engeener
15:35 08 апреля
40 мин

Fuzzing-исследование PostgreSQL. Как мы искали и что мы нашли

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

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

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

Слайды

Слайды доступны участникам мероприятия, выполнившим вход в личный кабинет.

Видео

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

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

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

    Диапазонные типы в Postgres

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

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

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

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

  • Никита Печёнкин
    Никита Печёнкин Postgres Professional Разработчик программного обеспечения
    40 мин

    Консистентность в распределенных системах на базе PostgreSQL

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

  • Илья Сазонов
    Илья Сазонов Всегда Да Руководитель разработки
    Фёдор Сазонов
    Фёдор Сазонов Сбер Руководитель направления
    40 мин

    pg укротитель

    У разработчиков постоянно возникают проблемы при работе с базами данных. Они вызваны тем, что разработчики считают СУБД чёрным ящиком, который "просто работает" и даже не подозревают, что важно и нужно понимать не только стандарт SQL, но и подробности устройства конкретной СУБД.

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

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

  • Дмитрий Фатов
    Дмитрий Фатов
    40 мин

    Разгоняем вставку больших объемов данных Spring + PostgreSQL

    Разработчикам часто приходится встречаться с оптимизацией различных бизнес-процессов. В этом докладе спикер покажет процесс оптимизации вставки в PostgreSQL с использованием фреймворка Spring со стороны прикладного разработчика. Также расскажет о проблемах медленной вставки данных в БД и о том, как можно ускорить этот процесс от простых настроек до использования кастомных методов PostgreSQL.