Иерархическая база данных — это… Модели, примеры

Иерархическая база данных — это база данных, основанная на древовидной структуре. По принципу построения она чем-то похожа на файловую систему компьютера. У использования такой модели есть свои преимущества и недостатки, о которых мы поговорим в этой статье вместе с подробными примерами.

Виды баз данных

иерархическая база данных

Как известно, существует четыре типа создания базы данных:

  • Объектно-ориентированные объекты тесно связаны с ООП (программированием, в котором вы работаете с объектами), и это их главное преимущество, но, учитывая их низкую производительность, они все же значительно уступают по распространенности реляционным.
  • Гибрид: СУБД, содержащие одновременно два из вышеперечисленных типов.
  • Реляционная — табличная СУБД, в которой информация представлена ​​в виде строк-столбцов. По этому принципу в «Доступ» строятся базы данных, например.
  • Иерархический — это основная тема данной статьи. Это базы данных с древовидной структурой.

Самым известным примером иерархической базы данных является продукт, созданный IBM («IBEm»), который называется «Система управления информацией» (в переводе «Система управления информацией»), сокращенно IMS. Первая версия IMS была выпущена в прошлом двадцатом веке, в шестьдесят восьмом году. Он используется для хранения и контроля данных на сегодняшний день.

Принцип построения иерархической модели

пример иерархической базы данных

Иерархическая модель данных строится по следующему принципу:

  • сегмент означает поля данных с именем, присвоенным каждому полю и расположенным в линейном кортеже;
  • для каждого структурного элемента отводится одно и только одно место в иерархической системе;
  • еще одно совпадение: один входной и несколько выходных сегментов для каждого исходного поля;
  • каждому узлу древовидной структуры назначается определенный сегмент;
  • древовидная структура начинается с корневого элемента;
  • у каждого подчиненного узла есть только один предок, но у каждого исходного узла может быть несколько потомков.

Применение иерархической структуры данных

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

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

пример иерархической базы данных

Кроме того, нисходящий запрос обычно проще, чем прямой запрос.

Основные операции над БД, построенными на иерархической модели

Структура иерархической базы данных позволяет успешно и практически беспрепятственно (в зависимости от ваших навыков и способностей) выполнять следующие операции (представлены самые основные, список всегда можно расширить с небольшими дополнениями):

  • навигация в базе данных — от дерева к дереву;
  • следовательно, переход ветви происходит для каждого элемента;
  • искать в базе данных конкретный предмет;
  • пересечение деревьев — от ветки к ветке;
  • работать с записями: вставить новую и / или удалить текущую, скопировать, вырезать и т д

Обобщенное описание структуры

Термин «дерево» для описания структуры неоднократно упоминался в этой статье. Пора рассказать, откуда это взялось. Это связано с тем, что иерархическая база данных — это база данных, которая использует тип данных дерева. Давайте подробнее рассмотрим, что это такое.

Это составной тип: несколько последовательных (один или несколько) вложены в каждый из элементов (узлов). И все начинается с корневого элемента. Суть в том, что каждая из частей типа «дерево» является подтипом, даже «деревом». Много-много разветвленных структур и все тоже заказано.

иерархическая модель

Элементарные типы могут быть простыми и сложными, но по сути это всегда записи. Но в простой записи есть один тип данных, а в составной — их целая коллекция.

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

Наполнение БД

Основными данными иерархической базы данных являются значения (числа или символы), которые хранятся в записях. Эта база данных обычно просматривается снизу вверх и слева направо.

Достоинства

Иерархическая база данных — это база данных, которая имеет корневую папку и постепенно разветвляется. Учитывая, что эта структура очень похожа на файловую систему, такие базы данных успешно используются для выполнения различных операций с данными компьютера. В заключение: рациональное распределение его памяти, а также очень достойные показатели времени, проведенного на работе.

иерархические базы данных сетевые базы данных

Иерархическая модель идеально подходит для применения к упорядоченной информации.

Недостатки

Однако те же характеристики рассматриваемых СУБД, которые стали их основными достоинствами, определяют и их недостатки. Например, загроможденность и сложность логических связей: опытному специалисту будет сложно разобраться при работе с ранее неизвестной базой данных, а простой пользователь в ней полностью «заблудится». Эта сложность понимания приводит к тому, что на самом деле не многие СУБД построены на иерархической модели. Примером иерархической базы данных является, помимо уже описанных продуктов IBEm, Ока и МИРИС (производство Россия), а также Data Edge и Team-UP (от зарубежных компаний).

Примеры

Иерархическая база данных — это множество различных уровней, на которых строятся отношения. Схематично это выглядит как перевернутый график. Примером иерархической базы данных является любое государственное административное учреждение. Возьмем, к примеру, школу.

реляционная иерархическая сетевая база данных

На высшем уровне это будет «лидер» администрации — директор. В своем представлении директору школы директор — учителя, руководящие классными параллелями. В каждой параллели их определенное количество, и в каждом классе есть определенное количество учеников.

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

Применение в ЭВМ

Могут быть приложения посерьезнее. Ярким примером иерархической базы данных является файловая система. Знакомый «Проводник» встроен в сердце операционной системы Windows точно так же, как и многие другие файловые менеджеры.

Сетевые базы данных

Существуют:

  • реляционный;
  • сетевая база данных.
  • иерархический;

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

пора вспомнить типы ссылок в базах данных. Существуют отношения «один к одному», «один ко многим» и «многие ко многим». Нас интересует последнее. В сетевой базе данных это проявляется следующим образом: узел-преемник может иметь несколько предков одновременно. Свойство иметь несколько детей также сохраняется. Можно сказать, что иерархические базы данных, сетевые базы данных сами по себе являются примером такого наследования. Предком в этом случае является именно иерархическая база данных, поскольку принцип построения структуры в сетевой базе данных остается прежним.

Иерархия и реляционность

Название «relational» происходит от английского слова «Relationship». Как упоминалось в начале этой статьи, они часто выражаются в таблицах. Но в предыдущем абзаце мы указали, что иерархическая база данных также может организовывать ссылки, означает ли это, что между этими двумя типами тоже есть тонкая грань?

иерархическая структура базы данных

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

Поделиться:
×
Рекомендуем посмотреть