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

СУБД / УМК СУБД

.pdf
Скачиваний:
165
Добавлен:
09.02.2016
Размер:
3.32 Mб
Скачать

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

3.Задание ограничений целостности при описании структуры БД и процедур обработки данных.

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

5.Защита данных:

обеспечение парольного входа в систему;

определение прав доступа пользователей к данным;

выбор и создание программно-технических средств защиты данных;

тестирование средств защиты данных;

сбор статистики об использовании данных;

исследование случаев нарушения защиты данных;

обеспечение восстановления БД, ведение системных журналов.

6.Анализ обращений пользователей к БД.

7.Работа с конечными пользователями.

8.Работа над совершенствованием и динамическим развитием СБД.

Тема 3. Взаимодействие компонентов системы баз данных

На рис. 8 представлена схема взаимодействия компонентов СБД в процессе создания и эксплуатации. Создание БД начинается с проектирования и описания на ЯОД (1).

На этом этапе могут использоваться методики ручного проектирования и CASE-

средства, автоматически генерирующие описания БД.

Описания вводятся в СБД и запоминаются в соответствии с требованиями конкретной СУБД (2,3).

После того как описание БД сохранено, в нее вводятся данные (4). При этом СУБД использует метаинформацию, зафиксированную в словаре данных.

25

Рисунок 8. Схема взаимодействия компонентов СБД Заполненная БД используется для извлечения необходимой пользователям

информации (5). При формулировании запросов используется информация, содержащаяся

всхемах и подсхемах. В результате выполнения запроса пользователю выдаются выходные данные (6). Кроме данных выдается диагностическая информация (7). Для обеспечения надежности необходимо осуществлять журнализацию выполняемых действий (8) и регулярно архивировать данные.

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

вБД и выдается пользователям.

По характеру организации данных БД могут быть разделены на неструктурированные,

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

26

В структурированных БД различают несколько уровней информационных единиц (ИЕ),

входящих одна в другую. Большинство систем поддерживает:

поле – наименьшая семантическая единица информации;

совокупность полей (или более сложных ИЕ) образует запись;

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

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

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

Вфактографических БД хранится информация фактического характера – числовые или текстовые характеристики объектов, представленные в формализованном виде. В

ответ на запрос выдается информация об интересующем объекте.

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

схранением документа на машинных носителях. К первому типу относятся

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

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

Клексикографическим БД относятся различные словари (классификаторы,

многоязычные словари, словари основ слов и т. п.).

По характеру организации хранения данных и обращения к ним различают локальные

(персональные), общие (интегрированные, централизованные) и распределенные БД (рис.

9).

База данных

Общая Распределенная Локальная (интегрированная)

(персональная)

Пользователи

Рисунок 9. Классификация БД по характеру хранения и обращения к данным

27

Персональная БД предназначена для локального использования одним пользователем.

Локальные БД могут создаваться каждым пользователем самостоятельно, а могут извлекаться из общей БД.

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

Распределяться по узлам сети могут и другие компоненты СБД. Сама БД при этом может быть нераспределенной. Поэтому различают:

распределенные БД;

распределенные СБД (в которых распределен хотя бы один компонент).

В некоторых источниках упоминают экстенсиональные и интенсиональные БД.

Первые строятся с помощью явного хранения данных в БД, вторые – с помощью правил,

определяющих их содержание.

Также БД классифицируются по объему. Особое место здесь занимают так называемые

очень большие БД. Для больших БД по-иному ставятся вопросы обеспечения эффективности хранения информации и обеспечения ее обработки.

Тема 4. Классификация СУБД

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

По выполняемым функциям СУБД делятся на информационные и операционные.

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

По сфере возможного применения различают универсальные и специализированные

(проблемно ориентированные СУБД).

Набор типов данных в разных СУБД различен. Ряд СУБД позволяет разработчику добавлять новые типы данных и новые операции. Такие системы называются

расширяемыми системами баз данных. Дальнейшим развитием являются системы объектно-ориентированных баз данных, обладающие мощными возможностями моделирования сложных объектов.

По мощности СУБД делятся на настольные (Dbase, FoxBase/FoxPro, Clipper, Paradox, Access, Approach) и корпоративные (Oracle, DB2, Sybase, Informix, Ingres, Progress). Для первых характерны невысокие требования к техническим средствам, ориентация на

28

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

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

Microsoft SQL Server. В последние годы наметилась тенденция к стиранию границ между настольными и профессиональными системами.

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

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

По характеру преобладающей обработки информации различают (табл. 1):

системы OLTP (On-Line Transaction Processing);

системы OLAP (On-Line Analytical Processing).

В качестве синонима OLAP используют термин «хранилища данных» (Data

Warehousing). Хранилища данных могут быть разбиты на два типа:

корпоративные хранилища данных (enterprise data warehouses);

витрины данных (data marts).

Таблица 1 – Распределение по характеру преобладающей обработки информации.

Характеристика

OLTP

OLAP

Преобладающие операции

Ввод данных, поиск

Анализ данных

Характер запросов

Много простых транзакций

Сложные транзакции

 

Оперативные,

Охватывающие большой

Хранимые данные

период времени,

детализированные

 

агрегированные

 

 

Вид деятельности

Оперативная, тактическая

Аналитическая,

стратегическая

 

 

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

Витрины данных содержат подмножество корпоративных данных и строятся для отделов или подразделений организации. Строятся силами отдела и охватывают аспект,

интересующий сотрудников отдела. Данные могут поступать из корпоративного хранилища или непосредственно из оперативных источников.

29

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

(территориальный, временной, ведомственный, проблемный).

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

По форме собственности СБД делятся на государственные и негосударственные

(частные, групповые, личные).

Тема 5. Модели данных

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

Иерархическая модель позволяет строить БД с древовидной структурой. В них каждый узел содержит свой тип данных (сущность). На верхнем уровне дерева имеется один узел

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

ОРГАНИЗАЦИЯ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Отделы

 

 

 

 

 

Филиалы

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Начальник

 

Сотрудники

 

 

 

 

Оборудование

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Компьютеры

 

 

 

 

Прочие

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

устройства

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 11. Иерархическая древовидная структура модели БД Поиск данных всегда начинается с корня. Затем производится спуск с одного уровня

на другой пока не будет достигнут искомый уровень. Перемещения от одной записи к другой осуществляются с помощью ссылок.

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

30

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

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

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

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

Преподаватель 1

Преподаватель 2

Преподаватель 3

Студент 1

Студент 2

Студент 3

Студент 4

Рис. 12. Сетевая структура модели БД Использование иерархической и сетевой моделей ускоряет доступ к информации, но

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

Реляционная модель(РМД) была разработана в начале 1970-х годов Эдгаром Ф.

Коддом. В ней информация представляется в виде двумерных таблиц, а операции сводятся

кманипуляциям с таблицами.

В1980-х годах она получила широкое распространение, а реляционные СУБД стали промышленным стандартом. Причины доминирования РМД обусловлены тем, что имеются:

. развитая теория (реляционная алгебра); · аппарат сведения других моделей данных к РМД;

·специальные средства ускоренного доступа к информации; · стандартизированный высокоуровневый язык запросов к БД, позволяющий

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

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

31

 

Студент

 

 

 

Стипендия

 

 

(номер)

 

 

 

(результат)

 

 

 

 

 

 

 

 

 

 

(номер)

 

 

 

 

 

(результат)

 

 

 

 

Сессия

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(номер)

 

 

 

 

 

 

 

 

(результат)

 

 

 

 

 

 

 

 

 

 

 

 

 

Рисунок 13. Реляционная модель данных.

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

задают им поведение, копирующее или моделирующее какой-либо аспект их поведения в реальном мире.

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

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

Реализация объектно-ориентированного подхода характеризуется следующими ключевыми свойствами объектов:

Полиморфизм

Инкапсуляция

Наследование

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

(эллипс, многоугольник) может иметь методы для геометрических трансформаций

(смещение, поворот, масштабирование). Полиморфизм позволяет писать более абстрактные программы и повысить коэффициент повторного использования кода.

32

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

Используя аналогию, предложенную Стивом Куком (Steve Cook) [Грехем], можно рассматривать эти объекты как яйца. Желток — это структура данных, белки состоят из функций, которые имеют доступ к этим данным, а скорлупа представляет описание общедоступных операций. Оболочка интерфейса скрывает реализацию и самих функций,

и структур данных.

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

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

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

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

масштабироваться, поворачиваться и др.), отношения с другими объектами (например,

соседство или пересечение с объектами других классов).

Компоненты объектно-ориентированной модели данных.

Рассмотрим компоненты объектно-ориентированной модели данных.

В объектно-ориентированной модели данных любая сущность реального мира, (здания,

реки или банковские счета) являются объектами. Их атрибуты также является объектами этой структуры.

Объект – любая сущность реального мира. Объекты характеризуются свойствами,

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

Линии поведения - это методы, или операции, которые объект может реализовать.

Например, улица может "знать", как рассчитать увеличение времени, необходимое для

33

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

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

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

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

Класс – это способ группирования объектов, имеющих одинаковые наборы атрибутов и линии поведения, в шаблон. Объекты определенного класса называются экземплярами этого класса.

Отношения – описывают то, как объекты ассоциированы друг с другом.(См. рис. 14.)

Группа

Класс

Студент

предмет оценка Атрибуты стипендия

Вывести средний бал Рассчитать размер стипендии

Присвоить стипендию Методы Лишить стипендии

Рисунок 14. Компоненты объектно-ориентированной модели.

Отношения: кратность ассоциаций. Ассоциации описывают отношения между классами. Ассоциация имеет определенную кратность с каждой из сторон.

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

1 - один и только один

0…1 - ноль или один

М…N - от М до N (целые положительные числа)

или 0…* - от 0 до любого целого положительного числа

• 1…* - от единицы до любого целого положительного числа, например, рис. 15.

Студент

 

Предмет

 

 

 

Рисунок 15. Кратность ассоциаций.

34

Соседние файлы в папке СУБД