- Подробности
- Опубликовано 11.08.2014 06:08
- Просмотров: 2195
3.3. Иерархические базы данных
Иерархическая база данных графически может быть представлена как перевернутое дерево, состоящее из объектов различных уровней. Верхний уровень (корень) занимает один объект, второй — объекты второго уровня и т. д.
Между объектами существуют связи, каждый объект может включать в себя несколько объектов более низкого уровня. Такие объекты находятся в отношении предка (объект более близкий к корню) к потомку (объект, более низкого уровня), при этом объект-предок может не иметь потомков или иметь их несколько, тогда как объект-потомок обязательно имеет только одного предка. Объекты, имеющие общего предка, называются близнецами.
Иерархическая база данных Папки Windows. Иерархической базой данных является каталог папок Windows (например, гибкого диска). Ее можно увидеть, например, запустив файловый менеджер Total Commander, и введя команду [Вид-Дерево каталогов]. Верхний уровень занимает корневая папка диска А:. На втором уровне находятся папки Документы, Изображения и Школа, которые являются потомками корневой папки диска А:, а между собой являются близнецами. В свою очередь, папка Изображения является предком по отношению к папке третьего уровня Фото. Наконец, файл Knacc.bmp является потомком папки Фото (рис. 3.1).
Иерархическая база данных Системный реестр Windows. Иерархической базой данных является также системный реестр Windows (рис. 3.2), в котором хранится вся информация, необходимая для нормального функционирования компьютерной системы (данные о конфигурации компьютера и установленных драйверах, сведения об установленных программах, настройки графического интерфейса и ДР-)-
Содержание реестра автоматически обновляется при установке нового оборудования, инсталляции программ и т. д.
Иерархическая базы данных «Доменная система имен». Еще одним примером иерархической базы данных является доменная система имен подключенных к Интернету компьютеров. На верхнем уровне находится табличная база данных, содержащая перечень доменов верхнего уровня (всего 269 домена), из которых 12 — административные, а остальные 257 — географические. Наиболее многочисленным доменом (данные на январь 2008 года) является административный домен net (около 190 миллионов серверов), а некоторых доменах (например, в географическом домене zr) до сих пор не зарегистрировано ни одного сервера.
На втором уровне находятся табличные базы данных, содержащие перечень доменов второго уровня для каждого домена первого уровня.
На третьем уровне могут находиться табличные базы данных, содержащие перечень доменов третьего уровня для каждого домена второго уровня и таблицы, содержащие IP-адреса компьютеров, находящихся в домене второго уровня.
База данных «Доменная система имен» должна содержать записи обо всех компьютерах, подключенных к Интернету, т. е. более 500 миллионов записей. Размещение такой огромной базы данных на одном компьютере сделало бы поиск информации очень медленным и неэффективным. Решение этой проблемы было найдено путем размещения отдельных составных частей базы данных на различных DNS- серверах. Таким образом, иерархическая база данных «Доменная система имен» является распределенной базой данных.
Поиск информации в такой иерархической распределенной базе данных ведется следующим образом. Например, мы хотим ознакомиться с содержанием WWW-сервера фирмы Microsoft.
Сначала наш запрос, содержащий доменное имя сервера www.microsoft.com, будет оправлен на DNS-сервер нашего
провайдера, который переадресует его на DNS-сервер самого верхнего уровня базы данных. В таблице первого уровня будет найден интересующий нас домен com и запрос будет адресован на DNS-сервер второго уровня, который содержит перечень доменов второго уровня, зарегистрированных в домене com.
В таблице второго уровня будет найден домен microsoft и запрос будет переадресован на DNS-сервер третьего уровня. В таблице третьего уровня будет найдена запись, соответствующая доменному имени, содержавшемуся в запросе. Поиск информации в базе данных «Доменная система имен» будет завершен и начнется поиск компьютера в сети по его IP-адресу.
Контрольные вопросы
1.В чем заключаются характерные особенности иерархических баз данных?
2.Чем различаются между собой иерархические и распределенные базы данных?