Студопедия

КАТЕГОРИИ:

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


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




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

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

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

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

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

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

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

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

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

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

 


Поделиться:

Дата добавления: 2015-04-04; просмотров: 408; Мы поможем в написании вашей работы!; Нарушение авторских прав





lektsii.com - Лекции.Ком - 2014-2024 год. (0.005 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты