Главная

Категории:

ДомЗдоровьеЗоологияИнформатикаИскусствоИскусствоКомпьютерыКулинарияМаркетингМатематикаМедицинаМенеджментОбразованиеПедагогикаПитомцыПрограммированиеПроизводствоПромышленностьПсихологияРазноеРелигияСоциологияСпортСтатистикаТранспортФизикаФилософияФинансыХимияХоббиЭкологияЭкономикаЭлектроника






Тема 4. Системы управления базами данных


Тема 4. Системы управления базами данных

План

4.1. Понятие и классификация СУБД

4.2. Языковые и программные средства СУБД

4.3. Архитектура типичной СУБД

4.4. Функциональные возможности СУБД

4.5. Производительность СУБД

Понятие и классификация СУБД

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

По степени универсальности различают два класса СУБД:

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

специализированные системы, функционирующие на некоторой модели ЭВМ в определенной операционной системе и имеют средства настройки на работу с БД в конкретной предметной области.

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

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

По мощности выделяют настольные и корпоративные СУБД. Настольные системы (Access, FoxPro, Paradox) ориентированы на конечных пользователей (специалистов в конкретной предметной области). Они не предъявляют высоких требований к техническим средствам, отличаются низкой стоимостью. Корпоративные СУБД (Oracle, SyBase, DB2) обеспечивают работу в распределенной среде, имеют высокую производительность, развитые средства администрирования и более широкие возможности поддержания целостности. СУБД MS SQL Server, Interbase имеют возможности и настольных и корпоративных систем.

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

Архитектура типичной СУБД

В структуре типичной СУБД выделяются: ядро СУБД, компилятор языка базы данных (обычно SQL), подсистему поддержки времени выполнения, набор утилит.

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

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

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

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

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

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

При журнализации используется стратегия "упреждающей" записи в журнал (протокол Write Ahead Log - WAL). Стратегия заключается в том, что запись об изменении любого объекта БД должна попасть во внешнюю память журнала раньше, чем измененный объект попадет во внешнюю память основной части БД. При соблюдении протокола WAL с помощью журнала можно решить все проблемы восстановления БД после любого сбоя.

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

Компилятор языка БД преобразует операторы языка БД в выполняемую программу. Результат компиляции – выполняемая программа, представляется в машинных кодах или в выполняемом внутреннем машинно-независимом коде.

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

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

Производительность СУБД

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

1. Скорость выполнения массовых операций: обновление, вставка, удаление данных

2. Время выполнения запросов

3. Скорость поиска информации в неиндексированных полях

4. Скорость создания индексов

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

6. Максимальное число параллельных обращений к данным в многопользовательском режиме

7. Время генерации отчета и др.

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

– объемы и характер хранимых данных;

– динамика поступления и изменения данных;

– технология хранения данных: локальная или распределенная;

– необходимость многопользовательского режима использования хранимых данных;

– выбранная модель данных;

– гарантия целостности данных;

– необходимость механизма транзакций;

– необходимость реплицирования данных.

Контрольные вопросы

1. Понятие и назначение СУБД.

2. Классификация СУБД

3. Языковые средства СУБД

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

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

6. Состав ядра СУБД. Понятие транзакции.

7. Основные функциональные возможности СУБД. Понятие триггера.

8. Многопользовательские функции СУБД. Понятие репликации БД.

9. Производительность СУБД

 

Тема 4. Системы управления базами данных

План

4.1. Понятие и классификация СУБД

4.2. Языковые и программные средства СУБД

4.3. Архитектура типичной СУБД

4.4. Функциональные возможности СУБД

4.5. Производительность СУБД

Понятие и классификация СУБД

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

По степени универсальности различают два класса СУБД:

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

специализированные системы, функционирующие на некоторой модели ЭВМ в определенной операционной системе и имеют средства настройки на работу с БД в конкретной предметной области.

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

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

По мощности выделяют настольные и корпоративные СУБД. Настольные системы (Access, FoxPro, Paradox) ориентированы на конечных пользователей (специалистов в конкретной предметной области). Они не предъявляют высоких требований к техническим средствам, отличаются низкой стоимостью. Корпоративные СУБД (Oracle, SyBase, DB2) обеспечивают работу в распределенной среде, имеют высокую производительность, развитые средства администрирования и более широкие возможности поддержания целостности. СУБД MS SQL Server, Interbase имеют возможности и настольных и корпоративных систем.

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



Последнее изменение этой страницы: 2016-07-22

headinsider.info. Все права принадлежат авторам данных материалов.