title

text

Иван Чувашов
Иван Чувашов ООО Calltouch DBA
: декабря
45 мин

Практические примеры по оптимизации запросов в PostgeSQL

Я думаю, что каждый администратор баз данных в своей работе сталкиваемся с "тяжелыми" запросами. И возникает вопрос, а можно ли вообще ускорить работу этого запроса? Может быть, даже и оптимизировать такие запросы невозможно? Или время на переработку этого запроса будет существенно больше, чем выигрыш от производительности этого запроса. В своем докладе я рассмотрю несколько подходов к ускорению запросов и на практических примерах покажу оптимизации, которые использую в своей работе.

Слайды

pgconf2023_new.pptx

Видео

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

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

  • Иван Фролков
    Иван Фролков Postgres Professional инженер-консультант
    45 мин

    Новые версии UUID

    Генерация первичных ключей - старая задача, довольно неплохо решаемая последовательностям, но, к сожалению, не идеально. Возникают проблемы с распределенной генерацией, действительной уникальностью и предсказуемостью. UUID изначально почему-то не предполагался для использования в качестве ключа СУБД, но новые версии (6,7 и 8) позволяют довольно удобно использовать их в качестве как для синтетических, так и для естественных ключей.

  • Юрий Плотников
    Юрий Плотников РТК ИТ Начальник отдела
    Андрей Григорьев
    Андрей Григорьев Ростелеком Информационные технологии Разработчик
    22 мин

    История о разработке инструмента управления изменениями в БД или чего нам не хватило в Liquibase и Flyway

    В докладе расскажем как мы храним объекты БД в системе контроля версий. Сравним традиционные подходы работы с миграциями БД и то, что понравилось нам. Расскажем о преимуществах и недостатках обоих методов. А потом мы представим наш инструмент для автоматизации процессов миграции и управления объектами БД - pgmig.

  • Christopher Travers
    Christopher Travers Independent Community Member Principal Engineer
    45 мин

    PostgreSQL vs Redis: Making the Right Choice

    With the rise of NoSQL databases, a number of falsehoods have flourished regarding how to choose a database engine. This talk focuses specifically on Redis and PostgreSQL, and why one might choose one or the other.

    At small scales, we can often get by thinking of database servers as black boxes, but as we scale, the internals and architecture become more and more important. This talk focuses on behavior of these systems at scale and under load.

    In this presentation you will learn:

    • How Redis and PostgreSQL differ architecturally
    • How differences in architecture affect scalability and performance
    • Cases here Redis is the clear winner
    • Cases where PostgreSQL is the clear winner

    Additionally, some notes will be offered in terms of where PostgreSQL can improve in to compete with the sorts of workloads that generally favor Redis.

  • Алексей Фадеев
    Алексей Фадеев Sibedge Старший разработчик .NET, евангелист Postgres.
    22 мин

    ORM LinqToDb: используем возможности Postgres по максимуму

    ORM-библиотеки широко используются при разработке бэкенда – примем это как данность. ORM-библиотеки совершенствуются, разработчики учатся на своих и чужих ошибках, и многие научились писать код для ORM, генерирующий вполне оптимальные запросы для типовых операций. Но есть ещё одна проблема ORM – ограниченность инструментов. Особенно это актуально для Postgres, имеющего массу операторов и конструкций (как в ядре, так и в расширениях), выходящих за рамки стандарта SQL.

    ORM-библиотека LinqToDb имеет важную особенность: она позволяет очень просто (буквально в одну строку) писать расширения, реализующие любой SQL-оператор или конструкцию. Полнотекстовый поиск, KNN, CTE (в том числе рекурсивные), работа с массивами и jsonb, array_agg и jsonb_object_agg, табличные функции и LATERAL JOIN – всё это без труда можно использовать в ORM, что я и продемонстрирую в данном докладе!