Новости IT, хостинга
  Android, Apple, Facebook, Google, Linux, Microsoft, Samsung, Twitter, Интернет, Россия, браузеры, обновление ПО, онлайн-сервисы, операционные системы, планшеты, рынок ИТ, сделки, смартфоны, социальные сети, уязвимости  
  новостей: 10361
  комментариев: 2249

Релиз СУБД PostgreSQL 9.0


После года разработки вышла версия 9.0 СУБД PostgreSQL в которой представлено более 200 улучшений. PostgreSQL 9.0 является первым релизом со встроенной системой бинарной репликации в режиме реального времени, позволяющей организовать горячее резервное копирование и потоковую репликацию.

Ключевые улучшения:
Реализация режима "горячего резерва" (Hot Standby), при котором появилась возможность выполнения select запросов на запасном сервере, т.е. теперь можно штатными средствами организовать master-slave репликацию с практически нулевой дополнительной нагрузкой на сервер (с master сервера просто копируются WAL-логи (write-ahead logging), без каких-либо блокировок и дополнительного вызова триггеров). Ранее синхронизированный сервер не мог выполнять запросы, и находился в неактивном режиме, при котором он мог только перехватить управление в случае сбоя основного сервера;
Поддержка режима потоковой репликации (Streaming Replication), суть которой в организации непрерывной передачи бинарных WAL-логов нескольким запасным серверам PostgreSQL;
Поддержка 64-разрядной версии для платформы Windows;
Замена pg_listener на новый работающий в памяти механизм Listen/Notify, ориентированный на высокопроизводительный обмен сообщениями и обслуживание очередей. Listen/Notify реализован в виде очереди событий в оперативной памяти, вместо таблицы;
Для автоматизации обновления базы при переходе на более новую ветку PostgreSQL (с 8.3 или 8.4 до 9.0) добавлена утилита pg_upgrade;
Через оператор "DO" теперь можно выполнять код в SQL-выражении на процедурном языке без создания отдельной функции. Директива "DO" теперь поддерживает ad-hoc и "anonymous" блоки;
Возможность назначать триггеры для отдельных столбцов и выполнять триггеры по условиям;
По умолчанию теперь активируется встроенный язык PL/pgSQL. Переработан парсер PL/pgSQL. Разнообразные улучшения также добавлены в реализации PL/Perl и PL/Python, например, добавлена поддержка Python 3;
Добавлены "исключающие ограничения", представляющие собой обобщенный аналог UNIQUE и реализующие новые способы гарантии логической целостности данных в базе. Возможность задания флага DEFERRABLE для выражений с признаком UNIQUE (отложенная UNIQUE-проверки);
Улучшена поддержка хранения в одном поле произвольного набора данных в формате ключ/значение;
В оптимизаторе появились средства для автоматического удаления лишних JOIN-ов и оптимизации для ORM-запросов (object relational mapper).


Автоматический возврат числа строк, фигурирующих в выполненном SELECT-запросе. В psql данное значение не отображается, но может быть получено с использованием программного интерфейса, подобного libpq.
Поддержка функций ROWS PRECEDING и ROWS FOLLOWING в WINDOW-блоке SELECT-запроса, позволяющих сформировать кадр из заданного числа строк, относительно текущей позиции.
Использование блока ORDER BY внутри агрегатных функций (например: array_agg(a ORDER BY b)), теперь не нужно прибегать к ухищрениям для получения упорядоченного набора записей на входе агрегатных функций;
Добавлена возможность контроля доступа к большим объектам (large objects);
В функции регулярных выражений добавлена поддержка независимых от регистра проверок и классификации символов, привязанной к текущей локализации, при использовании кодировки UTF8 на сервере;
Для упрощения разграничения доступа для множества объектов реализованы конструкции "GRANT ALL ON" и "ALTER DEFAULT PRIVILEGES". Добавлена поддержка установки прав для BLOB-ов (больших бинарных объектов);
Возможность использования именованных параметров в функциях;
Поддержка отложенных проверок уникальных ключей;
Поддержка конструкции IF EXISTS в DROP COLUMN/CONSTRAINT;
Возможность вывода результатов работы EXPLAIN в YAML, XML и JSON форматах;
Новый шестнадцатиричный формат ввода и вывода для типа данных BYTEA;
Новые возможности безопасности - аутентификация через RADIUS, улучшения в LDAP, модуль проверки стойкости паролей "passwordcheck";
Улучшения в "hstore", включая новые функции и поддержка данных большого размера;
Новая реализация VACUUM FULL, полностью перезаписывающая таблицы и индексы, что быстрее и эффективнее в большинстве случаев, чем перемещение отдельных строк для повышения компактности хранилища;
Поддержка многопоточности в утилите pgbench, что позволяет задействовать все CPU в системе и сгенерировать более реалистичную тестовую нагрузку.

Дополнение: Доступен перевод на русский язык официального пресс-релиза о выходе PostgreSQL 9.0. Практические примеры по использованию новых конструкций PostgreSQL 9.0 можно посмотреть в wiki-документе "What's new in PostgreSQL 9.0"

Источник: opennet.ru

  21 сентября 2010 445
Версия для печати

← предыдущая новость следующая новость →

Мой комментарий
Ваше имя*:
Email:
Комментарий*:
Зарегистрироваться автоматически: Вы будете зарегистрированы на сайте автоматически при добавлении комментария. Обязательно заполните поле Email для этого.
Сумма чисел 9 и 17*:            


Хостеры (2448)
HostDB (35)
Софт (2640)
Железо (993)
Интернет (1435)
Статистика и аналитика (3324)




Отправить сообщение администратору

Сумма чисел 30 и 5*:


Яндекс цитирования
сообщить о неточности