Адаптивная оптимизация запросов в PostgreSQL
Оптимизация запросов является важной задачей, решение которой существенно влияет на производительность СУБД, особенно при выполнении сложных запросов. В докладе будет рассмотрен оптимизатор запросов PostgreSQL, и, в частности, задача определения мощности вершины с зависимыми условиями, которая является одной из самых известных проблем стоимостных оптимизаторов. Предлагается решение этой проблемы, использующее методы машинного обучения и доступное в виде расширения с патчем для PostgreSQL 9.6. В докладе приводятся результаты экспериментального исследования предложенного решения, обсуждаются его плюсы и минусы, а также область применимости.
ВИДЕО
Слайды
Другие доклады
-
Филипп Дельгядо ООО «Лектон» архитектор департамента
Особенности реализации распределенного workflow на PostrgeSQL
При реализации сложной бизнес-логики часто возникает необходимость в реализации workflow - цепочки обработки из нескольких шагов, каждый из которых представляет из себя независимый кусочек бизнес-логики. Обычно для этого используются специализированные очереди, но при высоких требованиях к надежности имеет смысл все сделать на PostgreSQL.
-
Михаил Тюрин ИТ предприниматель предприниматель
Лок, лок – дедлок!
< Query failed: ERROR: deadlock detected < DETAIL: Process 17371 waits for ShareLock on transaction 102733872; blocked by process 10414. < Process 10414 waits for ShareLock on transaction 102733874; blocked by process 17371.
Подобные "неприятные" сообщения от сервера могут серьезно озадачить разработчика. При работе с блокировками, в частности, и с транзакциями в целом, следует учитывать особенности реализации клиентских библиотек, которые могут вызывать описанное выше исключение.
В кратком докладе-сообщении будет объяснена механика взаимодействия блокировок, приводящая к ситуации дедлока; приведены ссылки на документацию; разобрана техника "обхода" данной проблемы конкурентной работы с данными; показаны обобщенные приемы из практики.
-
Дмитрий Белявский ТЦИ Ведущий специалист
Криптография в реляционных СУБД
При работе с данными существует необходимость криптографической защиты некоторых данных. Презентация описывает некоторые задачи, которые можно решить с помощью криптографии, и правильные подходы к применению криптографии при разработке приложений, использующих СУБД. Отдельно рассказывается от последних результатах, достигнутых в части применения криптографии в PostgreSQL.
ВИДЕО
-
Владимир Бородин Яндекс DBA
Пул соединений в масштабе
Многие знают, что соединения в PostgreSQL дорогие, а потому их надо экономить. Для решения этой задачи давно есть PgPool-II и PgBouncer. В Яндексе никого не удивить десятками тысяч соединений к одной базе и с незапамятных времён мы используем pgbouncer. В этом докладе я расскажу о проблемах, с которыми мы сталкивались, и способах их решения.
ВИДЕО