воскресенье, 30 мая 2010 г.

ORACLE - история версий

Категория: Базы Данных

Сегодня хочу продолжить рассказ о СУБД ORACLE, историю которой уже поведал. Но тогда я рассказал о истории создания и жизни этой корпорации. А сегодня хочу рассказать о тех версиях СУБД которая ORACLE выпускала или все еще выпускает.

Основной продукт корпорации – это реляционная СУБД ORACLE. Как уже было сказано, первой версии это СУБД не существовало, сразу появилась вторая. Эта версия была разработана для мини-компьютеров PDP-11 (от Digital Equipment) под операционную среду RSX-11. Основной язык программирования, который применялся для программирования – ассемблер PDP-11, но часть была написана и на языке Си.
Но вторая версия не была жестко привязана под именно эту операционную среду – она уже тогда была портируема под другие операционные среды PDP-11, такие как IAS, RSTS и UNIX. Примерно в это же время в ORACLE решили перенести СУБД в новую операционную систему VMS. Благодаря этому решению, ORACLE стала очень популярна на рынке корпоративных систем. Кроме переносимости, на пользователей благожелательно влияла полная поддержка возможностей языка SQL. Но вторая версия ORACLE имела и недостатки: была очень простой, не поддерживала транзакции, что могла привести к противоречивости данных внутри базы.

Чтобы исправить недочеты второй версии, ORACLE выпустила третью версию своей СУБД в 1983 году, которая вся была написана на Си. Благодаря этому уже не нужно было ломать голову о том, с помощью чего осуществлять переносимость кода. В этой версии стали поддерживаться транзакции – SQL-оператор либо выполнится полностью, либо не выполнится ничего.

В четвертой версии надежность СУБД была намного повышена, к тому же она была перенесена как на большие машины с ОС VM и MVS, так и на персональные компьютеры с 640 Кб оперативной памяти. В этой же версии реализовали модель контроля доступа (результат запроса не будет противоречить состоянию базы на начало этого запроса).

Примерно в 1985-1986 годах было выпущено две новых версии ORACLE 5.0 и 5.1 В первой версии реализовали клиент-серверную архитектуру и включили в поставку программу SQL*Net. В версии 5.1 были реализованы распределенные запросы. То есть появилась поддержка работы с базами данных, который физически находились на множестве разных компьютеров.

Шестая версия разрабатывалась для поддержки проведения транзакций в режиме реального времени. В нее же были включены генераторы последовательностей и блокировка записей. Теперь процессы чтения и записи не блокировали друг друга. ORACLE стала сетевой СУБД для OS/2. Macintosh и др. Был введен процедурный язык программирования PL/SQL (в него можно было включать SQL-операторы), кроме того в эту версию был включен язык четвертого поколения SQL*Forms и были включены определения ограничений.

Седьмая версия была более надежной, быстрее проводила операции ввода-вывода, но также был введен SQL-кеш, который позволял использовать ранее скомпилированные SQL-операторы. Кроме того, был создан разделяемый набор (пул) процессов сервера (что позволяло экономить память). Для администраторов СУБД также были сделаны улучшения. В этой версии были полностью реализованы ограничения целостности (по первичным и внешним ключам), PL/SQL все теснее и теснее вживался в СУБД. Процедуры могут быть инкапсулированы в пакеты. Полностью были реализованы триггеры. Была оптимизирована работа с триггерами – в общем, СУБД стала примерно такой, какой она сейчас является.

В 1997 году выпустили версию 8. СУБД стала более надежной, чем прошлая версия, кроме того – в нее были включены возможности объектно-ориентированного программирования. С этого момента ORACLE становится объектно-реляционной СУБД.

Девятая версия была выпущена в 2001 году. В нее была включена поддержка Java, OLAP и Data Mining.

В 2004 году выпустили десятую версию, которая могла реализовывать грид (grid) вычисления.

Последняя, на данный момент, одиннадцатая версия была выпущена год назад – в 2009. В ней можно без остановки сервера вносить изменения в метаданные с помощью языка PL/SQL.



Вот такая длинная история у СУБД ORACLE. В той компании, в которой я работаю, сейчас идет переход на одиннадцатую версия. Посмотрим, что она нам принесет в плане производительности.

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

Отправить комментарий