pg укротитель
У разработчиков постоянно возникают проблемы при работе с базами данных. Они вызваны тем, что разработчики считают СУБД чёрным ящиком, который "просто работает" и даже не подозревают, что важно и нужно понимать не только стандарт SQL, но и подробности устройства конкретной СУБД.
Проекты разные, разработчики разные, но вот проблемы как правило одни и те же. Мы хотим продемонстрировать как разработчики пользуются базой данных и рассказать хорошо бы знать об устройстве СУБД, для того, чтобы писать код, который не разваливается как только компания из бодрого стартапа превращается в зрелый бизнес с планомерно растущими продажами и, соответственно, нагрузками.
Практически в любом успешном проекте можно встретить практически одинаковые проблемы. Они появились потому что бизнес хотел побыстрее получить готовый продукт и это в своё время помогло компании встать на ноги. В небольших проектах эти проблемы совершенно незаметны.
Слайды
Слайды доступны участникам мероприятия, выполнившим вход в личный кабинет.
Видео
Видео доступно участникам мероприятия, выполнившим вход в личный кабинет
Другие доклады
-
Анатолий Анфиногенов ВНИИЖТ Зам. директора научного центра - начальник отдела разработки ПО
Диапазонные типы в Postgres
После того, как импортозамещение состоялось, можно немного перевести дух и заняться дальнейшим развитием нашего приложения. При этом оказывается, что Postgres - это не упрощенная версия Oracle, как могло показаться некоторым в процессе миграции, а самобытная СУБД, заметно его превосходящая во многих вопросах.
Поговорим о диапазонных типах - одном из бриллиантов в короне Postgres, про которые, как оказалось, знают далеко не все разработчики.
Диапазонные типы позволяют эффективно решать задачи, которые в реляционной модели традиционно решались довольно громоздко; например, ведение календарей событий или объектов, поддержка версионности объектов, поиск перекрывающихся или покрывающих диапазонов, построение огибающей для системы ограничений, проверка выполнения сложных диапазонных условий и т.п.
В докладе рассматривается решение нескольких типовых для диапазонных типов задач, что может быть полезно при проектировании новых и развитии существующих приложений.
-
Никита Печёнкин Postgres Professional Разработчик программного обеспечения
Консистентность в распределенных системах на базе PostgreSQL
Поговорим о консистентности в распределенных системах с точки зрения СУБД, распределенной системы и распределенной СУБД. Рассмотрим иерархию уровней согласованности, в т.ч. с точки зрения допустимых аномалий. Рассмотрим и сравним гарантии согласованности данных, предоставляемые различными решениями на базе PostgreSQL включая Shardman от Postgres Pro. Рассмотрим архитектуру Shardman с точки зрения возможных аномалий и наши способы от этих аномалий избавиться. Расскажем о том, как мы в Shardman верифицируем гарантии консистентности с помощью jepsen-тестирования.
-
Артём Галонский Postgres Professional Руководитель продуктового направления
Pooler, load balancer, proxy. Что их объединяет?
Сейчас у нас есть задачи разных классов, которые решают разные продукты, но, если "копнуть" глубже, эти продукты одного класса и решают много однотипных задач. После того, как мы представили на рынок встроенную отказоустойчивость (BiHA),мы решили продолжить модернизацию наших кластреных возможностей, которые работают "из коробки".
В данном докладе сделаем краткий обзор базовых технических требований к новой функциональности PostgresPro Enterprise, которая появится в 17 версии.
-
Леонид Борчук Яндекс Разработчик
Greenplum: командный центр вместо pg_stat_statements
В greenplum используется отличный от PostgreSQL подход для сбора статистики выполнения запросов: вместо pg_stat_statements - командный центр. Командный центр - отдельное приложение. А значит нет необходимости хранить статистику в разделяемой памяти. Но нужно отправлять ее отдельному процессу. Расскажу: - как мы его реализовали; - почему использование grpc в postgreSQL - плохая идея и с какими еще проблемами мы столкнулись; - какие хуки было бы неплохо добавить в postgreSQL; - как не тормозить на отправке данных; - какие новые возможности появляются у отдельного приложения.