Новости IT, хостинга
Новость от 10.09.2013

Адрес в интернете:
https://news.hostdb.ru/index/show/id/8593

Релиз СУБД PostgreSQL 9.3


После года разработки представлен релиз новой стабильной ветки СУБД PostgreSQL 9.3. В новой версии появилась поддержка обновляемых представлений, добавлены функции и операторы для работы с данными в формате JSON, обеспечена возможность записи во внешние таблицы, добавлен драйвер для прозрачного доступа к данным на других серверах, обеспечена поддержка создания триггеров для обработки глобальных событий БД, реализован режим многопоточного выполнения pg_dump. Кроме продолжения работы по наращиванию функциональности в процессе подготовки нового выпуска большое внимание было уделено увеличению надёжности, отказоустойчивости и интеграции с другими СУБД.

Основные улучшения:

Возможность выполнять операции обновления, добавления и удаления данных (UPDATE, INSERT, DELETE) в представлениях (VIEW), формируемых на основании выборки через оператор SELECT и ранее доступных только на чтение. Применение операции UPDATE для представлений допускается с определёнными ограничениями, например, поддерживаются представления только с одной таблицей или другим представлением в блоке FROM, не содержащие в теле операций WITH, DISTINCT, GROUP BY, HAVING, LIMIT и OFFSET, и без использования UNION, INTERSECT и EXCEPT на первом уровне вложенности.
Новая конструкция "MATERIALIZED VIEW", позволяющая определять представления с кэшированием заданного в представлении запроса в отдельной физической таблице с последующей выборкой данных из этой таблицы, вместо осуществление повторных запросов при каждом обращении к представлению;
Включён дополнительный набор средств для преобразования и манипуляции данными в формате JSON. В частности в дополнение к ранее представленному типу данных JSON добавлены функции для генерации данных в формате JSON из данных в других форматах, функции парсинга данных в формате JSON и встроенные операторы для обработки JSON-данных, позволяющие извлекать поля, менять отдельные значения, создавать записи на основе JSON-данных;
Доступные на запись внешние таблицы, позволяющие помещать данные в другие БД. "FOREIGN DATA WRAPPER" теперь поддерживает операции INSERT, UPDATE и DELETE;
Средства для хранения контрольных сумм для контроля целостности данных в БД и выявления повреждений файловой системы;
Новый драйвер pgsql_fdw для логического объединения содержимого БД на нескольких серверах, в том числе для организации бесшовного полного доступа к БД на других серверах PostgreSQL;
Новый упрощённый синтаксис для определения рекурсивных представлений (CREATE RECURSIVE VIEW);
Поддержка ключевого слова LATERAL для определения подзапросов в блоке FROM, ссылающихся на содержимое полей, полученных в процессе выполнения других подзапросов в процессе выполнения операций по слиянию таблиц (без LATERAL каждый из подзапросов выполняется независимо и не может учитывать данные других подзапросов);
Реализация триггеров для обработки глобальных событий (event trigger). В отличие от обычных триггеров обработчики событий привязываются к БД, а не к таблицам и могут быть написаны только на процедурных языках, в том числе на Си, но не на SQL. Обработчики событий могут перехватывать любые операции и команды, в том числе CREATE, ALTER и DROP;
Использование q-gram индексов (модуль pg_trgm) расширено на поиск по регулярным выражениям (операции LIKE/ILIKE могут использовать индексы, начиная с версии PostgreSQL 9.1);
Произведен переход с использования SysV shared memory на POSIX shared memory и mmap, что упрощает установку и конфигурацию, и избавляет от необходимости настройки таких параметров, как SHMMAX и SHMALL. Значительно сокращено потребление разделяемой памяти (SysV shared memory), что избавляет пользователей крупных систем от дополнительного тюнинга;
Сокращено время распространения реплик, а также значительно ускорена передача управления от запасного сервера к первичному. Переход от мастера к реплицированной системе производится менее чем за секунду. Ускорена и упрощена реконфигурация каскадных реплицированных систем после обработки отказа;
Увеличена производительность и улучшена система блокировок для внешних ключей;
Обеспечена возможность ускорения резервного копирования через запуск pg_dump в параллельном режиме, позволяющем выполнять бэкап одновременно нескольких таблиц;
Поддержка разбиения конфигурации на серию отдельных файлов, размещаемые в одной директории и подключаемых через директиву 'include_dir';
Добавлена утилита pg_isready для проверки доступности БД;
Новый оператор "COPY FREEZE" для минимизации нагрузки на систему ввода/вывода при копировании больших объемов данных;
Возможность создания пользовательских фоновых обработчиков, для автоматизации выполнения операций с БД (например, выполнение мониторинга или запуск типовых операций через определённые интервалы времени);
Новая директива lock_timeout для ограничения продолжительности ожидания освобождения блокировки.


Распечатано с HostDB.ru.