Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Теория СУБД.docx
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
107.03 Кб
Скачать

Какие они бывают?

Почти сорокалетний опыт развития баз данных показал жизнеспособность трех ти­пов моделей данных: иерархической, сетевой и реляционной.

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

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

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

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

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

Наконец, доктор наук математик Э.Ф. Кодд (США) придумал реляцион­ную модель, гениальную по своей простоте. Единственной структурой данных, которую видит пользователь, является двухмерная таблица. Назва­ние "реляционная" происходит от слова relation (англ. "отношение"). Кодд придумал также основные опе рации, которые легко могут обрабо­тать данные в таблицах и получить результат в виде новой таблицы. При­чем уникальность таких манипуляций данными в том, что за одну операцию можно обработать одновременно все данные таблицы и даже нескольких таблиц. И тебе не придется писать ни­каких циклических процедур, обраба­тывая каждую запись отдельно!

Простота использования реляцион­ной модели обеспечила ее безуслов­ный успех, который длится вот уже более 30-ти лет. Одно из достоинств этой модели – возможность преобра­зовать любую структуру данных в простую двумерную таблицу.