· Организация и поддержание логической структуры данных (схемы баз данных);
· Организация и поддержание физической структуры данных во внешней памяти;
· Организация доступа к данным и их обработка в оперативной и внешней памяти.
Организация и поддержание логической структуры данных (схемы базы данных) обеспечивается средствами модели организации данных.Модель данных определяется способом организации данных, ограничениями целостности и множеством операций, допустимых над объектами организации данных. Соответственно модель данных разделяют на три составляющие – структурную, целостную и манипуляционную.
Известны три основные модели организации данных:
· Иерархическая;
· Сетевая;
· Реляционная.
Модель данных, реализуемая СУБД, является одной из основных компонентов, определяющих функциональные возможности СУБД по отображению в базах данных информационно – логических схем предметных областей АИС.
Организация и поддержание физической структуры данных во внешней памяти. Эта функция включает организацию и поддержание внутренней структуры файлов базы данных, иногда называемой форматом файлов базы данных, а также создание и поддержание специальных структур (индексы, страницы) для эффективного и упорядоченного доступа к данным. В этом плане эта функция тесно связана с третьей функцией СУБД – организацией доступа к данным.
Организация доступа к данным и их обработка в оперативной и внешней памяти осуществляется через реализацию процессов, получивших название транзакций. Транзакцией называют последовательную совокупность операций, имеющую отдельное смысловое значение по отношению к текущему состоянию базы данных. Так, например, транзакция по удалению отдельной записи в базе данных последовательно включает определение страницы файла данных, содержащей указанную запись, считывание и пересылку соответствующей страницы в буфер оперативной памяти, собственно удаление записи в буфере ОЗУ, проверку ограничений целостности по связям и другим параметрам после удаления и, наконец, «выталкивание» и фиксацию в файле базы данных нового состояния соответствующей страницы данных.
1.2. Модели данных
Каждая СУБД поддерживает ту или иную модель данных. Модель данных определяет правила порождения допустимых для данной СУБД видов структур данных, возможные операции над такими структурами этой системы ограничений целостности данных. Как было, выше сказано логическая структура данных поддерживает три модели организации данных.
В большинстве коммерческих СУБД используются ставшие классическими реляционные модели данных и разновидностей графовых моделей данных – сетевая модель данных CODASYLи иерархическая модель данных ивсе они получили название по видам рассматриваемых в них структур данных.
В иерархической модели объекты – сущности и отношения предметной области представляются наборами данных, которые имеют строго древовидную структуру, т.е. допускаются только структурные связи – отношения. Иерархическая модель данных была исторически первой, на основе которой в конце 60 – 70 – х гг. были разработаны первые профессиональные СУБД.
База данных с иерархической моделью данных состоит из упорядоченного набора экземпляров структур типов «дерево», что показано на рис.1. На этом рисунке информационный объект «1» является предком информационного объекта «2», которой в свою очередь является предком информационного объекта «3». Объект «2» является потомком объекта «1», а объект «3» потомком объекта «2». Экземпляры потомка с общим предком называются близнецами.
Рис. 1. Представление связей в иерархической модели
Сетевая модель данных позволяет отображать разнообразные взаимосвязи элементов данных в виде произвольного графа, обобщая тем самым иерархическую модель данных рис. 2. Сетевая СУБД состоит из одного или нескольких типов записей и набора типов связей между ними. Каждый тип записи представлен в базе данных набором экземпляров записей данного типа. Аналогично каждый тип связи представлен набором экземпляров связей данного типа между конкретными экземплярами типов записей. На рисунке типы записей обозначены цифрами, типы связей буквами.
Рис. 2. Представление связей в сетевой модели
Для данного типа связи А1 между типом записи предка «1» и типом записи потомка «2» выполняются следующие условия:
1. каждый экземпляр типа «1» является предком только в одном экземпляре «2»;
2. каждый экземпляр «2»является потомком не более чем в одном экземпляре «1».
В рамках сетевой модели возможны следующие ситуации:
· тип записи потомка в одном типе связи «А1» может быть типом записи предка в другом типе связи «В»;
· данный тип записи «1» может быть типом записи потомка в любом числе типов связи;
· может существовать любое число типов связей с одним и тем же типом записи предка и одним и тем же типом записи потомка;
· если «А1» и «А2» - два типа связи с одним и тем же типом записи предка «1» и одним и тем же типом записи потомка «2», то правила, по которым образуется родство, в разных связях могут различаться;
· типы записей «4» и «5» могут быть предком и потомком одной связи и потомком и предком другой; предок и потомок могут быть одного типа записей (связь типа «петля»).
Реляционная модель данных – это предметная область, которая представляет собой набор отношений, изменяющихся во времени. При создании информационной системы совокупность отношений позволяет хранить данные об объектах предметной области и моделировать связи между ними. Элементы реляционной модели данных и формы их представления приведены в табл. 1.1.
Таблица 1.1
Элементы реляционной модели
Элемент реляционной модели | Формы представления |
1. Отношение2. Схема отношения3. Кортеж4. Сущность5. Атрибут6. Домен7. Значение атрибута8. Первичный ключ9. Тип данных | ТаблицаСтрока заголовков таблицы Строка таблицыОписание свойств объектаЗаголовок столбца таблицыМножество допустимых значений атрибутаЗначение поле в записиОдин или несколько атрибутовТип значений элементов таблицы |
Отношение – это плоская таблица, состоящая из столбцов и строк.
Схема отношений – это список имен атрибутов
Кортеж – это строка отношений.
Сущность – объект любой природы, данные о котором хранятся в базе данных.
Атрибут – это поименованный столбец отношения.
Домен – это набор допустимых значений для одного или нескольких атрибутов.
Первичный ключ – это атрибут отношения, однозначно идентифицирующий каждый из его кортежей.
На рис. 3. приведен пример представления отношения «Формуляр читателя». В общем случае порядок кортежей в отношении не определен. Однако в реляционных СУБД для удобства кортежей все же упорядочивают. Чаще всего для этого выбирают некоторый атрибут, по которому система автоматически сортирует кортежи по возрастанию и убыванию. Если пользователь не назначает атрибута упорядочения, система автоматически присваивает номер к кортежам в порядке их ввода.
№ группы | Соц. положение | Дата рождения | |
Алексеева Е. А. Савиновский С. ИБудырина С. В. | 413-1 435 - | Студент Студент Преподаватель | 25.03.1985 15.03.1983 10.06.1980 |