Написать пост

Состоялся релиз PostgreSQL 10

Аватар Вячеслав Шарунов

СУБД PostgreSQL обновилась до 10 версии. Рассказываем о главных изменениях.

Об этом группа разработки объявила в официальном пресс-релизе. Новая версия СУБД содержит ряд существенных улучшений, помогающих распределять данные среди нескольких узлов для обеспечения быстрого доступа, управления и анализа. Среди них нативная логическая репликация, декларативное секционирование таблиц и улучшенное параллельное выполнение запросов.

Логическая репликация

Логическая репликация дополняет существующий набор видов репликации в PostgreSQL за счёт возможности передавать данные о модификации данных на уровне конкретной базы данных или на уровне таблиц в другие базы данных PostgreSQL.

Обновление на мажорные версии PostgreSQL теперь осуществляется без простоя и за счёт встроенных в ядро СУБД средств.

Декларативное секционирование таблиц

Несмотря на тот факт, что секционирование существовало и в предыдущих версиях СУБД, поддерживать множество правил и триггеров было сложно. В PostgreSQL 10 представлен синтаксис для секционирования, позволяющий пользователям с лёгкостью создавать и поддерживать таблицы с интервальной или списочной схемой секционирования. Разбиение таблиц теперь задаётся при помощи декларативного синтаксиса через выражения PARTITION BY и PARTITION OF в заголовке CREATE TABLE. Например:

			CREATE TABLE padre (
     id serial not null,
     nombre text not null,
     fch_creado timestamptz not null
    )
   PARTITION BY RANGE ( id );

CREATE TABLE hijo_0
     partition of padre (id, primary key (id), unique (nombre))
     for values from (unbounded) to (9);

CREATE TABLE hijo_1
     partition of padre (id, primary key (id), unique (nombre))
     for values from (10) to (unbounded);
		

Улучшенное параллельное выполнение запросов

PostgreSQL 10 получила улучшенную поддержку параллельного выполнения запросов. Теперь ещё больше типов операций сканирования данных поддаются параллелизации, а в некоторых случаях проводится дополнительная оптимизация.

Кворум-коммит для синхронной репликации

Кворум-коммит обеспечивает гибкость процесса оповещения основной БД о том, что изменения успешно записаны на удалённые реплики. Администраторы БД получили возможность указывать определённое количество реплик, получивших информацию об изменении, при котором данное изменение можно рассматривать как надёжно зафиксированное.

Аутентификация SCRAM-SHA-256

В PostgreSQL 10 представлена поддержка метода SCRAM-SHA-256, описанного в RFC7677. Данный подход является гораздо более безопасным, чем существующий метод аутентификации с применением MD5.

Изменения в нумерации версий

С выходом нового релиза меняется схема нумерации версий PostgreSQL. Вместо трёхуровневневой нумерации (Major1.Major2.Minor) отныне будет применяться схема «Major.Minor», в которой «Major» указывает номер мажорной ветки, а «Minor» — номер корректирующего обновления. Это означает, что следующая минорная версия будет иметь номер 10.1, а следующий мажорный релиз — 11.

Установка

Подробнее о внесённых изменениях с примерами нового синтаксиса можно узнать на официальной странице продукта.

SQL
Базы данных
1460