Postgres Professional
2.46K subscribers
639 photos
41 videos
354 links
🔹 Развиваем Postgres Pro — самую популярную российскую СУБД!*

🔹 Занимаем 1 место в России и 2 в мире по вкладу в PostgreSQL*

🔹 Организуем PGConf.Russia, выпускаем курсы и книги

*подробнее: postgrespro.ru/blog/news/5970919
加入频道
🔥Postgres Pro Enterprise 16

Представляем Postgres Pro Enterprise 16.1.1 — самый значимый релиз Postgres Pro за последние 5 лет по количеству новых разработок!

Среди главных фич:

✔️Встроенная система управления отказоустойчивым кластером Postgres Pro Enterprise BiHA (Built-in High Availability);

✔️Администратор без доступа к данным — позволяет защититься от злоумышленников с правами Администратора БД / Администратора СУБД, не давая им ни модифицировать, ни читать конфиденциальные данные;

✔️Приоритизация ресурсов — новый инструмент повышения эффективности использования СУБД с большим количеством пользователей;

✔️Новые системные пакеты-аналоги Oracle — функциональность, работающая по аналогии с пакетами Oracle;

✔️Адаптивный оптимизатор запросов AQO 2.0 — позволяет планировщику Postgres Pro выбирать самый эффективный план, создаваемый на основе статистики планирования и выполнения запросов;

✔️Обновленное расширение sr_plan — в комбинации с AQO версии 2.0 реализуют первую в мире Postgres интеллектуальную систему исправления и стабилизации проблемных планов запросов «на лету»;

✔️Поддержка внешних файлов в виде отдельного типа BFile;

✔️Обновленное приложение pg_probackup;

✔️Поддержка всех возможностей Postgres Pro Standard 16 и выпущенной осенью PostgreSQL 16.

👉 Подробнее о новых функциях Enterprise 16.1.1
PostgreSQL 17: Часть 3 или Коммитфест 2023-11. Что принес ноябрьский коммитфест?

В обзоре на Хабре руководитель отдела образовательных программ Postgres Professional Павел Лузанов рассказывает про интересные нововведения последнего коммитфеста в этом году.

Читайте статью
Please open Telegram to view this post
VIEW IN TELEGRAM
🎄Предновогодний интерактив на знание PostgreSQL

В любой поддерживаемой версии PostgreSQL, в сеансе суперпользователя выполним команды:
CREATE ROLE app_owner; -- создаем владельца объектов приложения
CREATE TABLE t (
id int PRIMARY KEY,
parent_id int REFERENCES t(id)
);
ALTER TABLE t OWNER TO app_owner;
REVOKE ALL ON t FROM app_owner; -- никаких действий под владельцем
INSERT INTO t VALUES (1,NULL);
DELETE FROM t;
DROP TABLE t;
Других сеансов нет, синтаксис правильный.


В следующем посте будет опрос. Отметьте в нем команды, которые завершатся ошибкой.
Отметьте команды, которые завершаются ошибкой. Позже опубликуем ответы с пояснением.
Anonymous Poll
1%
CREATE ROLE
4%
CREATE TABLE
4%
ALTER TABLE
13%
REVOKE
20%
INSERT
35%
DELETE
8%
DROP TABLE
46%
Все команды выполняются успешно
Как это работает: внешние ключи

Наверное многие уже знают правильный ответ. В конце концов, указанные команды несложно повторить и увидеть, что единственная команда, которая завершится ошибкой это DELETE:
DELETE FROM t;
ERROR: permission denied for table t
CONTEXT: SQL statement "SELECT 1 FROM ONLY "public"."t" x WHERE "id" OPERATOR(pg_catalog.=) $1 FOR KEY SHARE OF x"

Но как удаление только что добавленной строки может завершиться ошибкой? Почему у суперпользователя не хватает прав на таблицу t? И откуда взялась команда SELECT из контекста?

Все дело в ограничении внешнего ключа в таблице t: столбец parent_id ссылается на id этой же таблицы. Для реализации внешних ключей в PostgreSQL используются табличные триггеры. Их называют системными. Это триггеры на языке C, они создаются автоматически, команды psql их не показывают. Но их можно найти в системном каталоге pg_trigger, например в таблице t их сейчас 4. При удалении сработал триггер на DELETE. В триггере проверялось, что на удаляемую строку другие строки не ссылаются.

Так вот оказывается, что системные триггеры выполняются с правами владельца таблицы, а не с правами вызывающего команду DELETE. После выполнения REVOKE, прав на таблицу у app_owner нет. Поэтому любые пользователи будут получать подобные ошибки. Но если права вернуть, то всё заработает:
GRANT ALL ON t TO app_owner;
DELETE FROM t WHERE id = 1;
DELETE 1

Подобное поведение будет неожиданным для пришедших из других СУБД, где забирать у владельцев права на объекты вполне допустимо.

Но неожиданности в реализации системных триггеров на этом не заканчиваются. В недавней статье Broken foreign keys: how can that happen in PostgreSQL? Лауренц Альбе дает хорошее введение в системные триггеры и рассказывает как сломать ограничение внешнего ключа "законными" действиями.

Общий вывод: чтобы не нарушить согласованность данных, нужно учитывать работу системных триггеров. Это особенно важно при разработке собственных табличных триггеров.
This media is not supported in your browser
VIEW IN TELEGRAM
🎄 Этот год был ярким и насыщенным, спасибо за то, что провели его с нами! Поздравляем вас с наступающим 2024 годом, пусть он принесёт только самое хорошее!

🎁 А в качестве небольшого подарка — наш традиционный календарь «Postgres Pro в авангарде» на 2024 год!

До встречи!
📍Открыта регистрация на конкурс «СУБД Postgres Pro»

Приглашаем студентов и выпускников вузов и колледжей от 18 до 27 лет принять участие в нашем конкурсе на олимпиаде «IT⁠-⁠Планета 2024»:

✔️Первый этап — дистанционное тестирование на знание основ теории баз данных и основ языка SQL;

✔️Второй этап — дистанционное решение логических и практических задач, разработка нестандартных SQL-запросов;

✔️Финал — состязание в очном формате среди тех, кто прошел два отборочных этапа конкурса.

🔥Победители и призеры получат подарки от Postgres Professional: мерч, ваучер на бесплатное прохождение сертификации «Администратор PostgreSQL.Профессионал» и многое другое!

Читайте подробности и регистрируйтесь
Миграция на СУБД Postgres Pro: большой семинар Postgres Professional

13 февраля проведем PGMeetup, где выступят специалисты Postgres Professional, «Айбим», «Конвертум»:

✔️Расскажем про инструменты и технологии миграции, представим решения для упрощения этого процесса в Postgres Pro Enterprise 16;

✔️Представим кейс миграции НСИ Строительного Комплекса Московской Государственной Экспертизы с Oracle на Postgres Pro;

✔️Обсудим архитектуру максимальной доступности в СУБД Postgres Pro Enterprise.

🔥Семинар будет интересен разработчикам и администраторам, а также техническим архитекторам.

📍Митап пройдет в «Рэдиссон Славянская», для очного участия дождитесь подтверждения на почту после регистрации. Также доступна онлайн-трансляция. Участие — бесплатное, по итогам встречи отправим запись.

Регистрация на PGMeetup
📍Postgresso #12 (61) — главные события мира PostgreSQL за декабрь

Декабрьский Postgresso начинается с нашей главной новости: вышел Postgres Pro Enterprise 16.1.1. Также в выпуске:

✔️Обсудили задачи для соискателей крупных IT-компаний от HR-службы Google и не только;

✔️Рассмотрели молодые языки программирования и судьбу «старичков»: COBOL и Postgres для s390;

✔️Рассказали историю, как заработать (или не заработать) на поиске уязвимостей в защищенной ОС.

Читайте выпуск
Встреча с экспертами по PostgreSQL в Санкт-Петербурге

8 февраля в Санкт-Петербурге пройдет PGMeetup.СПб/24, где выступят специалисты Postgres Professional и Selectel:

✔️Эксперты Selectel представят результаты тестирования производительности ванильного постгреса и Postgres Pro Enterprise 16 на платформах Intel, AMD, ARM, обсудят методику тестов;

✔️Ведущий разработчик Postgres Professional Максим Орлов расскажет про особенности 64-битного счётчика транзакций в PostgreSQL.

Митап будет интересен для всех IT-специалистов, кто интересуется Postgres или работает с этой СУБД.

📍Встреча пройдет очно в дата-центре Selectel, также будет онлайн-трансляция. Участие — бесплатное.

Регистрируйтесь на PGMeetup.СПб/24
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥PGConf.Russia 2024 — открываем регистрацию и принимаем доклады

8-9 апреля в «Рэдиссон Славянская» пройдет PGConf.Russia 2024 — самая масштабная конференция по PostgreSQL в России:

✔️900+ разработчиков, администраторов баз данных и IT-менеджеров;

✔️Интересные кейсы по эксплуатации СУБД, мониторингу и настройке PostgreSQL, миграции на Postgres;

✔️Профессиональная сертификация по PostgreSQL (по предварительной записи).

Открываем прием заявок на доклады — регистрируйтесь и предлагайте тему до 10 марта.

📍Early Bird — со скидкой в 30% от финальной стоимости. Участие студентов и преподавателей — бесплатное.

Регистрируйтесь на PGConf.Russia 2024
📍Postgresso — итоговый выпуск за 2023 год

