Автор: Пользователь скрыл имя, 30 Ноября 2010 в 21:28, реферат
Данная работа представлена некоторые теоретические аспекты теории БД, основные понятия, функциональные возможности систем управления БД.
Введение
I. Теоретические аспекты СУБД.
1. Основные понятия БД.
2. Функциональные возможности СУБД.
3. Архитектура СУБД.
4. Типы СУБД.
Заключение
Список литературы
- управление транзакциями.
1. Непосредственное управление данными во внешней памяти.
Эта функция включает обеспечение необходимых структур внешней памяти, как для хранения данных, непосредственно входящие в базу данных так и для служебных целей. Например, для убыстрения доступа к данным в некоторых случаях (обычно для этого используется индекс). В некоторых реализациях СУБД активно используется возможность существующих файловых систем. В других работа производится вплоть до уровня устройств внешней памяти. Но подчеркнем, что в развитых СУБД пользователь в любом случае не обязан знать использование СУБД файловую систему и если использует, то, как организованные файлы. В частности СУБД поддерживает собственную систему и наименование объектов баз данных.
2. Управление буферами оперативной памяти.
СУБД обычно работает с БД, по крайней мере, этот размер обычно существует, больше доступен объему оперативной памяти. Что если при обращении к любому элементу данных будет производиться объем с внешней памятью, то вся система будет работать со скоростью устройства внешней памяти. Практическим единственным способом реально увеличение этой скорости является буферизация данных в оперативной памяти. При этом даже если операционная система производит общесистемную буферизацию. Этого не достаточно для цели СУБД, которая располагает гораздо больше информации о полезности буферизации, т.е. той или иной части БД. Поэтому в развитых СУБД поддерживается собственный набор буферов оперативной памяти, собственной дисциплины замены буферов. Заметим, что существуют отдельные направления СУБД, которые ориентированно, но постоянно присутствуют в оперативной памяти БД. Это направление основывается на предположение, что на столько велик, что позволит, не беспокоится о буферизации. (Пака эта работа находится в стадии развития).
3. Управление транзакциями.
Транзакция
- это последовательность операций
над БД, рассматриваемая СУБД как
единое целое. При выполнении транзакция
может быть либо успешно завершена, и СУБД
зафиксирует произведенные изменения
во внешней памяти, либо, например, при
сбое в аппаратной части ПК, ни одного
из изменений не отразится в БД. Понятие
транзакция необходимо для поддержания
логической целостности БД. Таким образом,
поддержание механизма транзакции является
обязательным условием даже однопользовательских
СУБД. (Если такая система заслуживает
СУБД). Но понятие транзакция гораздо более
важно много пользователь СУБД, то свойство,
то каждая транзакция начинается при целостном
состоянии БД и оставляет это состояние
целостное после своего завершения, делает
очень удобным, использование понятие
транзакция как единицы активности пользователя
по отношению БД. При соответствующем
управлении управляющимися транзакциями
со стороны СУБД каждым использованием
может в принципе ощущать себя единственным
пользователем СУБД. Управление транзакции
многопользовательской СУБД связаны важные
понятия сериализация транзакции и сериального
плана выполнения смеси транзакции. Под
стерилизацией выполнении параллельно
сериализация понимают такой порядок
планирования их работ при которой суммарный
эффект смеси транзакции эквивалентен
эффекту их некоторого последовательного
управления. Сериальный план выполнения
смеси транзакции это такой план, который
приводит к сериализация транзакции. Что
если удается добиться действительного
сериального выполнения смеси транзакции,
то для каждого пользователя по инициативе,
которой образованна транзакция присутствие
других транзакций будет незаметно (если
не считать некоторого замедления работы
по сравнению с одно пользованием режимом).
Существует несколько базовых алгоритмов
сериализация транзакции. Централизованных
СУБД наиболее распространены алгоритмы,
основанные на синхронизации захвата
объектов БД. При использовании любого
алгоритма возможная ситуация конфликта
между двумя или более транзакциями по
доступу объекта БД. В этом случае для
поддержания сериализация необходимы,
выполнять откат одной ли более транзакции.
Это один из случаев, когда пользователь
многопользовательской СУБД может реально
(и достаточно неприятно) ощутить присутствие
в системе транзакции других пользователей.
3. Архитектура СУБД.
Три уровня архитектуры.
Архитектура ANSI/SPARC включает три уровня: внутренний, концептуальный и внешний. В общих чертах они представляют собой следующее:
- Внутренний
уровень-это уровень, наиболее
близкий к физическому
- Внешний
уровень наиболее близок к
пользователям, т.е. он связан
со способами представления
- Концептуальный
уровень-это «промежуточный»
Внешний уровень (индивидуальные представления пользователей).
Концептуальный уровень (обобщенное представление пользователей).
Внутренний уровень (представление в
памяти).
Если
внешний уровень с
У каждого пользователя есть свой язык общения.
- Для прикладного программиста это либо один из распространенных языков программирования, такой как C, COBOL или PL/1, либо специальный язык рассматриваемой системы. Такие оригинальные языки называют (неформально!) языками четвертого поколения на том основании, что машинный код, язык ассемблера и такие языки, как COBOL, можно считать языками трех первых «поколений», а оригинальные языки модернизированы по сравнению с языками третьего поколения так же, как языки третьего поколения улучшены по сравнению с языком ассемблера.
- Для
конечного пользователя это
База данных расположена на мощном выделенном компьютере (сервере), а персональные компьютеры подключены к нему по локальной сети. На этих компьютерах установлены клиентские программы, обращающиеся к базе данных по сети. Преимущество такой архитектуры заключается в возможности одновременной работы нескольких пользователей с одной базой данных. Недостаток такого подхода - большие объемы информации, передаваемой по сети. Вся обработка выполняется на клиентских местах, где фактически формируется копия базы данных. Это приводится к ограничению максимально возможного числа пользователей и большим задержкам при работе с базой. Эти задержки вызываются тем, что на уровне конкретной таблицы одновременный доступ невозможный. Пока программа на одном из клиентских мест не закончит работу с таблицей (например, не выполнит модификацию записей), другие программы не могут обращаться к этой таблице. Это называется блокировкой на уровне таблицы и исключает возникновение путаницы в ее содержимом.
Клиент - серверная архитектура.
В такой архитектуре на сервере не только хранится БД, но и работает программа СУБД, обрабатывающая запросы пользователей и возвращающая им наборы записей. При этом программы пользователей уже не работают, например, с БД как набором физических фалов, а обращаются к СУБД, которая выполняет операции. Нагрузка с клиентских мест при этом снимается, так как большая часть работы происходит на сервере. СУБД автоматически следит за целостностью и сохранностью БД, а также контролирует доступ к информации с помощью службы паролей. Клиент - серверные СУБД допускают блоки на уровне записи и даже отдельного поля. Это означает, что с таблицей может работать любое число пользователей, но доступ к функции изменения конкретной записи или одного из ее полей обеспечен только одному из них.
Основной недостаток этой архитектуры не очень высокая надежность. Если сервер выходит из строй, вся работа останавливается.
Распределенная архитектура.
В сети работает несколько серверов, и таблицы баз данных распределены между ними для достижения повышенной эффективности. На каждом сервере функционирует своя копия СУБД. Кроме того, в подобной архитектуре обычно используются специальные программы, так называемые серверы приложений. Они позволяют оптимизировать обработку запросов большого числа пользователей и равномерно распределить нагрузку между компьютерами в сети. Недостаток распределенной архитектуры заключается в довольно сложном и дорогостоящем процессе ее создания и сопровождения (администрирования), а также, а высоких требованиях к сервером компьютерам.
Интернет - архитектура.
Доступ к базе данных и СУБД (распространенных на одном компьютере или в сети) осуществляется из браузера по стандартному протоколу. Это предъявляет минимальные требования к клиентскому оборудованию. Такие программы называют «тонкими клиентами», потому что они способны работать даже на ПК с процессором 80386. Благодаря стандартизации всех протоколов и внедрять. Например, можно не организовывать локальную сеть, а обращаться к серверу через Интернет в локальной сети (в таком случае говорят о технологиях интранет). В этом случае не требуется разрабатывать специальные клиентские программы или придумывать собственные спецификации обмена данными между сервером и клиентскими местами. Достаточно использовать готовые браузера и программные решения.