Маркированные и нумерованные списки в html. Нумерованные списки. Виды маркеров маркированных списков

Маркированные и нумерованные списки в html. Нумерованные списки. Виды маркеров маркированных списков

Лекция 5

Базы данных информационных систем

База данных. Классификация и характеристика СУБД.

Основные модели баз данных.

Базы данных в экономических системах

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

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

Задачами СУБД являются:

Хранение информации в структурированном виде;

Обновление информации по мере необходимости;

Поиск нужной информации по определенным критериям;

Выдача информации пользователю в удобном для него виде;

Устранение избыточности данных;

Поддержка языков БД.

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



По технологии работы с базами данных существуют:

Централизованные СУБД;

Распределенные СУБД.

Централизованная СУБД - система управления базой данных, которая хранится в памяти одной вычислительной системы.

Системы централизованных баз данных с сетевым доступа предполагают две основные архитектуры:

¾ архитектура файл-сервер предполагает выделение одной из машин сети в качестве центральной (главный сервер файлов), где хранится совместно используемая централизованная база данных. Все другие машины сети исполняют роль рабочих станций. Файлы базы данных в соответствии с пользовательскими запросами передаются на рабочие станции, где в основном и производится их обработка. При большой интенсивности доступа к одним и тем же данным производительность информационной системы падает;

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

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

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

Распределенная база данных состоит из нескольких, возможно, пересекающихся или даже дублирующих друг друга частей, хранимых в различных ЭВМ вычислительной сети. Однако пользователь распределенной базы данных не обязан знать, каким образом ее компоненты размещены в узлах сети, и представляет себе эту базу данных как единое целое. Работа с такой базой данных осуществляется с помощью системы управления распределенной базой данных (СУРБД).

Безопасность данных в базе данных достигается:

¾ шифрованием прикладных программ;

¾ шифрованием данных;

¾ защитой данных паролем;

¾ ограничением доступа к базе данных.

Основные модели баз данных

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

¾ "один к одному";

¾ "один ко многим";

¾ "многие ко многим".

"Один к одному" - это взаимно однозначное соответствие, которое устанавливается между одним объектом и одним атрибутом. Связь "один-к-одному" определяет такое отношение между таблицами, когда каждой записи в подчиненной таблице соответствует только одна запись в главной таблице. Наличие связей между таблицами "один-к-одному" обычно не говорит о хорошей структуре базе данных, поскольку свидетельствует о том, что две таблицы имеют полностью совпадающие поля, а это ведет к нерациональному расходу дискового пространства.

Связь "один-ко-многим" в структурах баз данных является наиболее общепринятой. При этом типе связи каждой записи главной таблицы соответствует одна или несколько записей в подчиненной таблице. Структура связей типа "один-ко-многим" позволяет избежать избыточности данных и дублирования записей.

Связь типа "многие-ко-многим" выражает такое отношение между таблицами, когда многие записи одной таблицы могут быть связаны со многими записями другой таблицы.

Иерархическая модель баз данных (ИМД) основана на графическом способе и предусматривает поиск данных по одной из ветвей «дерева», в котором каждая вершина имеет только одну связь с вершиной более высокого уровня. Для осуществления поиска необходимо указать полный путь к данным, начиная с корневого элемента.

Рис. 1 – Иерархическая модель баз данных

Сетевая модель баз данных (СМД) также основана на графическом способе, но допускает усложнение «дерева» без ограничения количества связей, входящих в вершину. Это позволяет строить сложные поисковые структуры.

Рис. 2 – Сетевая модель баз данных

Реляционная модель баз данных (РМД) реализует табличный способ.

В реляционной модели базы данных взаимосвязи между элементами данных представляются в виде двумерных таблиц, называемых отношениями .

Отношения обладают следующими свойствами :

¾ каждый элемент таблицы представляет собой один элемент данных (повторяющиеся группы отсутствуют);

¾ элементы столбца имеют одинаковую природу, и столбцам однозначно присвоены имена;

¾ в таблице нет двух одинаковых строк;

¾ строки и столбцы могут просматриваться в любом порядке вне зависимости от их информационного содержания.

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

Достоинства реляционной модели :

¾ простота построения;

¾ доступность понимания;

¾ возможность эксплуатации базы данных без знания методов и способов ее построения;

¾ независимость данных;