Выпустили подборку из Postgresso за 2023 год: собрали сюжеты, которые тянулись от первых номеров к предновогодним. Специалист образовательного отдела Postgres Professional Игорь Левшин подобрал в дайджесте интересные темы за год, чтобы каждый нашел что-то для себя. 

Читайте Postgresso за 2023 год
📍PGMeetup: Новые возможности СУБД Postgres Pro Enterprise 16

30 января на онлайн-встрече расскажем о функциях, решениях и доработках Postgres Pro Enterprise 16 — самого значимого релиза Postgres Pro за последние несколько лет. Также на PGMeetup:

✔️Обсудим новые возможности СУБД для упрощения миграции с Oracle;

✔️Поговорим о снятии ограничений для работы с неструктурированными данными;

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

Участие — бесплатное, все зарегистрированные участники получат запись встречи.

Регистрируйтесь на PGMeetup
📍Использование On-Logon триггеров в СУБД Postgres Pro Enterprise

Ведущий технический консультант Postgres Professional Игорь Мельников рассказал про работу с On-Logon триггерами в новой статье на Хабре

Функциональность PostgreSQL, аналогичная тому, что предоставляет Oracle On Logon Trigger, первоначально появилась в Postgres Pro Enterprise версии 14. Компания Postgres Professional передала свою реализацию этой технологии сообществу PostgreSQL — она войдет в open source релиз PostgreSQL 17.  

Триггеры On-Logon хорошо знакомы разработчикам приложений для СУБД Oracle Database, они являются одним из видов триггеров событий базы данных и автоматически срабатывают при подключении пользователя к БД.

Читайте статью
🔥Сертификация по PostgreSQL на PGConf.Russia 2024

8-9 апреля на PGConf.Russia 2024 проведем сертификацию «Администрирование PostgreSQL» по PostgreSQL версий 10 (DBA2, DBA3, QPT) и 13 (DBA1, DBA2, DBA3, QPT, Expert 10 → 13).

Сертификация позволяет:

✔️Подтвердить свой уровень знаний;

✔️Получить преимущества при поиске работы;

✔️Узнать свою зону роста и темы, которые стоит изучить.

Обладатели уровня «Эксперт» по PostgreSQL 10 смогут сдать переходный тест «Эксперт 10 → 13» и получить сертификат «Администратор PostgreSQL 13. Эксперт» по упрощённой системе.

📍Конференция пройдет в «Рэдиссон Славянская» + в онлайн-формате, открыта ранняя регистрация. Пройти сертификацию можно по предварительной записи.

Регистрация на PGConf.Russia 2024
🔥Новая книга от Postgres Professional — «Мониторинг PostgreSQL»!

Издание про внутреннее устройство PostgreSQL и особенности мониторинга поможет эффективно использовать СУБД и решать задачи, возникающие при работе с системой.

✔️Материалы об инструментарии СУБД PostgreSQL, практические приемы его использования и способы интерпретации полученных данных.

✔️9 глав: обзор статистики, статистика активности, выполнение запросов и функций, базы данных, область общей памяти и ввод-вывод, журнал упреждающей записи, репликация, очистка, ход выполнения операций.

✔️Для администраторов баз данных, системных администраторов, специалистов по надежности.

📍Автор — Алексей Лесовский, ведущий разработчик ПО Postgres Professional. Почти 20 лет Алексей занимается задачами эксплуатации сложных систем, проектирования и разработки ПО.

👉Скачать книгу
Календарь мероприятий Postgres Professional

✔️PGMeetup: Новые возможности Postgres Pro Enterprise 16 | 30 января | Бесплатно | Онлайн

В онлайн-формате расскажем о функциях, решениях и доработках Postgres Pro Enterprise 16 — самого значимого релиза Postgres Pro за последние несколько лет. Почитать о новинках можно вот тут.

✔️PGMeetup.СПб/24 | 8 февраля | Бесплатно | Онлайн и очно

В Санкт-Петербурге специалисты Postgres Professional и Selectel в дата-центре компании обсудят производительность PostgreSQL и Postgres Pro Enterprise 16, ускорение железа и консистентность в СУБД. Встречу также будем транслировать онлайн.

✔️PGMeetup. Миграция на СУБД Postgres Pro | 13 февраля | Бесплатно | Онлайн и очно

Встретимся в «Рэддисон Славянская»: специалисты Postgres Professional обсудят миграцию на Postgres Pro, эксперты «Айбим» представят кейс миграции.

🔥 PGConf.Russia 2024 | 8-9 апреля | Онлайн и очно | Early-bird билеты!

В «Рэддисон Славянская» пройдет самая масштабная конференция по PostgreSQL в России. Соберем на одной площадке разработчиков, администраторов баз данных и IT-менеджеров; эксперты представят доклады и кейсы по эксплуатации СУБД. Открыта регистрация и прием заявок на доклады.

До встречи!