Иерархическая модель базы данных

редактировать

A иерархическая модель базы данных - это модель данных, в котором данные организованы в древовидную -подобную структуру. Данные хранятся в виде записей, которые связаны друг с другом посредством ссылок . Запись - это набор полей, каждое из которых содержит только одно значение. Тип записи определяет, какие поля содержит запись.

Иерархическая модель базы данных требует, чтобы каждая дочерняя запись имела только одного родителя, тогда как каждая родительская запись могла иметь одну или несколько дочерних записей. Чтобы получить данные из иерархической базы данных, необходимо пройти по всему дереву, начиная с корневого узла. Эта модель признана первой моделью базы данных, созданной IBM в 1960-х.

Содержание
  • 1 История
  • 2 Примеры иерархических данных, представленных в виде реляционных таблиц
  • 3 См. Также
  • 4 Ссылки
  • 5 Внешние ссылки
История

Иерархическая структура была разработана IBM в 1960-х годах и использовалась в ранних мэйнфреймах СУБД. Отношения между записями образуют древовидную модель. Эта структура проста, но негибка, потому что отношения ограничиваются отношениями «один ко многим». IBM Information Management System (IMS) и RDM Mobile являются примерами иерархической системы баз данных с несколькими иерархиями над одними и теми же данными. RDM Mobile - это недавно разработанная встроенная база данных для мобильной компьютерной системы.

Иерархическая модель данных потеряла популярность, поскольку реляционная модель Кодда стала фактически используемым стандартом. практически всеми основными системами управления базами данных. Реализация иерархической модели в реляционной базе данных впервые была опубликована в 1992 году (см. Также модель вложенных множеств ). Иерархические схемы организации данных вновь проявились с появлением XML в конце 1990-х (см. Также база данных XML ). Иерархическая структура сегодня используется в основном для хранения географической информации и файловых систем.

В настоящее время иерархические базы данных по-прежнему широко используются, особенно в приложениях, требующих очень высокой производительности и доступности, таких как банковское дело и телекоммуникации. Одна из наиболее широко используемых коммерческих иерархических баз данных - IMS. Другим примером использования иерархических баз данных является Реестр Windows в операционных системах Microsoft Windows.

Примеры иерархических данных, представленных в виде реляционных таблиц

Организация может хранить информацию о сотрудниках в таблице, содержащей атрибуты / столбцы, такие как номер сотрудника, имя, фамилия и номер отдела. Организация предоставляет каждому сотруднику компьютерное оборудование по мере необходимости, но компьютерное оборудование может использоваться только тем сотрудником, за которым оно закреплено. Организация может хранить информацию о компьютерном оборудовании в отдельной таблице, которая включает серийный номер каждой детали, тип и сотрудника, который ее использует. Таблицы могут выглядеть следующим образом:

сотрудниктаблица
EmpNoИмяФамилияDept. Число
100МэвишФаки10-L
101ХамадХашим10-L
102даршанAr20-B
103ChaayaSandakelum20-B
компьютертаблица
Серийный номерТипПользовательский EmpNo
3009734-4Компьютер100
3-23-283742Монитор100
2-22-723423Монитор100
232342Принтер100

В этой модели таблица данных employeeпредставляет "родительскую" часть иерархии, а таблица computerпредставляет "дочернюю" «часть иерархии. В отличие от древовидных структур, обычно встречающихся в алгоритмах компьютерного программного обеспечения, в этой модели дети указывают на родителей. Как показано, каждый служащий может владеть несколькими единицами компьютерного оборудования, но у каждой отдельной единицы компьютерного оборудования может быть только один служащий-владелец.

Рассмотрим следующую структуру:

EmpNoОбозначениеОтчитывается
10Директору
20Старшему менеджеру10
30Машинисту20
40Программист20

В этом случае «дочерний элемент» имеет тот же тип, что и «родительский». В иерархии указано, что EmpNo 10 является начальником из 20, а 30 и 40 каждый отчет до 20 представлен столбцом «ReportsTo». В терминах реляционной базы данных столбец ReportsTo - это внешний ключ, ссылающийся на столбец EmpNo. Если бы «дочерний» тип данных был другим, он был бы в другой таблице, но все равно был бы внешний ключ, ссылающийся на столбец EmpNo таблицы сотрудников.

Эта простая модель, широко известная как модель списка смежности, была представлена ​​д-ром Эдгаром Ф. Коддом после того, как появились первые критические замечания о том, что реляционная модель не может моделировать иерархические данные. Однако эта модель является лишь частным случаем общего списка смежности для графа.

См. Также
Ссылки
Внешние ссылки
На Wikimedia Commons есть носители, связанные с Иерархические модели.
Последняя правка сделана 2021-05-23 11:21:10
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте