Сделай Сам Свою Работу на 5

Основные функции систем управления базами данных.





Лекция №3

Тема: Системы управления базами данных (СУБД): понятия, основные функции. Принципы построения.

 

Понятие систем управления базами данных (СУБД).

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

 

Определение. СУБД — это пакет программ, обеспечивающий поиск, хранение, корректировку данных, формирование ответов на запросы.

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

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

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



Разработка Е. Коддом реляционной теории подтолкнула к созданию следующего класса СУБД. Особенностями второго поколения являются применение реляционной модели данных и развитый язык запросов SQL. Простота и гибкость модели данных позволили стать ей доминирующей и занять лидирующие позиции на соответствующем секторе рынка.

Многие разработчики сегодня выделяют ряд негативных моментов в реляционной модели, среди которых можно выделить невозможность представления и манипулирования данными сложной структуры (тексты, пространственные данные). Это заставляет вести работы по совершенствованию систем второго поколения или создания новой модели данных.

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



Системы управления базами данных можно классифицировать:

ü по используемому языку общения:

· замкнутые, имеющие собственные самостоятельные языки общения пользователей с БД; они обеспечивают непосредственное общение с системой в режиме диалога, позволяют работать без программистов;

· открытые, в которых для общения с БД используется язык программирования, «расширенный» операторами языка манипулирования данными (ЯМД); в этом случае необходимо присутствие квалифицированного программиста;

ü по числу поддерживаемых СУБД уровней моделей данных:

· одно-, двух-, трехуровневые системы. Теоретически обоснован выбор трехуровневой архитектуры данных, однако на практике СУБД для персональных ЭВМ часто объединяют концептуальный и внутренний уровни представления;

ü по выполняемым функциям:

· операционные, предполагающие иные виды обработки по получению информации, не хранящейся в явном виде в БД;

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

ü по сфере применения:

· универсальные, которые настраиваются на любую предметную область путем создания соответствующей БД и прикладных программ;

· проблемно-ориентированные на определенные процедуры обработки данных, присущих конкретной области применения;



ü по допустимым режимам работы:

· пакетные;

· с использованием телеобработки.

 

Основные функции систем управления базами данных.

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

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

  • управление буферами оперативной памяти;
  • управление транзакциями;
  • журнализация и восстановление БД после сбоев;
  • поддержание языков БД.

Рассмотрим каждую из этих функций:

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

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

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

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

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

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

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

Одно из основных требований к СУБД — надежное хранение данных во внешней памяти. Под надежностью хранения понимается то, что СУБД должна быть в состоянии восстановить последнее согласованное состояние БД после аппаратного или программного сбоя. Поддержание надежного хранения данных в базе требует избыточности объема памяти для хранения данных, причем та их часть, которая используется для восстановления, должна храниться особо надежно. Наиболее распространенный метод поддержания такой избыточности — это ведение журнала изменений базы данных. Во всех случаях придерживаются "упреждающей " записи в журнал (так называемый протокол Write Ahead Log). Стратегия заключается в том, что запись об изменении любого объекта БД должна попасть во внешнюю память журнала раньше, чем она попадет во внешнюю память основной части БД. Известно, что если в СУБД корректно соблюдается протокол WAL, то с помощью журнала можно решить все проблемы восстановления БД после любого сбоя.

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

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

 








Не нашли, что искали? Воспользуйтесь поиском по сайту:



©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.