¾ гибкость структуры и др.

Недостатки реляционной модели :

¾ низкая производительность по сравнению с иерархической и сетевой модели;

¾ сложность программного обеспечения;

¾ избыточность элементов.

В последние годы все большее признание и развитие получают объектные базы данных (ОБД), появление которых обусловлено развитием объектно-ориентированного программирования.

Объектом называют почти все, что представляет интерес для решения поставленной задачи на компьютере. Это может быть экранное окно, кнопка в окне поле для ввода данных, пользователь программы, сама программа и т.д. Тогда любые действия можно привязать к такому объекту, а также описать, что произойдет с объектом при выполнении опреде6ленных действий (например, при „нажатии“ кнопки). Многократно используемый объект можно сохранить и применять его в различных программах.

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

Свойство - это характеристика, с помощью которой описывается внешний вид и работа объекта.

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

Метод - это функция или процедура, управляющая работой объекта при его реакции на событие.

Объекты могут быть как визуальными, т.е. которые можно увидеть на экране дисплея (окно, пиктограмма, текст и т.д.), так и невизуальные (например, программа решения какой-либо функциональной задачи).

Классификация по модели данных (по структуре организации).

История.

История возникновения и развития технологий баз данных может рассматриваться как в широком, так и в узком аспекте.

В широком аспекте понятие истории баз данных обобщается до истории любых средств, с помощью которых человечество хранило и обрабатывало данные. В таком контексте упоминаются, например, средства учёта царской казны и налогов в древнем Шумере (4000 г. до н.э.), узелковая письменность инков, клинописи, содержащие документы Ассирийского царства и т.п. Следует помнить, что недостатком этого подхода является размывание понятия «база данных» и фактическое его слияние с понятиями «архив» и даже «письменность».

История баз данных в узком аспекте рассматривает базы данных в традиционном (современном) понимании. Эта история начинается с 1955 года, когда появилось программируемое оборудование обработки записей. Программное обеспечение этого времени поддерживало модель обработки записей на основе файлов. Для хранения данных использовались перфокарты. Оперативные сетевые базы данных появились в середине 1960-х. Операции над оперативными базами данных обрабатывались в интерактивном режиме с помощью терминалов. Простые индексно-последовательные организации записей быстро развились к более мощной модели записей, ориентированной на наборы. За руководство работой Data Base Task Group (DBTG), разработавшей стандартный язык описания данных и манипулирования данными, Чарльз Бахман получил Тьюринговскую премию.

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

Следующий важный этап связан с появлением в начале 1970-х реляционной модели данных, благодаря работам Эдгара Ф. Кодда. Работы Кодда открыли путь к тесной связи прикладной технологии баз данных с математикой и логикой. За свой вклад в теорию и практику Эдгар Ф. Кодд также получил премию Тьюринга.

Сам термин database (база данных) появился в начале 1960-х годов, и был введён в употребление на симпозиумах, организованных фирмой SDC (System Development Corporation) в 1964 и 1965 годах, хотя понимался сначала в довольно узком смысле, в контексте систем искусственного интеллекта. В широкое употребление в современном понимании термин вошёл лишь в 1970-е годы.

Основные классификации БД.

При работе с БД СУБД поддерживает в памяти компьютера некоторую модель предметной области, называемую моделью данных. Модель данных определяется типом СУБД.



Иерархическая модель . Иерархически организованные данные встречаются в повседневной жизни очень часто. Например, структура высшего учебного заведения. Иерархическая модель данных - представление базы данных в виде древовидной (иерархической) структуры, состоящей из объектов (данных) различных уровней. Верхний уровень занимает один объект, второй - объекты второго уровня и т. д. Между объектами существуют связи, каждый объект может включать в себя несколько объектов более низкого уровня. Такие объекты находятся в отношении предка (объект более близкий к корню) к потомку (объект более низкого уровня), при этом возможно, когда объект-предок не имеет потомков или имеет их несколько, тогда как у объекта-потомка обязательно только один предок. Объекты, имеющие общего предка, называются близнецами. Основным недостатком данной модели является необходимость использования той иерархии, которая была заложена в основу БД при проектировании. Потребность в постоянной реорганизации данных привело к созданию более общей модели – сетевой.

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

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

