|
|
|
§ 12. База данных как модель предметной области
Представление о моделях данных
С помощью модели данных могут быть представлены сущности и взаимосвязи между ними. Выделяют три основных типа моделей данных: иерархическую, сетевую и реляционную. Иерархическая модель данных определяет организацию данных об объектах в виде дерева. В иерархической модели данных у каждого объекта есть только один объект высшего уровня, которому он подчинён (родительский), и может быть несколько подчинённых объектов (потомков). Исключение составляет только наивысший по иерархии объект — у него нет родительского объекта. В иерархической модели данных каждый родительский объект в совокупности с подчинёнными объектами (потомками) можно рассматривать как отдельное дерево. Пример иерархической организации данных представлен на рисунке 3.24. Информация БД «Школа» структурирована в виде иерархических деревьев, количество которых равно количеству подразделений (НАЧАЛЬНАЯ ШКОЛА, ОСНОВНАЯ ШКОЛА, СТАРШАЯ ШКОЛА). На первом уровне находится сущность ПОДРАЗДЕЛЕНИЕ (НОМЕР, НАЗВАНИЕ, РУКОВОДИТЕЛЬ). Сущности второго уровня — КЛАССЫ (КОД КЛАССА, КЛАССНЫЙ РУКОВОДИТЕЛЬ), сущности третьего уровня — УЧЕНИКИ (ЛИЧНОЕ ДЕЛО, ФАМИЛИЯ). Подчёркиванием выделен атрибут, который однозначно определяет каждый экземпляр сущности.
Для обработки данных в иерархической модели данных используется следующий набор команд:
Модель данных должна обеспечивать целостность данных, иначе говоря, в представленных с её помощью данных не должно быть противоречий. Свойство целостности должно сохраняться при любых действиях с данными. Основное правило обеспечения целостности в иерархической модели данных состоит в том, что ни один подчинённый объект (потомок) не может существовать без родительского объекта, за исключением одного основного родительского объекта. При значительном количестве данных в БД, построенных по иерархической модели, поиск нужных данных может занять много времени. Например, поиск файла, содержащего определённый фрагмент текста, на всех жёстких дисках персонального компьютера может длиться несколько минут. В Интернете подобный поиск будет длиться максимум несколько секунд, при этом будут обработаны значительно большие объёмы данных. Постарайтесь вспомнить, за счёт чего так быстро происходит поиск в Интернете. Как это связано с индексацией данных? Используются ли аналогичные возможности в современных операционных системах?
|
|
|