Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Информатика_Гуда

.pdf
Скачиваний:
76
Добавлен:
02.06.2015
Размер:
26.2 Mб
Скачать

Глава 5. Базы данных

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

По типу хранимой информации БД бывают: документальные; фактографические; лексикографические.

Документальные в свою очередь подразделяются на: библиографи- ческие; реферативные; полнотекстовые.

По характеру организации хранения данных и обращения к ним БД принято делить на локальные; общие; распределенные.

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

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

По языкам общения СУБД классифицируют на: открытые; замкнутые; смешанные.

Открытые СУБД построены с помощью языков высокого уровня. Закрытые СУБД имеют собственные языки общения с пользовате-

ëåì.

По числу уровней в архитектуре СУБД делятся на: одноуровневые; двухуровневые; трехуровневые.

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

СУБД классифицируют также и по выполняемым функциям: на информационные и операционные, и по сфере возможного применения: на универсальные и специализированные.

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

211

Информатика

Новым направлением в развитии программного обеспечения БнД являются генераторы систем баз данных. Они позволяют разработчику строить собственную СУБД нового типа без полного переписывания программного кода. К таким средствам можно отнести возможности, например, систем программирования Borland Delphi, Oracle и др.

5.4. Этапы проектирования баз данных

В базе данных всегда отражается информация об определенной предметной области.

K Предметной областью называется часть реального мира, представляющая интерес для данного исследования (использования).

Процесс проектирования БД представляет собой сложный процесс проектирования отображения: «Описание предметной области» <=> «Схема внутренней модели базы данных».

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

Основные этапы проектирования подразделяются на два больших этапа:

Инфологическая модель предметной области (ИЛМ);

Датологическая модель данных (ДЛМ).

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

На уровне ИЛМ осуществляется анализ информации о предметной области и ее описание. Следует отметить, что эта информация мало зависит от выбранной СУБД.

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

ДЛМ называется датологическим проектированием.

212

Глава 5. Базы данных

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

Описание физической структуры БД называется схемой хранения. Соответствующий этап проектирования БД называется физическим проектированием. К числу работ физического уровня относятся:

выбор типа носителя,

выбор способа организации данных,

выбор методов доступа,

определение размера физического блока,

управление размещением данных на внешнем носителе,

управление свободной памятью,

определение целесообразности сжатия данных,

определение методов сжатия данных,

оценка физической модели данных.

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

Âнастоящее время наблюдается тенденция к сокращению работ на стадии физического проектирования, так как в большинстве случаев современные СУБД предоставляют средства, называемые конструкторами (Microsoft Access). Иногда эти работы вообще бывают скрыты от проектировщика.

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

ååописание называется подсхемой. Если СУБД «поддерживает» схему хранения и подсхему, то она является СУБД с трехуровневой архитектурой и состоит из: схемы-ДЛМ данных; схемы строения; подсхемыописанияхранениябазыданныхсточкизренияпользователя.ЕслиСУБД поддерживает уровень подсхем, то перед проектировщиком встает задача их определения. Это тоже можно рассматривать как этап проектирования БД. Одну и ту же БД можно разработать для нескольких пользователей.

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

213

Информатика

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

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

Ï Î

È Ë Ì Ï Î

Внешние модели (ко-

 

 

нечные пользователи)

Ñ Ó Á Ä

Ä Ë Ì

 

 

Физическое

 

 

проектирование

 

 

Описание БД (схемы,

 

 

схемы хранения)

 

 

Внешние модели

 

 

(подсхемы)

 

Рис. 5.3

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

214

Глава 5. Базы данных

5.4.1. Инфологическое моделирование

Для отображения предметной области при ИЛМ необходимо, чтобы описание не зависело от исследователя. Хотя не возбраняется для этих целей использовать естественный язык, рекомендуется все же применять искусственные формализованные языковые средства, т.е. ИЛМ должна строится вне зависимости от той СУБД, которая будет в дальнейшем использоваться для работы с БД. Таким образом, требования, предъявляемые к инфологической модели, относятся также к языку.

Основные требования к ИЛМ являются:

адекватное отображение предметной области (философское требование);

язык для представления ИЛМ должен быть выразительным,

отражение интересов всех пользователей;

не должны допускать двоякую трактовку;

обладать свойством легкой расширяемости;

возможностями удаления данных;

возможности композиции и декомпозиции.

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

Êдополнительным требования ИЛМ можно отнести:

автоматически изменение БД при изменении ИЛМ,

читабельность ИЛМ разными категориями пользователей и проектировщиков,

однозначность восприятия ИЛМ всеми категориями специалистов.

Êкомпонентам ИЛМ относятся (рис. 5.4):

Описание объектов и связи между ними (ER-модель, Entity-

Relashionship).

Инфологическая модель

Описание

 

 

 

 

 

 

 

 

объектов и

 

Лингвисти-

 

Ограничения

 

Описание

 

Алгоритми-

связей между

 

ческие

 

целостности

 

информационных

 

ческие связи

íèìè

 

отношения

 

 

 

потребностей

 

показателей

(ER-модель)

 

 

 

 

 

пользователей

 

 

 

 

 

 

 

 

 

 

 

Рис. 5.4

215

Информатика

Лингвистические отношения.

Ограничение условности.

Описание информационных потребностей пользователей.

Алгоритмические связи пользователей.

Этапыпостроениемодели«объект-свойство-отношение»рассмотрим на примере предметной области «высшее учебное заведение», вуз.

Нельзя сказать, что в настоящее время существует какой-либо стандарт или хотя бы общепринятый способ построения инфологической модели. Для описания ИЛМ используются как языки аналитического (описательного) типа, так и графические средства. Графические средства в последнее время приобретают все большую популярность, связанное с наглядностью и простотой восприятия и анализа. Далее для отображения модели «объект – свойство – отношение» воспользуемся графическимспособом.Впредметнойобластивыделяютсяклассыобъектов. Классом объектов называют совокупность объектов, обладающих одинаковым набором свойств. Например, для предметной области ВУЗ можно определить классы объектов: учащиеся, преподаватели, аудитории, дисциплины и т.д. Объекты могут быть реальными или абстрактными («дисциплины»).

При отражении в информационной системе каждый объект представляется своим идентификатором, который отличает один объект класса от другого, а каждый класс объектов представляется именем этого класса.

Каждый объект обладает определенным набором свойств. Для объектов набор этих свойств одинаков, а их значения, естественно, могут отличаться. Так для объектов класса «СТУДЕНТ» таким набором свойств может быть «ГОД РОЖДЕНИЯ», «ПОЛ» и др.

При построении ИЛМ объект изображается:

а свойство изображается:

Каждому классу объектов ИЛМ присваивается уникальное имя. Кроме этого может использоваться его короткое кодовое обозначение.

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

1. Единичное свойство, когда объект обладает одним из значений свойства (например: год рождения). Для изображения используется одинарная стрелка: →

216

Глава 5. Базы данных

2.Множественное свойство, когда одному объекту соответствует

более одного значения свойства (например: сотрудник – иностранный язык). Изображение: ↔

3.По постоянству во времени свойства подразделяются на статистические (год рождения, место рождения) и динамические (образование).

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

5.В ИЛМ можно определить составное свойство, которое определяется через другие свойства (Адрес = Город + Улица + Дом + Квартира; Дата рождения = День + Месяц + Год).

Кроме связи между объектами и некоторыми свойствами в ИЛМ фиксируются связи между объектами разных классов.

Различают связи типа:

1 : 1 (один к одному) обозначение M : 1 (многие к одному) обозначение 1 : M (один ко многим) обозначение

M : M (многие ко многим) обозначение

Кроме степени связи в ИЛМ для характеристики связи между разными сущностями надо указывать так называемый класс принадлежности, который устанавливает возможность связи объекта данного класса с каким-либо объектом другого класса (не для всех обязательная).

Отношения принадлежности рассмотрим на примере между «ЛИЧ- НОСТЬ» (некоторый индивидуум) и «КЛУБ» (общество, клуб, ассоциация, партия и т.п.).

1. Пусть каждая «ЛИЧНОСТЬ» может входить не более чем в один «КЛУБ» (партию). В этом случае мы получим отношение М:1. Заметим, в этом случае не каждая личность имеет связь с клубом (партией), а каждый клуб (партия) может иметь более чем одного члена.

ЛИЧНОСТЬ

ÊËÓÁ

ЛИЧНОСТЬ

ÊËÓÁ

Ë1

Ê1

 

 

 

 

Ë2

Ê2

 

 

Ë3

Ê3

 

 

Ë4

Ê4

 

 

Ë5

Ê5

2. Пусть теперь каждая «ЛИЧНОСТЬ» может входить в любое число «КЛУБОВ» (общества). В этом случае мы получим отношение М:М.

217

Информатика

ЛИЧНОСТЬ

ÊËÓÁ ЛИЧНОСТЬ

ÊËÓÁ

 

Ë1

Ê1

 

Ë2

Ê2

 

Ë3

Ê3

 

Ë4

Ê4

 

Ë5

Ê5

Объекты подразделяются на следующие классы:

1.Простые объекты, объекты которые не допускают дальнейшей детализации в данной предметной области (например, «День», «Сумма», «Фамилия»).

2.Сложные объекты, объекты связанные отношением «целое–часть» («Дата – День», «Оплата – Сумма», «Ф.И.О. – Фамилия»).

3.Обобщенные объекты, которые описываются отношением «род – вид» (учащиеся: школьники, студенты, аспиранты; сотрудники: руководители, рабочие, ученики).

4.Агрегированные объекты – объединение объектов и отношений между ними («Экзамен»: «Дисциплина», «Дата», «Время», «Форма оценки», «Экзаменатор»). Агрегированные объекты обозначаются в виде ромба.

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

5.4.2. Датологическое моделирование

Исходными данными для ДЛМ служат:

1.Инфологическая модель описания предметной области.

2.Характеристики СУБД для построения ДЛМ:

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

формы отображения отношений между ними;

методики проектирования на СУБД и их особенности;

218

Глава 5. Базы данных

возможности автоматизации проектирования;

ограничения на количественные характеристики СУБД (длина записи, число полей записи).

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

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

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

Особенностями ДЛМ является то, что информация хранится в файлах БД.

Различают следующие виды особенностей ДЛМ:

1.Особенности внутризаписной структуры:

линейная – информация располагается в строчку, поля располагаются одно за другой и находятся в одинаковом соотношении друг к другу;

иерархическая – присутствуют составные объекты.

2.Особенности по структуре записи:

с постоянным составом – все записи содержат одинаковое коли- чество объектов;

с переменным составом – записи имеют отличные от других компоненты, или не содержат компоненты, содержащиеся в других. Например, запись с вариантами в языке программирования Паскаль.

3.Особенности по длине записи:

с фиксированной длиной;

с переменной длиной;

с неопределенной длиной.

219

Информатика

5.5. Проектирование реляционных баз данных

Датологическое проектирование определяет логическую структуру БД с использованием конкретной СУБД.

Рассмотрим СУБД реляционного типа.

В зависимости от ИЛМ, форм связей между объектами, форм связей объектов и его свойств могут получиться один или несколько файлов БД от одной конструкции.

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

Возможны несколько конструкций.

Конструкция 1-го типа:

Î1

 

 

Ñ1

Ñ23

Ñ32

Для каждого единичного объекта с его единичными свойствами строится файл с идентификатором объекта и полями для отображения его единичных свойств.

Конструкция 2-го типа:

Î1

 

 

Ñ1

Ñ2

Ñ3

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

220