Реляционная модель . Реляционная база данных - база данных, основанная на реляционной модели данных. Была разработана Коддом в 1969-70 годы на основе математической теории отношений и опирается на систему понятий, важнейшими из которых являются таблица , отношение , поле , запись . Эта модель получила наибольшее признание. Слово «реляционная» происходит от английского «relation», что означает отношение. Отношения удобно представлять в виде таблиц. Т.е. в качестве неформального синонима термину «отношение» часто встречается слово таблица. Необходимо помнить, что «таблица» есть понятие нестрогое и неформальное и часто означает не «отношение» как абстрактное понятие, а визуальное представление отношения на бумаге или экране. Некорректное и нестрогое использование термина «таблица» вместо термина «отношение» нередко приводит к недопониманию. Наиболее частая ошибка состоит в рассуждениях о том, что РМД имеет дело с «плоскими», или «двумерными» таблицами, тогда как таковыми могут быть только визуальные представления таблиц. Отношения же являются абстракциями, и не могут быть ни «плоскими», ни «неплоскими»

Реляционной считается такая БД, в которой все данные представлены для пользователя в виде таблиц, и все операции на БД сводятся к манипуляциям с таблицами .

Поле (столбец) – элемент данных, отражающий атрибут объекта (например, если объектом является студент, то его атрибутами будут ФИО, адрес, телефон и т.д.). У полей базы данных есть параметры , определяющие тип сохраняемых данных, способ их отображения и набор производимых над ними операций. Одним из важных параметров поля является тип данных.

Объектная и объектно-ориентированная. Объектно-ориентированная база данных - база данных, в которой данные оформлены в виде моделей объектов, включающих прикладные программы, которые управляются внешними событиями. Результатом совмещения возможностей (особенностей) баз данных и возможностей объектно-ориентированных языков программирования являются Объектно-ориентированные системы управления базами данных (ООСУБД). ООСУБД позволяет работать с объектами баз данных также, как с объектами в программировании на ООЯП. ООСУБД расширяет языки программирования, прозрачно вводя долговременные данные, управление параллелизмом, восстановление данных, ассоциированные запросы и другие возможности. Объектно-ориентированные базы данных обычно рекомендованы для тех случаев, когда требуется высокопроизводительная обработка данных, имеющих сложную структуру.

Объектно-реляционная - реляционная СУБД (РСУБД), поддерживающая некоторые технологии, реализующие объектно-ориентированный подход.

Классификация моделей данных базируется на понятиях о взаимосвязи объектов. Между таблицами базами данных могут существовать четыре типа различных связей: «один к одному»; «один ко многим»; «многие ко многим».

При отношении «один к одному » в каждый момент времени одной записи таблицы «1» соответствует не более одной записи таблицы «2». Например, одному клиенту соответствует только один номер в гостинице. Этот тип связи используют не очень часто, поскольку такие данные могут быть помещены в одну таблицу. Такую связь используют для разделения очень широких таблиц, например, для разделения таблицы с информацией о сотрудниках фирмы на две – служебной и личной информацией.

Связь с отношением «один ко многим » характеризует то, что одному экземпляру информационного объекта «1» соответствует 0,1,2 и более экземпляров объекта «2». Такое отношение существует, например, между таблицами «Поставщики» и «Товары», т.е. каждый поставщик может продавать различные товары, но у каждого товара есть единственный поставщик.

Отношение «многие ко многим » предполагает, что в каждый момент времени одной записи таблицы «1» соответствует несколько экземпляров таблицы «2» и наоборот. Примером может служить связь между информационными объектами «Клиент» и «Банк». Один клиент хранит средства во многих банках. Один банк обслуживает многих клиентов. Реализуется отношение с помощью третьей (связующей) таблицы, ключ которой состоит, по крайней мере, из двух полей, которые являются полями внешнего ключа в исходных таблицах.

Известны три основных типа моделей данных.

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

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

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

Сетевая модель . В основу модели положены сетевые структуры, в которых любой элемент может быть связан с любым другим элементом. Информационными конструкциями в модели являются отношения и веерные отношения. Последние подразделяют на основные и зависимые. Веерным отношением W(R,S) называется пара отношений R и S и связь между ними при условии, что каждое значение S связано с единственным значением R . Отношение R называют исходным (основным), а S - порожденным (зависимым).

В структуру основного и зависимого отношений вводится дополнительный атрибут, называемый адресом связи, который обеспечивает соответствие каждого значения зависимого отношения S с единственным значением основного отношения R . Адрес связи хранит начальный адрес или номер следующей обрабатываемой записи. Кольцевая структура адресов связи называется веером . Роль "ручки" веера играет запись основного отношения.

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

Реляционная модель. В основе структуры данных этоймодели лежит аппарат реляционной алгебры и теории нормализации. Модель предполагает использование двумерных таблиц (отношений).

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

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

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

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

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

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

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

Таким образом, если СУБД поддерживает возможность создания подсхем, то архитектура БД становится трехуровневой: уровень схемы хранения, уровень схемы и уровень подсхем.

Рассмотрим теперь основные типы моделей данных.

Иерархическая модель БД является одной из первых моделей БД. Это обусловлено прежде всего тем, что именно такая модель наиболее естественным образом отражает множественные связи между объектами реального мира, когда один объект выступает в качестве родительского, с которым связано большое количество подчиненных объектов.

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

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

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

При построении иерархической модели БД всегда необходимо помнить о поддержке целостностей связей, подразумевая под этим, что:

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

Необходимо отметить, что в ряде нотаций может использоваться иная терминология. Так, в нотации Американской Ассоциации по базам данных DBTG (Data Base Task Group) термину “запись” соответствует термин “сегмент”, а записью называется все множество записей, которые относятся к одному экземпляру типа “дерево”.

Основным достоинством иерархической модели БД является относительно высокая скорость обработки информации при обращении к данным. К недостаткам следует отнести ее громоздкость при наличии сложных логических связей между данными.

Сетевая модель БД является в некотором смысле обобщением иерархической модели. Основное отличие сетевой модели от иерархической заключается в том, что в сетевой модели подчиненный тип может иметь произвольное количество родительских типов. Основными понятиями сетевой модели являются набор, агрегат, запись и элемент данных. Под элементом данных в данном случае следует подразумевать то же самое, что и в иерархической модели - минимальную единицу данных. Агрегаты данных бывают двух типов: агрегат типа вектор и агрегат типа повторяющаяся группа. Агрегат типа вектор соответствует набору элементов данных. Агрегат типа повторяющаяся группа соответствует совокупности векторов данных. Записью называется совокупность агрегатов данных. Каждая запись имеет определенный тип и состоит из совокупности экземпляров записи. Набором называется граф, связывающий два типа записи. Таким образом, набор отражает иерархическую связь между двумя типами записей. Родительский тип записи в данном наборе называется владельцем набора, а дочерний тип записи -- членом того же набора. Для каких-либо любых двух типов записей может быть задано любое количество связывающих их наборов. При этом между двумя типами записей может быть определено различное количество наборов. Однако один и тот же тип записи не может быть одновременно владельцем и членом набора.

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

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

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

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

Основное достоинство постреляционной модели заключается в том, что она позволяет более эффективно хранить данные, а количество таблиц в этой модели заметно меньше по сравнению с реляционной. Недостатком является сложность обеспечения поддержания логической согласованности данных.

Теория многомерных моделей данных активно развивается в последнее время. Понятие многомерной модели означает многомерность логического представления структуры информации. Основными понятиями многомерной модели являются измерение и ячейка.

Измерением называется множество данных одного типа, которые образуют грань n-мерного куба. Ячейкой является поле, значение которого определяется всей совокупностью измерений. Значение ячейки может быть переменной или формулой.

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

Многомерные СУБД используют две схемы организации данных - поликубическую и гиперкубическую. В поликубической модели n-мерные кубы могут иметь как различные размерности, так и различные измерения-грани. В гиперкубической модели все размерности кубов одинаковы, а измерения различных кубов совпадают.

Срезом называется некоторое подмножество n-мерного куба, задаваемое фиксацией заданного количества измерений. Срез имеет размерность, меньшую n, и используется, в частности, для представления информации пользователям в виде читаемых двумерных таблиц. Вращение также часто используется для двумерного представления данных и заключается в изменении порядка измерений. Операции агрегации и детализации означают более общее или более детальное представление информации.

Многомерные модели данных особенно удобны для работы с большими БД, поскольку позволяют эффективно обрабатывать значительные объемы информации, и это является их несомненным достоинством.

Основным отличием объектно-ориентированной модели от рассмотренных выше является использование объектно-ориентированных методов манипулирования данными - инкапсуляции, наследования и полиформизма.

Инкапсуляция означает возможность разграничения доступа различных программ, приложений, методов и функций (в более широком смысле и доступа различных категорий пользователей) к различным свойствам объектов данных. В контексте термина “инкапсуляция” часто используется понятие видимости - степень доступности отдельных свойств объекта. В современных объектно-ориентированных системах программирования (таких как Delphi или С++ Builder) имеются следующие уровни инкапсуляции (видимости), которые принято называть разделами:

  • 1. Разделы Public, Published и Automated - с незначительными отличительными особенностями свойства объекта, описанные как принадлежащие к данным разделам, полностью доступны.
  • 2. Раздел Private - этот раздел накладывает наиболее жесткие ограничения на видимость свойств объекта. Как правило, такие свойства оказываются доступными только владельцу данного объекта (программному модулю, в котором этот объект создан).
  • 3. Раздел Protected - в отличие от раздела Private свойства объекта становятся доступными наследникам владельца объекта.

В отличие от инкапсуляции наследование предполагает полную передачу всех свойств родительского объекта дочерним объектам. При необходимости наследование свойств одного объекта можно распространить и на объекты, не являющиеся по отношению к нему дочерними.

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

Основным достоинством объектно-ориентированых моделей является возможность моделировать разнообразные сложные взаимосвязи между объектами.

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

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

Иерархическую БД образует каталог файлов, хранимых на диске; дерево каталогов, доступное для просмотра в Total Commander, - наглядная демонстрация структуры такой БД и поиска в ней нужного элемента. Такой же БД является родовое генеалогическое дерево.

Сетевая модель данных

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

Сетевой БД фактически является Всемирная паутина глобальной компьютерной сети Интернет. Гиперссылки связывают между собой сотни миллионов документов в единую сетевую БД.

Реляционная модель данных

В реляционной БД под записью понимается строка прямоугольной таблицы. Элементы записи образуют столбцы этой таблицы (поля). Все элементы в столбце имеют одинаковый тип (числовой, символьный), а каждый столбец - неповторяющееся имя. Одинаковые строки в таблице отсутствуют.

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

Примером реляционной БД служит ведомость назначения на стипендию, в которой записью является строка с данными о конкретном студенте, а имена полей (столбцов) указывают, какие данные о каждом студенте должны быть записаны в ячейках таблицы.

Любой тип можно свести к реляционному.

Типы данных

Тип данных определяет множество значений, которые может принимать данное поле в различных записях.

Основные типы данных в современных БД:

    числовой;

    текстовый;

  • дата / время;

    денежный;

    логический;

Ключи

    Суперключ - это одно или несколько полей таблицы, которые однозначно определяют каждую строку в таблице

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

    Первичный ключ – это потенциальный ключ, выбранный, для однозначной идентификации каждой строки в таблице; обычно выбирают наиболее простой для ввода потенциальный ключ, как правил, числовой.

Ключевое поле таблицы в СУБД Access – это первичный ключ таблицы.

Виды реляционных отношений

    один-к-одному;

Каждому значению первичного ключа в главной таблице соответствует одна или не одной записи в подчиненной таблице.

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

    один-ко-многим;

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

Отношение «один-ко-многим» является наиболее часто используемым типом связи между таблицами.

    многие-ко-многим.

При отношении «многие-ко-многим» одной записи в таблице A могут соответствовать несколько записей в таблице B, а одной записи в таблице B несколько записей в таблице A. Отношение «многие-ко-многим» представляет собой два отношения «один-ко-многим» с третьей таблицей.

Организация межтабличных связей

    один-к-одному – таблицы, связываются по их первичным ключам (первичные ключи обеих таблиц устанавливают одинаковыми);

    один-ко-многим –главная таблица (один) связывается по первичному ключу с подчиненной таблицей (многие) по внешнему ключу (это первичный ключ главной таблицы, вставленный в подчиненную таблицу)

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

Пример организации БД

Условия целостности данных

Условие целостности служит для обеспечения соответствия записей в подчиненной таблице записям главной таблицы, т.е. удалять данные из ключевого поля главной таблицы нельзя.

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



© 2024 beasthackerz.ru - Браузеры. Аудио. Жесткий диск. Программы. Локальная сеть. Windows