Смекни!
smekni.com

Иерархические структуры в реляционных базах данных (стр. 5 из 9)

СУБД считается реляционной при выполнении следующих двух условий, предложенных еще Э. Коддом : (1) поддерживает реляционную структуру данных и (2) реализует по крайней мере операции селекции, проекции и соединения отношений. В последующем был создан целый ряд реляционных СУБД, в той или иной мере отвечающих данному определению. Многие СУБД представляют собой существенные расширения реляционной модели, другие являются смешанными, поддерживая несколько даталогических моделей.

Суть реляционной СУБД можно пояснить на следующем простом примере (рис. 4).

Файл авторов публикаций БД

№ п/п

Автор

Адрес

Телефон

Число публ.

6

Купцов

Москва

635-6078

140

7

Бухтяк

Томск

637-2050

140

8

Терпугов

Томск

538-584

250

Файл публикаций РБД

№ п/п

Назв. Публикации

Тип публ.

Дата

Объём

в п. л.

6

Основы …

Статья

2.95

2.5

7

Проблема …

Книга

3.97

35

8

Теория …

Статья

6.96

3.8

Рис. 4 Простой пример, иллюстрирующий принцип реляционной модели

В некоторой реляционной БД (РБД) имеются два файла авторов и публикаций, каждый из которых содержит определенное число записей/ состоящих из фиксированного числа полей (соответственно 4 и 5), представляющих данные по соответствующим элементам предметной области (рис. 4). Можно сказать, что определены два отношения (фaйла), имеющие общий элемент — значения поля № п/п. Операции реляцианной алгебры могут объединять два типа записей по этому общему элементу. Например, в результате соединения запись Бухтяк может представится в следующем виде:

Бухтяк<Томск><637-2050><40><Основы...><статья><2.95><2.5>....

т.е. к сведениям об авторе добавляются сведения обо всех его публикациях, имеющихся в РБД. Связь между записями допускается по нескольким полям, позволяя образовывать достаточно сложные операции. Поля данных, связывающие вместе две записи, могут быть уникальными для данной пары, но могут дублироваться и во многих других записях. Они могут повторяться неоднократно, связывая между собой записи. Аналогичным образом можно проиллюстрировать выполнение в реляционной модели операций проекции и селекции.

Реляционная СУБД должна четко отслеживать взаимосвязи записей в БД во избежание потери или искажения информации. С этой целью СУБД постоянно пересчитывает число связей для каждой записи БД в прямом и обратном направлениях, что требует существенных временных затрат для больших БД. Простота и стройность реляционной алгебры делают ее весьма привлекательной для организации реляционных БД, что мы и видим, прежде всего, для класса ПК. Однако в действительности реальные данные предметной области не укладываются в указанную модель (например, отношения могут содержать повторяющиеся записи и т.д.). Поэтому наряду с сугубо реляционными существуют и другие даталогические модели СУБД и их различные модификации и сочетания, обеспечивая широкий круг решаемых на их основе информационных, коммерческих, управленческих, финансовых, вычислительных и других типов задач. Из наиболее известных примеров реляционных СУБД можно отметить такие, как: dBase, DB/2, ORACLE, Paradox и ряд других.

Массовое развитие класса ПК оказало весьма существенное влияние на развитие инфотехнологии и БД-технологии в частности, привнося элементы последней в массовую инфотехнологию. Прежде всего, этому способствовало развитие мощной индустрии по созданию разнообразных СУБД для ПК. Если создание СУБД для ЭВМ общего назначения и (в значительной мере) мини-ЭВМ занимало длительный промежуток времени и число таких коммерческих СУБД было невелико — практически весь их перечень был на слуху у специалистов по компьютерной инфотехнологии, то с появлением класса ПК наряду с мощным развитием для них ПС различного назначения начали быстро появляться СУБД. При этом БД-технология начала активно проникать и в ПС другого назначения (электронные таблицы, интегрированные и статистические пакеты и т.д.). К БД-технологии были приобщены широкие круги пользователей ПК. Во многих разработках для ПК начали применяться собственные СУБД различных организации и назначения. На наш взгляд, ряд причин способствовал такому массовому использованию БД-технологии:

— массовое использование ПК в приложениях, предопределяющих работу с БД;

— резкое уменьшение цикла разработки ПС из-за персонального характера работы;

— наличие достаточно развитых системных и инструментальных средств;

— наличие внешней памяти большой емкости на "винчестерах".

Эти и другие причины обеспечили как широкий спрос на СУБД для ПК, так и хорошие предпосылки для его быстрого удовлетворения. Наряду с мощными фирмами, специализирующимися на разработке коммерческих СУБД к разработкам и/или адаптации уже готовых СУБД для ПК приступили и крупные фирмы, ранее ориентированные в этой области на приложения к ЭВМ других классов (Oracle, IBM, Relational Technology и др.). Все это способствовало интенсивному проникновению БД-технологии в массовую инфообработку. С другой стороны, широкое использование ПК в весьма обширном спектре прикладных областей способствовало выдвижению к СУБД целого ряда актуальных требований и, в первую очередь, по повышению уровня интерфейсов с пользователем и другими приложениями.

Разработанное в настоящее время большое число различного назначения СУБД позволяет создавать и эксплуатировать системы БД на всех классах и типах ЭВМ, поддерживая различные даталогические модели и обеспечивая нужды широкого круга приложений

Средства современных СУБД настолько разнообразны, что способны удовлетворить потребности самого широкого круга пользователей — от профессионала в области разработки систем БД различных типа и назначения до пользователя, не обладающего достаточным уровнем компьютерной грамотности. В первую очередь, это относится к СУБД, созданным для класса ПК. Эти СУБД характеризуются не только своим количеством, но и функциональным разнообразием: от простых файловых систем до функционально полных СУБД, в основном реляционного типа. Многие из коммерческих СУБД поддерживают многопользовательскую работу и работу в сетях ЭВМ, как локальных, так и глобальных. К средствам, непосредственно относящимся к СУБД, можно отнести и многочисленные средства их окружения: генераторы и конверторы данных и программ, компиляторы языков программирования БД-приложений, генераторы создания различного назначения и уровня интерфейсов с БД в рамках традиционных ЯВУ и т.д.

Такое многообразие инструментальных и прикладных средств по СУБД позволяет выбирать наиболее адекватные нуждам пользователя, обеспечивая эффективное использование вычислительных ресурсов и существенное сокращение сроков разработки конкретных БД-технологий. В подавляющем большинстве СУБД для ПК ориентированы на интерактивный режим работы с пользователем, широко используя удобные и дружелюбные системы интерфейсов на основе простых и понятных меню. В СУБД, поддерживающих языки программирования БД-приложений, средства такого интерфейса избавляют пользователя от необходимости знания синтаксиса языка для обеспечения требуемых функций. Ряд популярных СУБД предусматривают несколько уровней интерфейса, обеспечивающих работу с ними различной квалификации пользователей (dBase IV, Paradox, др.). Большое внимание уделено эффективной системе Help-информации по СУБД, включающей электронные краткие обучающие курсы с демонстрацией наиболее часто используемых приемов работы с конкретным пакетом.