ПОИСК Статьи Чертежи Таблицы Иерархический и сетевой подходы из "Информационное и прикладное программное обеспечение (САПР 3) " Если реляционное исчисление позволяет описать вид выходного документа, а реляционная алгебра — последовательность операций над отношениями, то для организации поиска нужных записей используются понятия ключа и связи. [c.71] Хеш-функция производит пересчет ключа в адрес записи на файле. Эта операция выполняется СУБД всякий раз при поиске нужной записи по ключу. Связи позволяют осуществить группирование записей в множества, а также указывать взаимоотношения между этими множествами. На практике связь реализуется, как правило, в виде указателя. [c.72] Графически при описании базы данных разным типам связей соответствуют обозначения в виде различных стрелок - - — связь с одной записью - — связь с несколькими записями. Взаимные связи имеют следующие названия - -— - — один к одному . - —— один ко многим , - — — —)- — многие ко многим . На рис. 2.2 записи изображены в виде прямоугольников, а сегменты представлены кружками. Например, обозначение, приведенное па рис. 2.2, в, следует понимать так каждая запись сегмента А связана с некоторой группой записей сегмента В, а каждая запись из сегмента В связана лишь с одной записью сегмента А. [c.72] Иерархический подход. Иерархическая БД имеет граф логической схемы в виде дерева, а тип связей соответствует рис. 2.2, б. Пример логической схемы иерархической БД приведен на рис. 2.4. В иерархической БД связи направлены только от верхних сегментов к нижним, обратные указатели отсутствуют. Это объясняется принципиальным свойством иерархического представления данных каждая запись приобретает смысл лишь тогда, когда она рассматривается в своем контексте, т. е. любая запись не может существовать без предшествующей ей записи по иерархии. При поиске в иерархической БД необходимо указывать значение ключа на каждом уровне иерархии. Так, для доступа к записи из множества G (рис. 2.4) должны быть последовательно указаны ключи записей из множеств А, С и G. [c.73] Реляционная БД всегда может быть преобразована в иерархическую. [c.73] Пример логической схемы иерархической базы данных. [c.74] Сетевой подход. Необходимость в организации раз-ЛИЧ1ЮГ0 упорядочения записей в БД с целью удовлетворения разных типов запросов привела к разработке сетевых баз данных. В сетевой модели данных в принципе разрешены любые группирования записей и организация произвольных связей между ними. Однако на практике целесообразно введение некоторых ограничений. Рассмотрим представление сетевых моделей данных в соответствии с концепцией КОДАСИЛ. [c.75] Допустимо, чтобы записи одного сегмента были владельцами нескольких наборов, и, наоборот, записи некоторого набора могут быть членами различных наборов. На рис. 2.8 показаны соответствующие конструкции логической схемы. [c.76] Пример сетевой логической схемы приведен на рис. 2.10. Из него видно, что поиск необходимых записей можно производить начиная с сегментов УПР, МС, УЗ, ТПР. [c.77] Вернуться к основной статье