Модели организации данных

Классификация баз данных

1. По технологии обработки данных базы данных подразделяются на централизованные и распределенные.

· Централизованная база данных хранится в памяти одной вычислительной системы. Если эта вычислительная система является компонентом сети ЭВМ, возможен распределенный доступ к такой базе. Такой способ использования баз данных часто приме­няют в локальных сетях ПК.

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

2. По способу доступа к данным базы данных разделяются на базы данных с локальным доступом и базы данных с удаленным (сетевым) доступом.

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

• файл-сервер;

• клиент-сервер.

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

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

Набор принципов, определяющих организацию логической структуры хранения данных в базе, получил название модели данных. Модели баз данных определяют­ся тремя компонентами:

• допустимой организацией данных;

• ограничениями целостности;

• множеством допустимых операций.

В теории систем управления базами данных выделяют модели трех основных ти­пов:

· Иерархическую

· Сетевую

· реляционную.

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

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

К каждой записи базы данных существует только один (иерархический) путь от корне­вой записи.

Сетевая. Сетевой подход к организации данных является расширением иерархического. Сетевая БД состоит из набора записей и набора связей между этими записями, точнее, из набора экземпляров записей заданных типов (из допустимого набора типов) и набора экземпляров из заданного набора типов связи. Примером системы управления данными с сетевой организацией является Integ­rated Database Management System (IDMS) компании Cullinet Software Inc., разработанная в середине 70-х годов. Она предназначена для использования на «больших» вычислительных машинах. Архитектура системы основана на пред­ложениях Data Base Task Group (DBTG), Conference on Data Systems Languages (CODASYL), организации, ответственной за определение стандартов языка про­граммирования Кобол.

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

Среди достоинств систем управления данными, основанных на иерархической или сетевой моделях, могут быть названы их компактность и, как правило, высокое быстродействие, а среди недостатков — не универсальность, высокая степень зави­симости от конкретных данных.

Реляционная. Концепции реляционной модели впервые были сформулированы в работах аме­риканского ученого Э. Ф. Кодда. Откуда происходит ее второе название — модель Кодда. Почти все современные системы основаны на реляционной (relational) модели управления базами данных. Название реляционная связано с тем, что каждая запись в такой базе данных содержит информацию, относящуюся (related) только к одному конкретному объекту. Кроме того, с данными двух типов (например, о клиентах и заказах) можно работать как с единым целым, основанным на значениях связанных между собой (related) данных. Например, если включать фамилию и адрес клиента в каждый его заказ, то это привело бы к хранению повторяющейся информации. Поэтому в реляционной системе информация о заказах содержит поле данных, куда вводится код клиента, по которому информация о каждом заказе объединяется с данными о соответству­ющем клиенте.

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

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

· каждый элемент таблицы — один элемент данных;

· все столбцы в таблице однородные, т.е. все элементы в столбце имеют одинаковый тип (числовой, символьный и т.д.) и длину;

· каждый столбец имеет уникальное имя;

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

· порядок следования строк и столбцов может быть произвольным.

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

№ личного дела Фамилия Имя Отчество Дата рождения Группа
  Сергеев Петр Михайлович 01,01.76  
  Петрова Анна Владимировна 15.03.75  
  Анохин Андрей Борисович 14.04.76  

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

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

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

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

• Говорят, что отношение находится в первой нормальной форме, если все его ат­рибуты являются простыми.

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

• Говорят, что отношение находится в третьей нормальной форме, если оно удовлетворяет требованиям второй нормальной формы и при этом любой не ключевой атрибут зависит от ключа не транзитивно.

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

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

Основным достоинством реляционной модели является ее простота.

Термины реляционной модели:

Отношение (Relation) — информация об объектах одного типа, например, о клиентах, заказах, сотрудниках. В реляционных базах данных отношение обычно хранится в виде таблицы.

Атрибут (Attribute) — определенная часть информации о некотором объекте ~- например, адрес клиента или зарплата сотрудника. Атрибут обычно хранится а виде столбца или поля таблицы.

Связь (Retatioship) — способ, которым связана информация в одной таблице с информацией в другой таблице. Например, у клиентов с заказами тип связи«один-ко-многим», так как один клиент может разместить много заказов, но любой заказ соотносится только с одним клиентом.

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

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: