![Иван Фролков Иван Фролков](/media//2017/01/23/Ifrolkov.jpg.180x180.jpg)
Уровни изоляции транзакций в постгресе
Про уровни изоляции транзакций обычно все что-то слышали, но, как ни странно, мало кто может внятно рассказать, что же это такое и зачем надо, в то же время для многих операций ясное понимание того, что под этим подразумевается и как это влияет на результат может быть весьма значительным. В самом деле, если клиенту выплатили двойную сумму и перед программистом встает перспектива личного возмещения нанесенных убытков, то вряд ли тогда этот параметр покажется таким уж маловажным.
Тому, как этого избежать, и посвящен этот доклад.
Слайды
Видео
Другие доклады
-
Антон Дорошкевич ИнфоСофт Руководитель ИТФедор Сигаев Postgres Professional технический директор, ведущий разработчик PostgreSQL
Что "мир 1С" ждёт от PostgreSQL
Одну из самых массовых ветвей распространения PostgreSQL в России занимает 1С. В докладе хотел бы поделиться мыслями о том, чего не хватает в PostgreSQL по мнению тех, кто работает с 1С.
-
Егор Рогов Postgres Professional эксперт
Статистика в ретроспективе
Чтобы оптимизатор мог построить хороший план, он должен иметь представление о статистических свойствах данных, с которыми имеет дело. Любопытно посмотреть, как усложнялась со временем структура собираемой информации: на что оптимизатор опирался в былые времена и что есть в его распоряжении сейчас с выходом 12-й версии. Мы также поговорим о том, как и когда собирается статистика, как управлять этим процессом и нужно ли вообще об этом задумываться.
-
Брюс Момжиан EnterpriseDB Senior Database Architect
Unlocking the Postgres Lock Manager
Locking is critical for providing high concurrency for any database — you cannot fully utilize your hardware if locking is throttling its use. This talk explores all aspects of locking in Postgres by showing queries and their locks; covered lock types include row, table, shared, exclusive, and advisory lock types. The high concurrency provided by Multiversion Concurrency Control (MVCC) is also covered.
Slides are at https://momjian.us/main/writings/pgsql/locking.pdf
-
Николай Чадаев Postgres Professional Старший инженерВалерий Попов Postgres Professional Руководитель группы информационной безопасности и сертификации
Построение защищенных БД с использованием мандатного разграничения доступа в PostgreSQL
Ролевая модель разграничения доступа (RBAC) является основным механизмом разграничения доступа во многих СУБД, в том числе и в PostgreSQL. Эта модель является разновидностью дискреционного разграничения с присущими ей ограничениями. Во многих ОС в дополнение к традиционному дискреционному разграничению доступа используется мандатное разграничение (MAC) на основе меток безопасности, которое является обязательным для защиты информации высоких классов, а также представляет дополнительный механизм защиты. Естественно, хочется использовать возможности мандатного разграничения доступа к данным в среде СУБД при работе в ОС с включенным мандатным разграничением.
В нашем докладе мы рассмотрим имеющиеся реализации MAC в СУБД, а также предлагаем свой подход к использованию в PostgreSQL механизмов защиты, которые предоставляет SELinux, расширение sepgsql для PostgreSQL, а также стандартный механизм политики защиты строк (RLS, row level security), который есть в PostgreSQL начиная с версии 9.5.
Созданный прототип работает в enforced режиме под управлением ОС CentOS 7 с включенным SELinux, системными политиками MLS/MCS (Multi Level Security/Multi Category Security). В дополнение к функциональности модуля sepgsql реализовано мандатное разграничение MLS/MCS на уровне строк таблиц. Обеспечивается сетевое взаимодействие с передачей меток по сети с использованием механизмов IPSEC, CIPSO, что позволяет использовать этот подход в многопользовательской, многоузловой сети. Реализация MLS в СУБД оформлена в виде стандартных расширений PostgreSQL. Одно является оберткой вокруг расширения sepgsql, и обеспечивает легкую инсталляцию расширения sepgsql в БД, а также восстановление контекстов безопасности данных при дампе/восстановлении БД. Второе расширение предоставляет сервисные функции для работы с метками, в том числе в доверенном режиме, позволяющем менять контексты безопасности.
В качестве демо-примера мы использовали демонстрационную базу данных Авиаперевозки, подготовленную компанией Postgres Professional, на которой мы продемонстрируем защиту чувствительной информации и персональных данных, сравним различные механизмы организации хранилища меток безопасности и производительность решения.