Шпаргалка по "Программированию и компьютеру"
Шпаргалка, 26 Января 2011, автор: пользователь скрыл имя
Краткое описание
Работа содержит ответы на вопросы по дисциплине "Программирование и компьютеры".
Содержимое работы - 1 файл
шпоры БД.doc
— 405.00 Кб (Скачать файл)35 транзакция и восстановление данных
Восстановление базы данных может производиться в следующих случаях:
- Индивидуальный откат транзакции. Откат индивидуальной транзакции может быть инициирован либо самой транзакцией путем подачи команды ROLLBACK, либо системой. СУБД может инициировать откат транзакции в случае возникновения какой-либо ошибки в работе транзакции (например, деление на нуль) или если эта транзакция выбрана в качестве жертвы при разрешении тупика.
- Мягкий сбой системы (аварийный отказ программного обеспечения). Мягкий сбой характеризуется утратой оперативной памяти системы. При этом поражаются все выполняющиеся в момент сбоя транзакции, теряется содержимое всех буферов базы данных. Данные, хранящиеся на диске, остаются неповрежденными. Мягкий сбой может произойти, например, в результате аварийного отключения электрического питания или в результате неустранимого сбоя процессора.
- Жесткий сбой системы (аварийный отказ аппаратуры). Жесткий сбой характеризуется повреждением внешних носителей памяти. Жесткий сбой может произойти, например, в результате поломки головок дисковых накопителей.
Во всех трех случаях
основой восстановления является избыточность
данных, обеспечиваемая журналом транзакций.
Как и страницы базы данных, данные из
журнала транзакций не записываются сразу
на диск, а предварительно буферизируются
в оперативной памяти. Таким образом, система
поддерживает два вида буферов - буферы
страниц базы данных и буферы журнала
транзакций.
Страницы базы данных, содержимое которых
в буфере (в оперативной памяти) отличается
от содержимого на диске, называются "грязными"
(dirty) страницами. Система постоянно поддерживает
список "грязных" страниц - dirty-список.
Запись "грязных" страниц из буфера
на диск называется выталкиванием страниц
во внешнюю память. Очевидно, необходимо
предусмотреть такие правила выталкивания
буферов базы данных и буферов журнала
транзакций, которые обеспечивали бы два
требования:
- Максимальную скорость выполнения транзакций. Для этого необходимо выталкивать страницы как можно реже. В идеале, если оперативная память была бы бесконечной, и сбои никогда бы не происходили, наилучшим выходом была бы загрузка всей базы данных в оперативную память, работа с данными только в оперативной памяти, и запись измененных страниц на диск только в момент завершения работы всей системы.
- Гарантию, что при возникновении сбоя (любого типа), данные завершенных транзакций можно было бы восстановить, а данные незавершенных транзакций бесследно удалить, т.е. обеспечение восстановления последнего согласованного состояния базы данных. Для этого что-то выталкивать на диск все-таки необходимо, даже если мы обладали бы бесконечной оперативной памятью.
Таким образом, имеется
две причины для периодического
выталкивания страниц во внешнюю
память - недостаток оперативной памяти
и возможность сбоев.
34 Ограничения целостности
Свойство (С) - согласованность транзакций определяется наличием понятия согласованности базы данных.
Определение 2. Ограничение целостности - это некоторое утверждение, которое может быть истинным или ложным в зависимости от состояния базы данных.
Примерами ограничений целостности могут служить следующие утверждения:
Пример 2. Возраст сотрудника не может быть меньше 18 и больше 65 лет.
Пример 3. Каждый сотрудник имеет уникальный табельный номер.
Пример 4. Сотрудник обязан числиться в одном отделе.
Пример 5. Сумма накладной обязана равняться сумме произведений цен товаров на количество товаров для всех товаров, входящих в накладную.
Как видно из этих примеров, некоторые из ограничений целостности являются ограничениями реляционной модели данных). Пример 3 представляет ограничение, реализующее целостность сущности. Пример 4 представляет ограничение, реализующее ссылочную целостность. Другие ограничения являются достаточно произвольными утверждениями (примеры 2 и 5). Любое ограничение целостности является семантическим понятием, т.е. появляется как следствие определенных свойств объектов предметной области и/или их взаимосвязей.
Определение 3. База данных находится в согласованном (целостном) состоянии, если выполнены (удовлетворены) все ограничения целостности, определенные для базы данных.
Вместе с понятием целостности базы данных возникает понятие реакции системы на попытку нарушения целостности.
- Отказ выполнить "незаконную" операцию.
- Выполнение компенсирующих действий.
Например, если система знает, что в поле "Возраст_Сотрудника" должны быть целые числа в диапазоне от 18 до 65, то система отвергает попытку ввести значение возраста 66. При этом может генерироваться какое-нибудь сообщение для пользователя.
Ограничения
целостности можно
- По способам реализации.
- По времени проверки.
- По области действия.
Классификация ограничений целостности по способам реализации
Каждая система обладает своими средствами поддержки ограничений целостности. Различают два способа реализации:
- Декларативная поддержка ограничений целостности. заключается в определении ограничений средствами языка определения данных (DDL - Data Definition Language)
- Процедурная поддержка ограничений целостности. заключается в использовании триггеров и хранимых процедур
- При декларировании (объявлении) ограничения текст ограничения хранится в виде некоторого объекта СУБД, а для реализации ограничения используются встроенные в СУБД функции, и тогда этот код представляет собой внутренние функции ядра СУБД.
- При декларировании ограничения СУБД автоматически генерирует триггеры, выполняющие необходимые действия по проверке ограничений.
По времени проверки ограничения делятся на:
- Немедленно проверяемые ограничения.
- Ограничения с отложенной проверкой.
По области действия ограничения делятся на:
- Ограничения домена
- Ограничения атрибута
- Ограничения кортежа
- Ограничения отношения
- Ограничения базы данных
36 Гипертекстовые и мультимедийные БД
Первоначально
гипертекстовые технологии
В настоящее время термин «гипертекст» применяют к разным объектам, называя так:
1) особый
метод построения
2) определенную
систему представления
3) особый
универсальный интерфейс,
успех гипертекстовых технологий далеко не случаен. Он обусловлен, в первую очередь, тем, что гипертекстовые технологии, используемые для построения информационных систем в Интернете, обладают рядом весьма привлекательных свойств, а именно:
• за последнее
время сформировался набор
• сложился и постоянно пополняется массив достаточно простых, но очень эффективных технических средств создания гипертекста (SGML/HTML и др.), которые не требуют долговременной и трудоемкой специальной подготовки;
• все программные средства (software), используемые при проектировании Интернетовских информационных серверов, постоянно совершенствуются и оперативно обновляются; при этом обязательным условием является сохранение их преемственности и совместимости. Таким образом, идет постоянное расширение диапазона обслуживаемых прикладных задач: от ввода и редактирования звучащей информации и изображения (стационарного или анимационного, а также видео) до построения простых и сложных систем, использующих методы искусственного интеллекта, способных осуществлять обработку интерактивных запросов и ответов в реальном времени;
• все (или почти все) эти программные средства предоставляются для свободного или условно свободного распространения (free- /share-ware).
Преимущество гипертекста в том, что он позволяет создавать открытые информационные системы за счет относительно свободного соединения информационных блоков. Таким образом, Гипертекст нашёл широкое применение в автоматизированных обучающих курсах.
Необходимо также отметить, что сама гипертекстовая структурированность учебного материала обладает собственным дидактическим значением, так как является значительно более гибкой формой подачи информации, позволяющей в максимальной степени учитывать индивидуальные потребности обучающегося.
Однако необходимо подчеркнуть, что ключевой проблемой в такой системе становится проблема организации «навигации», свободная или навязываемая автором-разработчиком стратегия исследования данного информационного поля, которая к тому же должна решать и собственно дидактические задачи. В исследованиях по теории гипертекста вопросы организации «чтения» гипертекстовой информации рассматриваются в совокупности с формальным анализом структуры гипертекстового поля, возможностями технических средств управления «навигацией», а также особенностями когнитивных стратегических предпочтений человека (вновь подчеркнем, что последнее остается до сих пор наименее изученной областью). В качестве достаточно хорошо проработанных формализованных стратегических моделей часто выступают модели, лежащие в основе систем автоматизированного поиска и систем автоматической обработки запросов.
Один из основных
вопросов, встающих перед авторами
гипертекстов — это соотношение
традиционного письменного
Основными принципами мультимедийных информационных технологий являются:
• интерактивный режим работы;
• интегрированность с другими программными продуктами;
• гибкость процесса изменения как исходных данных, так и постановок задач.
Мультимедийные
технологии обеспечивают работу с анимацией,
графикой, звуком и видео. Мультимедийные
информационные технологии позволяют
максимально удовлетворять информационные
потребности пользователя, повысить качество
предлагаемого материала
37 Объектно-ориентированные БД
Объектно-ориентированная база данных (ООБД) — база данных, в которой данные оформлены в виде моделей объектов, включающих прикладные программы, которые управляются внешними событиями. Результатом совмещения возможностей (особенностей) баз данных и возможностей объектно-ориентированных языков программирования являются Объектно-ориентированные системы управления базами данных (ООСУБД).
Некоторые объектно-ориентированные базы данных разработаны для плотного взаимодействия с такими объектно-ориентированными языками программирования как Python, Java, C#, Visual Basic .NET, C++, Objective-C и Smalltalk; Объектно-ориентированные базы данных обычно рекомендованы для тех случаев, когда требуется высокопроизводительная обработка данных, имеющих сложную структуру.