Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции ИТвМ2011КОНТР_РАБ.doc
Скачиваний:
19
Добавлен:
16.11.2018
Размер:
708.61 Кб
Скачать

Лекция № 2

2 Функции субд. Типовая организация субд. Модели баз данных.

Рассматриваемые вопросы:

  1. Управление данными во внешней памяти

  2. Управление буферами оперативной памяти

  3. Управление транзакциями

  4. Журнализация и восстановление БД после сбоев

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

  6. Типовая организация современной СУБД

  7. Модели баз данных

При работе с БД чаще всего от СУБД требуется выполнять следующие типовые операции:

  1. создание/модификация свойств/удаление таблиц в БД;

  2. поиск, отбор, сортировка информации по запросам пользователей;

  3. добавление новых записей;

  4. модификация существующих записей;

  5. удаление существующих записей.

Выделяют следующие основные функции СУБД, благодаря которым СУБД способна эффективно выполнять операции обработки БД:

    1. Управление данными во внешней памяти

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

    1. Управление буферами оперативной памяти

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

    1. Управление транзакциями

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

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

Пример нарушения целостности данных.

Сотрудники

Сотр_Номер

Сотр_Имя

Сотр_Зарп

Сотр_Отд_Номер

1

Иванов И.И.

1000$

2

2

Cидоров С.С.

500$

2

3

Федоров П.И.

700$

2

Отделы

Отд_Номер

Отд_Рук

Отд_Сотр_Зарп

Отд_Размер

1

Курочкин С.А.

2500$

10

2

Рябцев Т.А.

1500$

2

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