Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






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

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

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

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

Прикладные программы относятся к категории приложений.

Банк данных — обычно БД или несколько БД, связанных ме­жду собой логически.

Модель данных — описание принципов, на основе которых построена БД. При разработке БД используют инструменталь­ные программные средства СУБД.

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

Непосредственное управление данными во внешней памяти. Эта функция включает обеспечение необходимых структур внешней памяти как для хранения данных, непосредственно входящих в БД, так и для служебных целей, например, для повышения ско­рости доступа к данным в некоторых случаях (индексирование).

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

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

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

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

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

 

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

 

Логически в современной реляционной СУБД выделяют внутреннюю часть — ядро СУБД (часто его называют Data Base Engine), компилятор языка БД (обычно SQL), подсистему под­держки времени выполнения, набор утилит. В некоторых систе­мах эти части выделяются явно, в других — нет, но логически такое разделение можно провести во всех СУБД.

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

<== предыдущая лекция | следующая лекция ==>
Характеристика групп критериев развития технических объектов | Становление полисной цивилизации в Греции. Роль Афин и Спарты в жизни греческого мира.
Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.007 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал