Новые и важные изменения в СУБД PostgreSQL

Тезисы доклада на конференции "Корпоративные базы данных-2006" [CD06]. Полная версия доклада доступна на сайте авторов [BS06].
Приводится обзор наиболее важных изменений в новой версии СУБД PostgreSQL 8.1.X и примерный список новых возможностей, находящихся в разработке.

Введение

8 ноября 2005 года на конференции по открытым базам данных во Франкфурте, Германия, от имени PGDG было объявлено о выпуске версии 8.1 СУБД PostgreSQL. К настоящему времени было выпущено 3 релиза с исправлениями замеченных ошибок и скорее всего в ближайшее время ожидается выпуск версии 8.1.4. Желающие уже могут скачать ее из стабильной ветки CVS (-r REL8_1_STABLE).

Год назад, на 10-й юбилейной конференции [CD05], один из авторов анонсировал [B05] некоторые новинки, ожидаемые в 8.1, которые вызвали интерес к этой версии.

Что ожидается в будущих версиях

Полный список новых возможностей приведен в большом списке TODO, который уже много лет поддерживает Брюс Момжан (Bruce Momjian), однако приоритеты для версии 8.1 еще не определены, более того, пока не определена продолжительность цикла разработки. Пока можно достаточно уверенно утверждать, что в 8.1 версии, помимо исправлений ошибок и улучшения существующей функциональности или приведение синтаксиса к стандарту SQL, будут:
    bitmap индексы (initial submit CVS)
  • интегрирование autovacuum в серверный процесс
  • Two phase commit JDBC driver
  • поддержка IN,OUT,INOUT параметров для pl/pgsql (CVS)
  • увеличение предела максимального количества аргументов у функции (100 по умолчанию) (CVS)
  • Оптимизация MIN,MAX за счет использования индексов (CVS)
  • Поддержка UTF-16
  • GiST Concurrency & Recovery ! (CVS)
Также, недавно проходило обсуждение о возможных планах о поддержке table partitioning, что сильно увеличивает производительность базы данных при работе с большими таблицами.
Здесь мы приведем обзор наиболее важных изменений, полный список которых доступен на странице проекта [R81].

Что нового в PostgreSQL 8.1 ?

Поддержка SQL: Поддержка очень больших баз данных: Производительность: Разное:

Что ожидается ?

Как всегда, точный список новинок в грядущей версии PostgreSQL трудно привести, что является обычным для свободного ПО, но примерный список запросов и замеченных ошибок обычно доступен на сервере проекта [TODO]. Отметим, некоторые запланированные возможности:

Заключение

Версия 8.1 является новым шагом в сторону больших и нагруженных систем, предназначенных для непрерывной работы в режиме 24x7x365. Это подтверждается тем, что большие компании начинают использовать PostgreSQL в реальном бизнесе. Так, Sony Online Entertainment объявила [SOE05] об инвестировании 1.5 млн. USD в Enterprise DB для перехода с Oracle на PostgreSQL 8.1. В России крупнейший оператор сотовой связи компания Вымпелком (Beeline) тестирует ПО работающее с PostgreSQL и находится на стадии заключения контракта на поддержку кластера PostgreSQL. Компания Sun Microsystem объявила [SUN05] об официальной поддержке PostgreSQL (входит в Solaris 10), "beta" версия пакетов, оптимизированных для Solaris, уже доступна [SUN06]. Кроме этого, Sun поддерживает PostgreSQL в режиме 24x7.

Традиционно, PostgreSQL широко используется в научных проектах. Так, нами был запущен проект SAI CAS (Catalog Access Service), в рамках международной программы Virtual Observatory (Виртуальная Обсерватория), как часть проекта Астронет (wwww.astronet.ru), ориентированного на профессиональное астрономическое сообщество и где в качестве СУБД для работы с очень большими астрономическими каталогами (1Tb), используется PostgreSQL 8.1. Сервер БД HP rx1620 (Itanium2) был предоставлен HP Russia.

Благодарности

Авторы благодарят Российский Фонд Фундаментальных Исследований (РФФИ) за поддержку проектов Астронет (05-07-90225-в), Научная Сеть (06-07-89182-а) и компанию HP Russia за предоставленное оборудование.

Ссылки

Авторы

Олег Бартунов и Федор Сигаев являются членами PostgreSQL Global Development Group (поддержка и развитие GiST в PostgreSQL) и авторами информационно-поисковой системы по PostgreSQL ресурсам - www.pgsql.ru. Они являются авторами целого ряда популярных расширений PostgreSQL, в том числе, модуль полнотекстового поиска tsearch2, поддержка иерархических типов данных ltree, работа с целочисленными массивами intarray. Более подробная информация доступна на странице PostgreSQL GiST development.