Скачиваний:
54
Добавлен:
01.04.2014
Размер:
657.92 Кб
Скачать

1.6. Реляционные и другие системы

Почти все продукты баз данных, созданные с конца 70-х годов, основаны на подходе, который называют реляционным (relational); более того, подавляющее большинст­во научных исследований в области баз данных в течение последних 25 лет проводилось (возможно, косвенно) в этом направлении. На самом деле, реляционный подход представляет собой основную тенденцию сегодняшнего рынка, и реляционная модель— единственная наиболее существенная разработка в истории развития баз данных. По этим причинам, а также учитывая, что реляционная модель основана на некоторых математических аспектах и, следовательно, идеально подходит для изло­жения концепций и принципов систем баз данных, основное внимание в этой книге уделяется реляционным системам и реляционному подходу.

Что мы подразумеваем под реляционной системой? К сожалению, на этом этапе обсуждения невозможно дать полный ответ на этот вопрос; однако можно (и нужно!) дать грубый приблизительный ответ, который в дальнейшем будет существенно уточнен. Итак, вкратце, реляционная система — это система, основанная на следую­щих принципах:

1) данные для пользователя передаются в виде таблиц (и никак иначе);

2) пользователю предоставляются операторы (например, для выборки данных), ге­нерирующие новые таблицы из старых. Например, в системе будет оператор по­лучения подмножества строк в данной таблице и оператор получения подмноже­ства столбцов — а подмножество строк и подмножество столбцов, конечно, можно рассматривать как новые таблицы.

Причина, по которой такие системы называют реляционными, в том, что англий­ский термин "relation" (отношение), по существу, просто математическое название для таблицы. Поэтому на практике в большинстве случаев термины "отношение" и "таблица" можно считать синонимами. Обсуждение этого вопроса будет продолжено далее в этой книге.

Как уже отмечалось, в дальнейшем будет дано более точное определение, а сейчас мы будем использовать данное. Рис. 1.8 иллюстрирует вышесказанное. Данные на рис. 1.8,а состоят из одной таблицы под названием CELLAR (на самом деле это вер­сия таблицы CELLAR с рис. 1.1, уменьшенная для того, чтобы с ней легче было рабо­тать). Два примера выборки — один с получением подмножества строк и второй с получением подмножества столбцов — показаны на рис. 1.8,б.

а) Дана таблица:CELLAR

WINE

YEAR

BOTTLES

Chardonnay Fume Blanc Pinet Noir Zinfandel

91 91 88 89

4

2

3

9

б) Примеры применения операторов:

  1. Подмножество строк: SELECT WINE, YEAR, BOTTLES FRОM CELLAR WHERE YEAR > 90 ;

2. Подмножество столбцов: SELECT WINE, BOTTLES FRCM CELLAR ;

результат:

WINE

YEAR

BOTTLES

Chardonnay

Fume Blanc

91

91

4

2

WINE

BOTTLES

Chardonnay

Fume Blanc Pinet Noir Zinfandel

4

2

3

9

Рис. 1.8. Структура данных и операторы в реляционной системе (примеры)

Замечание. Эти выборки выполнены с помощью оператора select языка SQL, упомянутого выше в этой главе.

Теперь можно различать реляционные и нереляционные системы по следующим признакам. Как уже отмечалось, пользователь реляционной системы видит данные, представленные в таблицах и никак иначе. Пользователь нереляционной системы, на­против, видит данные, представленные в других структурах вместо таблиц реляцион­ной системы или наряду с ними. И для работы с этими другими структурами приме­няются другие операции. Например, в иерархической системе данные представлены пользователю в форме набора древовидных структур ("иерархий"), а среди операций работы с иерархическими структурами есть операции перемещения по иерархиче­ским путями вниз и вверх по деревьям.

Рассмотрим этот вопрос немного подробнее. На практике системы баз данных мо­гут быть легко распределены по категориям в соответствии со структурами данных и операторами, которые они предоставляют пользователю. Прежде всего, старые (дореляционные) системы можно разделить на три большие категории, а именно: системы инвертированных списков, иерархические и сетевые.Приведем примеры коммерческих продуктов, которые можно отнести к перечисленным категориям.

Системы инвертированных списков: CA-DATACOM/DB компании Computer Associates International Inc. (ранее был известен как DATACOM/DB компании Applied Data Research).

Иерархические системы: IMS корпорации IBM.

Сетевые. CA-IDMS/DB компании Computer Associates International Inc. (ранее был известен как IDMS компании Cullinet Software inc.).

Первые реляционные продукты начали появляться в конце 1970-х— начале 1980-х годов. Во время написания этой книги (1993 год) существовало более 100, а возможно более 200 коммерческих реляционных продуктов, предназначенных для работы с любым программным и аппаратным обеспечением, которое можно себе представить. Среди них DB2 корпорации IBM; Rdb/VMS корпорации Digital Equipment; ORACLE корпорации Oracle; INGRES компании Ingres Division of The ASK Group Inc.; SYBASE компании Sybase Inc. и многие другие.

Несколько позже исследования велись в направлении так называемых "постреляционных" систем, некоторые из них основаны на совместимых снизу вверх расширениях оригинального реляционного подхода, другие представляют собой по­пытки сделать что-то совершенно отличное. Мы перечислим лишь некоторые наибо­лее поздние из них, дав их названия и даже не пытаясь выяснить, что эти названия оз­начают или чего хотели достичь исследователи.

• Дедуктивные СУБД.

• Экспертные СУБД.

• Расширяемые СУБД.

• Объектно-ориентированные СУБД.

• Семантические СУБД.

• Универсальные реляционные СУБД.

Начали появляться отдельные продукты, которые можно отнести к категории объ­ектно-ориентированных систем; сюда можно отнести GemStone корпорации Servio, ObjectStore корпорации Object Design и OpenODB корпооации Hewlett-Pаскard.

В последующих частях книги мы рассмотрим некоторые из этих новых направле­ний, особенно объектно-ориентированные системы.

Соседние файлы в папке Дейтл Введ в БД