title

text

Георгий Рылов
Георгий Рылов Яндекс Разработчик
17:00 05 февраля
22 мин

WAL-G: новые возможности и расширение сообщества

У меинтейнеров open-source возникает множество проблем по мере их роста. Как писать все больше требуемых фич, чинить все больше issues'ов и успевать смотреть все больше pull request'ов? На примере WAL-G(backup-tool for PostgreSQL) расскажу про то, как мы решали эти проблемы, запустив курс по Open-source разработке в университете, чего мы добились и куда будем двигаться дальше.

Слайды

Видео

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

  • Валерий Попов
    Валерий Попов Postgres Professional Руководитель группы информационной безопасности и сертификации
    Николай Чадаев
    Николай Чадаев Postgres Professional Старший инженер
    45 мин

    Построение защищенных БД с использованием мандатного разграничения доступа в 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, на которой мы продемонстрируем защиту чувствительной информации и персональных данных, сравним различные механизмы организации хранилища меток безопасности и производительность решения.

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

    Уровни изоляции транзакций в постгресе

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

    Тому, как этого избежать, и посвящен этот доклад.

  • Владимир Алешин
    Владимир Алешин Avito Инженер
    45 мин

    Хранимки as code

    В рамках доклада поговорим о хранимых процедурах и функциях и коде внутри базы данных в целом. Посмотрим на хранимки с разных сторон: глазами DBA, разработчика баз данных и разработчика серверной части. Попытаемся понять что такого особенного в хранимых процедурах, что зачастую препятствует применению сложившихся практик по работе с исходным кодом. Поговорим о том как выглядят best practice по работе с кодом в разрезе хранимых процедур.

    Доклад в большей степени ориентирован на разработчиков баз данных и серверных разработчиков, и является скорее мотивационным, чем хардкорно-техническим.

  • Дмитрий Урсегов
    Дмитрий Урсегов Postgres Professional Руководитель группы разработки
    22 мин

    Средства Greenplum для работы с внешними данными, примеры разработки коннекторов для Kafka и ClickHouse

    Greenplum - это горизонтально-масштабируемая СУБД, основанная на ядре PostgreSQL.  Она используется для OLAP нагрузок и стандартной задачей является быстрая загрузка или выгрузка большого объема данных. Часто внешними ресурсами данных являются такие же распределенные системы. В этом докладе будет рассказано, какие средства есть в Greenplum для работы с внешними ресурсами, про их архитектуру и производительность: external tables, foreign tables, streaming servers. Что планируется в следующей версии. Будут приведены примеры разработки коннекторов для Kafka и ClickHouse.