PostgreSQL
Материал из BeneWiKi.
| PostgreSQL |
|---|
| PostgreSQL | |
| Логотип PostgreSQL
| |
| Тип | Объектно-реляционная СУБД |
| Разработчик | сообщество PostgreSQL |
| ОС | Кроссплатформенное программное обеспечение |
| Текущая версия | 8.2.4 — 23 апреля 2007 |
| Лицензия | BSD |
| Сайт | www.postgresql.org |
PostgreSQL (произносится «Пост-Грес-Кью-Эл» или просто «постгрес») — свободная объектно-реляционная система управления базами данных (СУБД).
Является свободной альтернативой коммерческим СУБД (таким как Oracle Database, Microsoft SQL Server, IBM DB2 и СУБД производства Sybase) вместе с другими свободными СУБД (таким как MySQL и Firebird).
Содержание |
[править] Поддержка стандартов, возможности, особенности
PostgreSQL поддерживает многие из возможностей стандарта SQL:2003 (ISO/IEC 9075).
На данный момент (версия 8.2.4-1), в PosgreSQL имеются следующие ограничения:
| Максимальный размер базы данных | Нет ограничений |
| Максимальный размер таблицы | 32 ТБайт |
| Максимальный размер записи | 1,6 ТБайт |
| Максимальный размер поля | 1 ГБайт |
| Максимум записей в таблице | Нет ограничений |
| Максимум полей в таблице | 250—1600, в зависимости от типов полей |
| Максимум индексов в таблице | Нет ограничений |
Сильными сторонами PostgreSQL считаются:
- поддержка БД практически неограниченного размера;
- мощные и надёжные механизмы транзакций и репликации;
- расширяемая система встроенных языков программирования: изначально поддерживаются SQL, PL/pgSQL, PL/Perl, PL/Python и PL/Tcl, а также имеется поддержка загрузки C-совместимых модулей;
- поддержка со стороны многих языков программирования: C/C++, Java, Perl, Python, Ruby, ECPG, Tcl, PHP и других.
- наследование.
- легко расширяемая система типов.
PostgreSQL поддерживает много типов полей двумерной оконной графики (точки, прямые, прямоугольники и т. д.). Есть поддержка массивов данных (несколько экземпляров однотипных данных в одном поле одной записи). Также имеется поддержка регулярных выражений в стиле языка Perl.
Главным слабым местом, происходящим из архитектуры самой СУБД, считается масштабируемость: в PostgreSQL имеются общие для всех соединений «узлы».
Прочие возможности:
- Соблюдение принципов ACID.
- Соответствие стандартам ANSI SQL-92 и SQL-99.
- Триггеры, ограничения, правила и хранимые процедуры.
- Поддержка запросов с
OUTER JOIN,UNION,UNION ALLandEXCEPTи подзапросов. - Последовательности.
- Контроль целостности.
- Репликация.
- Поддержка Юникода.
- Поддержка регулярных выражений в стиле Perl.
- Встроенная поддержка SSL и Kerberos.
- Блокировки точнее, чем на уровне записи.
- Функциональные и частичные индексы.
- Подгружаемые расширения, поддерживающие SHA1, MD5, XML и другую функциональность (API открыт).
- Средства для генерации совместимого с другими системами SQL-кода и импорта из других систем.
- Возможность использования нескольких популярных языков для написания хранимых процедур. Среди них: Perl, PHP, Python, C.
[править] Надёжность
Согласно результатам автоматизированного исследования различного ПО на предмет ошибок, в исходном коде PostgreSQL было найдено 20 проблемных мест на 775 000 строк исходного кода (в среднем, одна ошибка на 39 000 строк кода). Для сравнения: MySQL — 97 проблем, одна ошибка на 4 000 строк кода; FreeBSD (целиком) — 306 проблем, одна ошибка на 4 000 строк кода; Linux (только ядро) — 950 проблем, одна ошибка на 10 000 строк кода.
[править] См. также
- Berkeley DB
- MySQL
- ODBC
- Азбука SQL
- Евгений Балдин. PostgreSQL. ЧАСТЬ 1: Введение - LXF № 11(85) НОЯБРЬ 2006
- Евгений Балдин. PostgreSQL. ЧАСТЬ 2: Работа с базой - LXF №12(86) ДЕКАБРЬ 2006
- Евгений Балдин. PostgreSQL. ЧАСТЬ 3: Возможности PostgreSQL - LXF № 1(87/88) ЯНВАРЬ 2007
- Евгений Балдин. PostgreSQL. ЧАСТЬ 4: Интерфейсы - LXF № 2(89) ФЕВРАЛЬ 2007
- Евгений Балдин. PostgreSQL. ЧАСТЬ 5: Настройка PostgreSQL - LXF № 3(90) МАРТ 2007
- Евгений Балдин. PostgreSQL. ЧАСТЬ 6: Дополнительные главы - LXF № 4(91) АПРЕЛЬ 2007
- GridSQL
[править] Ссылки
- Домашняя страница PostgreSQL
- Документация PostgreSQL
- Каталог ресурсов PostgreSQL и специализированный поиск по ним
- Документация PostgreSQL (множество переводов на рус.)
- Форум PostgreSQL
- Статья «Что такое PostgreSQL?»(русск.) автор Олег Бартунов
- Проект Postgres Tips
- linuxformat.ru


