Системы управления базами данных (СУБД)
Как упомянуто выше, СУБД называют программную систему, предназначенную для создания на компьютерах общей БД, используемой для решения множества задач. Подобные системы служат для поддержания базы данных в рабочем состоянии и обеспечивают эффективный доступ пользователей к содержащимся в ней данным. СУБД предназначена для централизованного управления базой данных в интересах всех работающих в этой системе пользователей.
По степени универсальности различают два класса СУБД: 1) системы общего назначения; 2) специализированные системы.
Специализированные СУБД создаются в редких случаях при невозможности или нецелесообразности использования СУБД общего назначения.
СУБД общего назначения не ориентированы на какую-либо предметную область или на информационные потребности какой-либо группы пользователей. Каждая система такого рода реализуется как программный продукт, способный функционировать на некоторой модели компьютера в определённой операционной системе и поставляется многим пользователям как коммерческое изделие. Такие СУБД обладают средствами настройки на работу с конкретной базой данных. Этим СУБД присущи развитые функциональные возможности и даже определённая функциональная избыточность.
СУБД общего назначения характеризуются:
- временем выполнения операций импортирования базы данных из других форматов;
- скоростью создания индексов и выполнения таких массовых операций, как обновление, вставка, удаление данных;
- максимальным числом параллельных обращений к данным в многопользовательском режиме;
-временем генерации отчёта.
СУБД выполняет следующие функции:
1.Обеспечение целостности данных на уровне СУБД. В случае многопользовательских систем стоимость неправильных или утерянных данных может быть огромной и иметь разрушительные последствия. В таких средах главная роль СУБД сохранить целостность базы данных.
Эта характеристика подразумевает наличие средств, позволяющих удостовериться, что информация в базе данных всегда остаётся корректной и полной. Должны быть установлены правила целостности, и они должны храниться вместе с базой данных и соблюдаться на глобальном уровне. Целостность данных должна обеспечиваться независимо от того, каким образом данные заносятся в память (в интерактивном режиме, посредством импорта или с помощью специальной программы).
Одна транзакция (процесс изменения базы данных, вызванный передачей одного входного сообщения) может потребовать нескольких действий на уровне базы данных. Например, для перевода средств между банковскими счетами необходимо уменьшить баланс одного счета и увеличить баланс другого. Между этими двумя действиями в базе данных может быть противоречие, т.к. в краткий миг между списанием средств и зачислением их на другой счет наблюдается недостача средств. В случае больших баз данных с огромным количеством транзакций высока вероятность того, что в случайные моменты времени можно застать базу данный в середине выполнения транзакции. Запросы на выполнение транзакций или неполадки оборудования могут произойти в то время, когда баз данных находится в противоречивом состоянии. Цель СУБД – гарантировать, что неполадка не зафиксирует базу данных в противоречивом состоянии.
К средствам обеспечения целостности данных на уровне СУБД относятся:
- встроенные средства для назначения первичного ключа, в том числе средства для работы с типом полей с автоматическим приращением, когда СУБД самостоятельно присваивает новое уникальное значение;
- средства поддержания ссылочной целостности, которые обеспечивают запись информации о связях таблиц и автоматически пресекают любую операцию, приводящую к нарушению ссылочной целостности.
Некоторые СУБД имеют хорошо разработанный процессор СУБД для реализации таких возможностей, как уникальность первичных ключей, ограничение (пресечение) операций и даже каскадное обновление и удаление информации. В таких системах проверка корректности, назначаемая полю или таблице, будет проводиться всегда после изменения данных, а не только во время ввода информации с помощью экранной формы. Это свойство можно настраивать для каждого поля и для записи, в целом, что позволяет контролировать не только значения отдельных полей, но и взаимосвязи между несколькими полями данной записи.
2. Обеспечение безопасности.СУБД обычно содержат средства обеспечения безопасности данных. Такие средства обеспечивают выполнение следующих операций:
- шифрование прикладных программ;
- шифрование данных;
- защиту паролем;
- ограничение уровня доступа (к базе данных, к таблице, к словарю, для пользователя).
3. Работа в многопользовательских средах. Практически все СУБД, предназначены для работы в многопользовательских средах, но обладают для этого различными возможностями.
Обработка данных в многопользовательских средах предполагает выполнение программным продуктом следующих функций:
- блокировку базы данных, файла, записи, поля;
- идентификацию станции, установившей блокировку;
- обновление информации после модификации;
- контроль за временем и повторение обращения;
- обработку транзакций (транзакция - последовательность операций пользователя над базой данных, которая сохраняет её логическую целостность);
- работу с сетевыми системами
4. Импорт – экспорт данных. Эта характеристика отражает возможность обработки СУБД информации, которая подготовлена другими программным средствами. [1, 4, 5]
Доступ к данным посредством языка SQLЯзык запросов SQL (Structured query language - язык структурированных запросов) реализован в целом ряде популярных СУБД для различных типов компьютера либо как базовый, либо как альтернативный. Является международным языком запросов. Он предоставляет развитые возможности, как пользователям БД, так и специалистам в области обработки данных. Этот язык широко используется программистами, создающими приложения для работы с базами данных.
Любая СУБД позволяет выполнять четыре простейшие операции с данными:
- добавлять в таблицу одну или несколько записей;
- удалять из таблицы одну или несколько записей;
- обновлять значения некоторых полей в одной или нескольких записях;
- находить одну или несколько записей, удовлетворяющих заданному условию.
Для выполнения этих операций используется механизм запросов. Результатом выполнения запросов является либо отобранное по определенным критериям множество записей, либо изменения в таблицах. Запросы к базе формируются на языке SQL.