Конференция завершена. Ждем вас на HighLoad++ Foundation в следующий раз!

Как увеличить производительность JSONB в PostgreSQL?

Привет, друзья!

Для начала хотим напомнить, что повышение цен на HighLoad++ Foundation уже на следующей неделе — 1 февраля. Вы можете забронировать билет сейчас, и у вас будет ещё несколько дней на все согласования и оплату.

Забронировать билет на HighLoad++ Foundation

Если вы давно подумывали о том, чтобы стать спикером HighLoad++, попробуйте подать доклад на Saint HighLoad++ 2022. Он пройдёт 26 и 27 июня в Петербурге, приём докладов открыт до 18 февраля. Все подробности здесь.


Один из наших постоянных спикеров — Евгений Потапов. На HighLoad++ он выступает с 2010 года, а в техническом менеджменте уже 15 лет. Сейчас он руководит компанией ITSumma, которая занимается разработкой веб-проектов и техподдержкой сайтов для маленьких компаний и больших корпораций.

В своём докладе на HighLoad++ Foundation Евгений затронет основные проблемы, с которыми сотрудники ITSumma сталкиваются в своей работе и которые приводят к некорректным результатам нагрузочного тестирования или к некорректной интерпретации результатов тестирования. Евгений расскажет, как их избежать и с технической точки зрения, и с организационной (в разговоре с бизнесом). А главное, мы узнаем, как можно интегрировать процесс тестирования в регулярную разработку.

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

Для построения высоконагруженных систем Serverless-подход становится все более популярным. А самый часто используемый сервис в этой области — AWS Lambda.

Роман Бойко (AWS) покажет, как можно использовать AWS Lambda для создания высоконагруженных систем с большими пиками нагрузок.

Из второй части доклада узнаем, как AWS строит сервис Lambda для работы с высокими нагрузками, как его разработчики получают события из внешних источников, масштабируют и защищают AWS Lambda и зачем для этого используется Firecracker.

Константин Лепешенков работает архитектором Облачных Решений в Microsoft Norway. На этой должности он ограждает заказчиков от неправильного использования Microsoft Azure. На конференции вместе с Константином заглянем под капот подсистемы Azure Durable Functions и разберем ее внутреннее устройство. 

В бессерверной экосистеме Azure Functions теперь есть сразу два инструмента для создания Сервисов с Хранимым Состоянием — Durable Orchestrations и Durable Entities. Эти инструменты построены на общей платформе, но реализуют различные архитектурные подходы — Saga/Workflow и Virtual Actors, соответственно. Обсудим, когда лучше использовать Durable Orchestrations, когда Durable Entities, а когда не использовать ни то, ни другое. Запустим примеры кода и посмотрим, насколько быстро это все работает.


А прямо сейчас предлагаем почитать новую статью от Олега Бартунова.

Борьба с TOAST, или Будущее JSONB в PostgreSQL

В PostgreSQL есть два типа данных: JSON и JSONB. Первый формат является текстовым хранилищем, в котором json хранится "as is".

Тип JSONB имеет богатую поддержку, облегчающую работу разработчиков приложений, для него есть встроенные индексы, кроме того, существует расширение Jsquery, в котором реализован язык запросов к JSONB и дополнительные индексы. Когда у Олега спрашивают, чем пользоваться, он всегда советует JSONB, так как он позволяет работать очень эффективно. 

Однако у постгреса есть серьёзная проблема, которая сказывается и на производительности JSONB — это TOAST — о ней Олег Бартунов говорил в первой части. Сегодня посмотрим, как в Postgres Professional улучшили JSONB, чтобы существенно повысить его производительность.


На сегодня всё! До скорого!