PostgreSQL 19 добавляет графовые запросы по стандарту SQL/PGQ

В PostgreSQL 19 появилась базовая поддержка SQL Property Graph Queries (SQL/PGQ) из стандарта SQL:2023. Она позволяет описывать графы свойств поверх обычных реляционных таблиц и искать графовые шаблоны через GRAPH_TABLE без отдельного хранилища данных. Возможность уже доступна в PostgreSQL 19 Beta 2.

Разработчики включили в PostgreSQL 19 реализацию SQL Property Graph Queries (SQL/PGQ), соответствующую стандарту ISO/IEC 9075-16:2023.

В состав реализации вошли:

  • табличная функция GRAPH_TABLE для сопоставления графовых шаблонов;
  • команды CREATE PROPERTY GRAPH, ALTER PROPERTY GRAPH и DROP PROPERTY GRAPH;
  • новые системные каталоги и представления информационной схемы;
  • команда \dG для клиента psql;
  • функция pg_get_propgraphdef(), используемая psql и pg_dump.

Согласно документации PostgreSQL 19, граф свойств работает как доступное только для чтения представление над обычными таблицами, представлениями или внешними таблицами. Данные не переносятся в отдельное графовое хранилище: графовый запрос преобразуется в реляционный и выполняется существующими планировщиком и исполнителем PostgreSQL. Графовые и обычные SQL-запросы можно объединять в одном выражении.

Текущая тестовая версия — PostgreSQL 19 Beta 2. Проект не рекомендует использовать бета-версии в производственных системах, а интерфейсы новой функции до финального выпуска ещё могут измениться.

Источник: postgresql.org

Связь с редакцией