Функции баз данных

Выделяют следующие основные функции СУБД:

управление данными во внешней памяти;

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

управление транзакциями;

журнализация и восстановление БД после сбоев;

поддержание языков БД.

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

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

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

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

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