Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
VPS в 21 локации

От 104 рублей в месяц

Безлимитный трафик. Защита от ДДоС.

🔥 VPS до 5.7 ГГц под любые задачи с AntiDDoS в 7 локациях

💸 Гифткод CITFORUM (250р на баланс) и попробуйте уже сейчас!

🛒 Скидка 15% на первый платеж (в течение 24ч)

Скидка до 20% на услуги дата-центра. Аренда серверной стойки. Colocation от 1U!

Миграция в облако #SotelCloud. Виртуальный сервер в облаке. Выбрать конфигурацию на сайте!

Виртуальная АТС для вашего бизнеса. Приветственные бонусы для новых клиентов!

Виртуальные VPS серверы в РФ и ЕС

Dedicated серверы в РФ и ЕС

По промокоду CITFORUM скидка 30% на заказ VPS\VDS

Учебник PostgreSQL 7.3.3

Всемирная группа разрабочиков PostgreSQL
Copyright © 1996-2002 by Всемирная Группа Разработчиков PostgreSQL
Перевёл с английского Виктор Вислобоков

Преамбула
1. Что такое PostgreSQL?
2. Краткая история PostgreSQL
2.1. Проект POSTGRES департамента Беркли
2.2. Postgres95
2.3. PostgreSQL
3. О чем эта книга
4. Обзор ресурсов документации
5. Терминология и нотация
6. Руководство по отправке сообщений об ошибках
6.1. Идентификация ошибок
6.2. Что нужно сообщить
6.3. Куда отправлять сообщения об ошибках
1. Первые шаги
1.1. Установка
1.2. Фундаментальные основы архитектуры
1.3. Создание базы данных
1.4. Доступ к базе данных
2. Язык SQL
2.1. Введение
2.2. Концепции
2.3. Создание новой таблицы
2.4. Заполнение таблицы записями
2.5. Запросы к таблицам
2.6. Объединения таблиц (Join)
2.7. Агрегатные функции
2.8. Обновление данных в таблицах
2.9. Удаление данных из таблиц
3. Расширенные возможности
3.1. Введение
3.2. Представления (Views)
3.3. Внешние ключи (Foreign Keys)
3.4. Транзакции
3.5. Наследование
3.6. Заключение
Библиография

2. Краткая история PostgreSQL

Объектно-реляционная СУБД теперь известная как PostgreSQL (и ранее называемая Postgres95) ведЈт свое происхождение от пакета POSTGRES, который был написан в департаменте Беркли, Калифорнийского Университета. Более чем десятилетняя разработка PostgreSQL сделала этот продукт одной из наиболее продвинутых СУБД с открытым исходным кодом в мире, предлагая многоверсионное управление параллельным доступом, поддерживая практически все конструкции SQL (включая подзапросы, транзакции и определяемые пользователем типы и функции) и имея широкий диапазон языков, с помощью которых можно работать с СУБД (включая C, C++, Java, Perl, Tcl и Python).

2.1. Проект POSTGRES департамента Беркли

Реализация реляционной СУБД POSTGRES началась в 1986. Начальные концепции для этой системы были представлены в The design of POSTGRES, а определение начальной модели данных было осуществлено в The POSTGRES data model. Устройство системы управления на тот момент, было описано в The design of the POSTGRES rules system. Обоснование архитектуры и менеджеры хранения были детально описаны в The design of the POSTGRES storage system.

Затем вышло несколько версий Postgres. Первая "demoware" система заработала в 1987 и была продемонстрирована в 1988 на Конференции ACM-SIGMOD. Версия 1, описанная в The implementation of POSTGRES была выпущена в июне 1989 года и могла работать с несколькими внешними пользователями. В ответ на критику первого варианта системы управления, был сделан следующий вариант (вариант A commentary on the POSTGRES rules system) был переделан как (On Rules, Procedures, Caching and Views in Database Systems) и Версия 2, выпущенная в Июне 1990 года была основана на новой системе управления. Версия 3 выпущенная в 1991, включала в себя поддержку нескольких менеджеров хранения, улучшенный обработчик запросов и вновь переписанную систему управления. Большинство следующих версий до появления Postgres95 (см. ниже) были сфокусированы на вопросах переносимости и стабильности.

POSTGRES был использован для реализации многих различных исследований и написания приложений. Сюда вошли: система анализа финансовых данных, пакет мониторинга производительности струйных установок, база данных перемещений астероидов, база данных медицинской информации и несколько географических информационных систем. POSTGRES также использовался как средство обучения в нескольких университетах. Наконец компания Illustra Information Technologies (позднее влившаяся в компанию Informix, которой теперь владеет IBM.) взяла код этой СУБД и коммерциализировала его. POSTGRES стал приоритетным менеджером данных для проекта научных вычислений Sequoia 2000 после 1992 года.

Размер сообщества пользователей этого продукта удвоился в 1993 году. Стало весьма очевидно, что обслуживание прототипа кода и его поддержка занимают гораздо больше времени, чем сами исследования в области баз данных. Пытаясь снизить нагрузку, связанную с поддержкой, проект Беркли POSTGRES официально прекратил своЈ существование с выходом версии 4.2.

2.2. Postgres95

В 1994, Эндрю Ю (Andrew Yu) и Джолли Чен (Jolly Chen) добавили в POSTGRES интерпретатор языка SQL. Затем Postgres95 был выложен в Интернет, чтобы найти свой собственный путь в мире продуктов с открытым исходным кодом, как потомок, основанный на оригинальном коде Беркли POSTGRES.

Postgres95 был полностью приведЈн к стандарту ANSI C и сократил свой размер на 25%. Были внесены многие внутренние изменения, которые увеличили производительность и обслуживаемость кода. Postgres95 версий 1.0.x был быстрее на 30-50% согласно Wisconsin Benchmark по сравнению с POSTGRES, Version 4.2. За исключением исправления ошибок, были сделаны следующие серьЈзные расширения:

  • Язык запросов PostQUEL был заменен на SQL (реализованный в этом сервере). Подзапросы не поддерживались вплоть до выхода PostgreSQL (см. ниже), но в Postgres95 их можно было симмитировать с помощью функций SQL, определяемых пользователем. Аггрегаты были переписаны. Также в запросы была добавлена поддержка GROUP BY. Интерфейс libpq остался доступным для программ на C.

  • В дополнении к программе monitor, была предоставлена новая программа (psql), которая использовала библиотеку GNU Readline и была предназначена для интерактивных SQL запросов.

  • Создана новая front-end библиотека, libpgtcl, поддерживающая клиентов, основанных на Tcl. Простая оболочка pgtclsh, предоставляющая новые команды Tcl для обеспечения взаимодействия Tcl программ и Postgres95.

  • Была тщательно пересмотрена работа с большими объектами. Инверсионные большие объекты представляли собой только механизм для хранения больших объектов. (Инверсионная файловая система была удалена).

  • Была удалена instance-level система управления. Правила были доступны как переписанные правила.

  • Вместе с исходным кодом стал поставляться краткий учебник по особенностям работы с SQL в Postgres95.

  • Для построения проекта стал использоваться GNU make (вместо BSD make). Также, Postgres95 был скомпилирован со стандартной версией GCC (выравнивание данных типа double было исправлено).

2.3. PostgreSQL

В 1996 году было решено, что имя "Postgres95" не соответствует настоящему времени. Мы выбрали новое имя PostgreSQL чтобы подчеркнуть отличие от оригинального POSTGRES и выход множества версий с поддержкой SQL. В тоже время, мы установили нумерацию версий начиная с 6.0, вернувшись обратно к нумерации, которую начали в проекте Беркли POSTGRES.

При разработке Postgres95 акцент ставился на обнаружение и понимание существующих проблем в коде продукта. В PostgreSQL акцент сместился на расширение возможностей и совместимости при продолжении работы во всех других областях.

Главные изменения в PostgreSQL включают:

  • Блокировка на уровне таблиц была заменена на многоверсионное управление параллельным доступом, что позволяет клиентам производящим чтение, продолжать чтение данных во время работы клиентов производящих запись, а также позволяет производить горячее резервное копирование программой pg_dump в то время, как база остается доступной для запросов.

  • Были реализованы такие важные возможности, как подзапросы, умолчания, ограничения целостности и триггеры.

  • Были добавлены возможности для обеспечения совместимости со стандартом SQL92, включая первичные ключи, идентификаторы запросов, literal string type coercion, создание типов, а также двоичный и шестнадцатеричный ввод целых чисел.

  • Были улучшенные встроенные типы данных, включая новые широкодиапазонные типы даты/времени и дополнительные геометрические типы данных.

  • Скорость работы backend кода была увеличена приблизительно на 20-40%, а время запуска backend'а было сокращено на 80% по сравнению с версией 6.0.

Далее

VPS/VDS серверы. 30 локаций на выбор

Серверы VPS/VDS с большим диском

Хорошие условия для реселлеров

4VPS.SU - VPS в 17-ти странах

2Gbit/s безлимит

Современное железо!

Бесплатный конструктор сайтов и Landing Page

Хостинг с DDoS защитой от 2.5$ + Бесплатный SSL и Домен

SSD VPS в Нидерландах под различные задачи от 2.6$

✅ Дешевый VPS-хостинг на AMD EPYC: 1vCore, 3GB DDR4, 15GB NVMe всего за €3,50!

🔥 Anti-DDoS защита 12 Тбит/с!

Новости мира IT:

Архив новостей

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 7861149
Пресс-релизы — pr@citforum.ru
Обратная связь
Информация для авторов
Rambler's Top100 TopList liveinternet.ru: показано число просмотров за 24 часа, посетителей за 24 часа и за сегодня This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2019 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...