Классификация СУБД. Режимы работы пользователя в СУБД
По степени универсальности:
СУБД общего назначения не ориентированы на какую-либо конкретную предметную область или на информационные потребности конкретной группы пользователей. Они не всегда позволяют добиться требуемой производительности и/или удовлетворить заданные ограничения по объёму памяти, предоставляемой для хранения БД.
Тогда - специализированную СУБД для данного конкретного применения. Примером специализированной СУБД может быть система IMBASE, используемая для автоматизации проектных и конструкторских разработок.
По типу модели данных,
• иерархические. Первой такая СУБД - система IMS (Information Management System) компании IBM,
• сетевые. Первой сетевой СУБД считается система IDS (Integrated Data Store), разработанная компанией General Electric немного позже системы IMS;
• реляционные. Первые коммерческие реляционные СУБД от компаний IBM, Oracle Corporation, Relation Technology Inc. и других поставщиков появились в начале 80-х годов. Реляционные СУБД просты в использовании, повышают производительность программистов при разработке прикладных программ, хорошо приспособлены для работы в архитектуре клиент/сервер, позволяют параллельную обработку БД, хорошо приспособлены к графическим пользовательским интерфейсам.
• объектно-реляционные (постреляционные). Объектно-реляционные СУБД продолжают использовать стандартный язык запросов для реляционных БД – SQL, но с объектными расширениями;
• объектно-ориентированные. В основе объектно-ориентированных СУБД лежит объектно-ориентированная модель обработки данных.
• многомерные, в основе которых лежит многомерная модель данных.
На самом общем уровне все СУБД можно разделить на:
- профессиональные (промышленные), которые представляют собой программную основу для разработки автоматизированных систем управления крупными экономическими объектами. (Oracle, DB2, Sybase, Informix, Inqres, Progress.)
- персональные (настольные). (DBASE,FoxBase, FoxPro, Clipper, Paradox, Access.)
«Режим» - определённый порядок работы или состояния компьютера или программы.
Возможна работа пользователя с СУБД в трех режимах:
1) Через меню системы. Он реализуется чаще всего в виде различных меню и диалоговых окон, с помощью которых пользователь постепенно уточняет, какие действия он хочет выполнить и какую информацию получить из БД. Для этого не надо знать языка СУБД.
2) Командный режим – интерактивный режим. Это способ реализации возможностей языка, т.е. непосредственное выполнение команд. Система выдаёт подсказку и ожидает ответа – ввод соответствующей команды. После ввода команды система осуществляет синтаксический контроль текста введённой команды и (при отсутствии ошибок) выполняет команду. Команда в процессе её выполнения может проводить собственный диалог с пользователем или выдавать конкретные сообщения. После выполнения текущей команды система постоянно выдаёт подсказку (приглашение) о готовности принять очередную команду. Обеспечивает более быстрый доступ к данным, но требует знания языка СУБД.
3) Программный режим. Обеспечивает организацию доступа к данным и управление ими из прикладных программ. Пользователь может писать программы на языке команд, который поддерживает СУБД, производить отладку и выполнение программ. Текст программы можно вводить с помощью встроенного текстового или любого другого редактора.
Функции СУБД
1. Ведение словаря данных ( систематизированного каталога)
Описывает метаданные:
• Имена, типы и максимальная длина
• Информация о связях
• Ограничения на данные
• Схемы данных
• Статистические данные
• Имена санкционированных пользователей и др.
1. Поддержка транзакций
Транзакция – набор действий, выполняемых пользователем или программой с целью изменения содержимого БД так, чтобы та не находилась в противоречивом состоянии.
Транзакция – последовательность операций над БД (с целью доступа или изменения содержимого), рассматриваемая СУБД как единое целое.
Изменения в БД фиксируются только при полном выполнении транзакций.
Виды
-простые (добавление, удаление, обновление сведений о некоем объекте)
-сложные (внесение в БД нескольких изменений).
Транзакции необходимы для поддержания логической целостности БД.
2. Восстановление БД после сбоев
Журнализация – «ведение» журнала изменений в БД. Обеспечивает надежность хранения данных во внешней памяти (призвано сохранять промежуточное состояние БД, необходимое для отката транзакций после сбоя)
Сбои:
- мягкие (незавершение работы одной транзакции)
- жесткие (потеря информации во внешней памяти)
Журнал – часть БД, недоступная пользователям СУБД и поддерживаемая с особой тщательностью(иногда поддерживаются 2 копии журнала, расположенные на разных физических дисках), в которую поступают записи обо всех изменениях основной части БД.
При журнализации поддерживается стратегия «упреждающей» записи в журнал: запись об изменении любого объекта БД должна попасть в журнал раньше, чем измененный объект попадет во внешнюю память основной части БД.
Методы восстановления БД с использованием журнала транзакций
1) Накат – внесение изменений в сохраненную копию БД результатов всех завершенных транзакций согласно записям в журнале.
2) Откат – отмена изменений, произведенными в БД ошибочно или незавершенными транзакциями. Далее повторно запуск транзакции, которая выполнялась на момент сбоя.
3. Контроль доступа к данным
4. Поддержка индивидуальной работы
5. Поддержка распределения обработки данных (в сети)
6. Поддержка целостности данных
7. Поддержка независимости от данных (независимость программ от структуры данных)
8. Вспомогательные функции для: администрирования БД, импорта, экспорта БД, статистического анализа.
9. Управление данными во внешней памяти. Включает наличие необходимых структур внешней памяти для хранения данных БД и служебной информации.
10.Управление буферами оперативной памяти.
Причины буферизации данных в оперативной памяти:
-объем БД обычно значительно больше объема оперативной памяти
-если постоянно обращаться ко внешней памяти, то и СУБД будет работать со скоростью устройства внешней памяти.
Существуют отдельные направления развития СУБД, которые ориентированы на постоянное присутствие в оперативной памяти всей БД.
38. Направления развития СУБД: расширение множества типов обрабатываемых данных, интеграция технологий БД и web-технологий, превращение СУБД в системы управления базами знаний.
Направления развития:
1. Расширение множества типов обрабатываемых данных.
Работа не только с алфавитно-цифровым типом данных, но и графикой и звуком (подготовка мультимедийного объекта).
Объединение объектно-ориентированного и реляционного подхода:
-гибридные СУБД (должны представляться в виде объекта, но механизмы работы с ними реляционные).
-расширенный реляционный (реляционные механизмы управления данными расширяются объектно-ориентированными возможностями).
2. Интеграция технологий БД и web-технологий.
Web-мастера становятся фактически администраторами БД.
Многие web-узлы представляют собой аналоги приложений БД. Развивается архитектура клиент-сервер.
Осуществляют распределенное хранение информации и распределенную обработка данных.
Эти технологии формируют основу для создания новой платформы, которая ориентирована на доступ из любой точки.
Упрощается доступ к БД, экономятся время и деньги.
Упрощается создание новых услуг и т.д.
3.- Превращение СУБД в системы управления базами знаний.
База знаний - один или несколько специальным образом организованных файлов, хранящих систематизированную совокупность понятий, правил и фактов, относящихся к некоторой предметной области.
Для построения БЗ применяются методы искусственного интеллекта, специальные языки описания знаний и интеллектуальный интерфейс. БЗ являются основной содержательной частью интеллектуальных систем: информационных, обучающих, систем программирования, экспертных систем, где с их помощью представляются навыки и опыт экспертов-специалистов в данной предметной области.