Программное обеспечение. Программное обеспечение занимает промежуточное положение между «физической» базой данных, хранящей физические записи

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

К числу основных функций СУБД принято относить следующие:

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

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

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

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

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

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

4. Журнализация.

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

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

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

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

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

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

Условно программные средства СУБД можно разделить на следующие основные части:

- процессор запросов, включающий компилятор ЯМД, интерпретатор ЯОД и подсистему обработки запросов. Процессор осуществляет всю работу по обработке запросов к БД и определению структуры БД.

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

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

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

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

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

1. Дайте определение информационных систем?

2. Опишите историю развития информационных систем?

3. Определите понятие информационных технологий?

4. Раскройте область применения информационных технологий?

5. Дайте определение баз данных?

6. Опишите историю создания баз данных?

7. Дайте классификацию баз данных?

8. Что подразумевается под понятием вычислительные системы?

9. Дайте классификацию вычислительных систем?

10. Опишите режимы работы вычислительных систем?

11. Объясните понятие информационных процессов?

12. Что такое архитектура баз данных?

13. Определите пользователей БД?


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



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