2009-07-01

PostgreSQL 8.4

Вышла новая версия PostgreSQL, opensource cистемы управления базами данных. PostgreSQL разрабатывается более 15 лет и работает практически на всех распространенных платформах.

Из значимых изменений можно отметить:

* Windowing Functions
* Common Table Expressions and Recursive Queries
* Default and variadic parameters for functions
* Параллельное восстановление
* Права доступа к столбцам
* Установка locale для отдельных баз данных
* Улучшенные hash индексы
* Оптимизирована производительность запросов EXISTS and NOT EXISTS
* Easier-to-use Warm Standby
* Automatic sizing of the Free Space Map
* Visibility Map ( сильно снижает vacuum overhead для редко изменяемых таблиц )
* Version-aware psql (backslash commands work against older servers)
* Подержка SSL сертификатов для аутентификации пользователя
* Per-function runtime statistics
* Easy editing of functions in psql
* New contrib modules: pg_stat_statements, auto_explain, citext, btree_gin
* Многочисленные другие изменения и улучшения


После шестнадцати месяцев разработки выпущен релиз СУБД PostgreSQL 8.4 в котором было реализовано около 300 изменений.

Основные новшества:

* Режим восстановления дампа базы в несколько параллельных потоков. Например, загрузка дампа базы размером 300 Гб на 8-ядерном сервере занимала стандартным образом 12 часов, при распараллеливании процесса загрузки на 8 потоков, время загрузи сократилось до 3 часов;
* Возможность установки привилегий для отдельных столбцов;
* Возможность определения разных параметров локализации для разных баз данных, что бывает востребовано в многоязычных окружениях;
* В комплект включена утилита pg_migrator, позволяющая осуществить миграцию базы с версии СУБД 8.3 на 8.4 с минимальным временем простоя;
* Новые средства для мониторинга запросов, позволяющие более глубоко оценить активность, связанную с заданными запросам. Кроме того, доступны утилиты для оценки работы текущих запросов, создаваемой нагрузки и выявления взаимных блокировок, просмотра статистики по использованию функций в режиме реального времени;
* Существенно понижена нагрузка на систему при выполнении VACUUM операций, оптимизации через внедрение "карт видимости" (Visibility Maps). Реализована автоматическая настройка «карт свободного пространства» (Free Space Map);
* Реализовано несколько новых возможностей, определенных в стандарте ANSI SQL2003:
o «Оконные» функции (Windowing Functions), позволяющие выполнить вычисления для определенного набора столбцов из общего объема выборки;
o Общие табличные выражения (Common Table Expression)
o Рекурсивные запросы с операциями соединения.
* Более простой в использовании сервер «тёплого резерва» (Warm Standby). Реализацию "горячего резерва", с возможностью выполнения select запросов на запасном сервере, отложили до версии 8.5;
* Поддержка задания переменного числа аргументов (Variadic) и значения по умолчанию для хранимых процедур;
* Улучшенная производительность для запросов с EXISTS и NOT EXISTS. Несколько новых оптимизаций, например, улучшенные hash-индексы, полусоединения (semi-joins) и антисоединения (anti-joins);
* «Многоколоночные» GIN-индексы. Префиксный поиск с использованием GIN-индексов;
* Терминал psql подстраивается под версию сервера, с которым работает. Упрощённое редактирование функций в терминале psql;
* Поддержка SSL-сертификатов для аутентификации пользователей;
* Новые contrib-модули: pg_stat_statements, auto_explain, citext, btree_gin.


Ссылка

Комментариев нет: