Хомоненко А.Д., Цыганков В.М., Мальцев М.Г. - Базы данных. Учебник для высших учебных заведений (6-е изд.) - 2009, страница 4
Описание файла
PDF-файл из архива "Хомоненко А.Д., Цыганков В.М., Мальцев М.Г. - Базы данных. Учебник для высших учебных заведений (6-е изд.) - 2009", который расположен в категории "". Всё это находится в предмете "информационное обеспечение разработок" из 8 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "книги и методические указания", в предмете "информационное обеспечение разработок" в общих файлах.
Просмотр PDF-файла онлайн
Текст 4 страницы из PDF
В основномметоды и алгоритмы управления данными являются «внутренним делом»СУБД и прямого отношения к пользователю не имеют. Качество реализацииэтой функции наиболее сильно влияет на эффективность работы специфических ИС, например, с огромными БД, со сложными запросами, большимобъемом обработки данных.Необходимость буферизации данных и как следствие реализации функции управления буферами оперативной памяти обусловлено тем, что объемоперативной памяти меньше объема внешней памяти.Буферы представляют собой области оперативной памяти, предназначенные д л я у с к о р е н и я обмена между внешней и о п е р а т и в н о й памятью.В буферах временно хранятся фрагменты БД, данные из которых предполагается использовать при обращении к СУ БД или планируется записать в базупосле обработки.Механизм транзакций используется в СУБД для поддержания целостности данных в базе.
Транзакцией называется некоторая неделимая последовательность операций надданными БД, которая отслеживается СУБД от начала и до з а в е р ш е н и я . Если по к а к и м - л и б о п р и ч и н а м (сбои и отказыоборудования, ошибки в программном обеспечении, включая приложение)транзакция остается незавершенной, то она отменяется.В зависимости от времени, требуемого для выполнения, выделяют обычные и продолжительные транзакции. Продолжительные транзакции могутохватывать часы, дни и даже месяцы.
Такие транзакции могут возникать впроцессе проектирования и разработки сложных систем крупным коллективом людей. Кроме того, помимо обычных плоских транзакций, используетсямодель вложенных транзакций. В последнем случае транзакция рассматривается как набор взаимосвязанных подзадач (субтранзакций), каждая из которых также может состоять из произвольного количества субтранзакций.Говорят, что транзакции присущи три основных свойства:•атомарность (выполняются все входящие в транзакцию операции илини одна);• серализуемость (отсутствует взаимное влияние выполняемых в одно ито же время транзакций);• долговечность (даже крах системы не приводит к утрате результатов зафиксированной транзакции).Примером транзакции является операция перевода денег с одного счета надругой в банковской системе. Здесь необходим, по крайней мере, двухшаговый1.
Введениев базыданных19процесс. Сначала снимают деньги с одного счета, затем добавляют их к другому счету. Если хотя бы одно из действий не выполнится успешно, результатоперации окажется неверным и будет нарушен баланс между счетами.Контроль транзакций важен в однопользовательских и в многопользовательских С У Б Д , где т р а н з а к ц и и могут быть запущены параллельно.В последнем случае говорят о сериализуемости транзакций.
Под сериализацией параллельно выполняемых транзакций понимается составление такого плана их выполнения (сериального плана), при котором суммарный эффект реализации транзакций эквивалентен эффекту их последовательного выполнения.При параллельном выполнении смеси транзакций возможно возникновение конфликтов (блокировок), разрешение которых является функцией СУБД.При обнаружении таких случаев обычно производится «откат» путем отменыизменений, произведенных одной или несколькими транзакциями.Ведение журнала изменений в БД (журнализация изменений) выполняетсяСУБД для обеспечения надежности хранения данных в базе при наличии аппаратных сбоев и отказов, а также ошибок в программном обеспечении.Журнал СУБД — это особая БД или часть основной БД, непосредственнонедоступная пользователю и используемая для записи информации обо всехизменениях базы данных.
В различных СУБД в журнал могут заноситься записи, соответствующие изменениям в СУБД на разных уровнях: от минимальной внутренней операции модификации страницы внешней памяти до логической операции модификации БД (например, вставки записи, удалениястолбца, изменения значения в поле) и даже транзакции.Для эффективной реализации функции ведения журнала изменений в БДнеобходимо обеспечить повышенную надежность хранения и поддержания врабочем состоянии самого журнала. Иногда для этого в системе хранят несколько копий журнала.Обеспечение целостности БД составляет необходимое условие успешногофункционирования БД, особенно для случая использования БД в сетях. Целостность Б Д есть свойство базы данных, означающее, что в ней содержитсяполная, непротиворечивая и адекватно отражающая предметную область информация.
Поддержание целостности БД включает проверку целостности и еевосстановление в случае обнаружения противоречий в базе данных. Целостное состояние БД описывается с помощью ограничений целостности в видеусловий, которым должны удовлетворять хранимые в базе данные. Примеромтаких условий может служить ограничение диапазонов возможных значенийатрибутов объектов, сведения о которых хранятся в БД, или отсутствие повторяющихся записей в таблицах реляционных БД.Обеспечение безопасности достигается в СУБД шифрованием прикладныхпрограмм, данных, з а щ и т ы паролем, п о д д е р ж к о й у р о в н е й доступак базе данных и к отдельным ее элементам (таблицам, формам, отчетами т.
д.).Часть 1. Основы построения20базданных1.4. Локальные информационные с и с т е м ыФункциональные части информационной системы могут размещаться наодном или на нескольких компьютерах. Рассмотрим варианты организацииИС на одном ПК. Соответствующую И С обычно называют локальной или однопользовательской (хотя последнее не совсем строго, поскольку на одном компьютере поочередно могут работать несколько пользователей). Более сложныеварианты организации ИС рассматриваются в разделе 4.Организация функционирования локальной ИС на одном компьютерев среде некоторой операционной системы ( О С ) возможна с помощью следующих вариантов использования программных средств:• «полной» СУБД;• приложения и «усеченной» (ядра) СУБД;• независимого приложения.Первый способ обычно применяется в случаях, когда в дисковой памятикомпьютера помещается вся СУБД и она часто используется для доработкиприложения (рис.
1.3).LРис. 1.3. Использование приложения и С У Б ДВзаимодействие пользователя с С У Б Д происходит напрямую черезпользовательский (терминальный) интерфейс СУБД, либо с помощью приложения. Приложение выполняется в режимеинтерпретации(см. подраздел 1.5).Основное достоинство схемы — простота разработки и сопровождения БД иприложений при наличии развитых соответствующих средств разработки и сервисных средств.
Недостатком этой схемы являются затраты дисковой памятина хранение программы СУБД и оперативной памяти для исполняемого кода.Приложение с ядром СУБД (рис. 1.4) используют для достижения следующих целей:1. Введениев базыданных21• уменьшения объема занимаемого СУБД пространства жесткого дискаи оперативной памяти;• повышения скорости работы приложения;• защиты приложения от модификации со стороны пользователя (обычноядро не содержит средств разработки приложений).ПриложениеЯдро СУБДБДОСРис.
1.4. Использование приложения и ядра С У Б ДПримером такого подхода является использование модуля FoxRun системы FoxBase+. Из современных С У Б Д отметим Microsoft Access, включающую д о п о л н и т е л ь н ы й пакет Microsoft Access Developer's Toolkit.С его помощью можно создавать переносимую на дискетах «укороченную» ( r u n - t i m e ) версию Microsoft Access, не содержащую инструментовразработки.Достоинствами использования ядра С У Б Д по сравнению с использованием полной версии С У Б Д являются: меньшее потребление ресурсовпамяти компьютера, ускорение работы приложения и возможность защиты приложения от модификации.
К основным недостаткам можно отнести все еще значительный объем дисковой памяти, необходимой для хранения ядра С У Б Д , и недостаточно высокое быстродействие работыприложений (выполнение приложения по-прежнему происходит путем интерпретации).При третьем способе организации ИС исходная программа предварительно компилируется — преобразуется в последовательность исполняемых машинных команд. В результате получается готовая к выполнению независимая программа, не требующая для своей работы ни всей СУБД, ни ее ядра(рис. 1.5). Заметим, что с точки зрения выполнения основных функций хранения и обработки данных такая программа мало отличается от приложения,работающего под управлением СУБД или ее ядра.Основными достоинствами этого варианта по сравнению с двумя предыдущими являются: экономия внешней и оперативной памяти компьютера, ус-22Часть 1.
ОсновыпостроениябазданныхРис. 1.5. Использование независимого приложениякореиие выполнения приложения и полная защита приложения от модификации (случай дизассемблирования и вставки своего кода и ему подобныев расчет не берутся). К недостаткам можно отнести трудоемкость доработкиприложений и отсутствие возможности использовать стандартные средстваСУБД по обслуживанию БД.1.5.
Способы разработкии выполнения приложенийСовременные С У Б Д позволяют решать широкий круг задач по работес базами данных без разработки приложения. Тем не менее есть случаи, когдацелесообразно разработать приложение. Например, если требуется автоматизация манипуляций сданными, терминальный интерфейс СУБД недостаточно развит, либо имеющиеся в СУБД стандартные функции по обработке информации не устраивают пользователя. Для разработки приложений СУБДдолжна иметь программный интерфейс, основу которого составляют функциии/или процедуры соответствующего языка программирования.Существующие СУБД поддерживают следующие технологии (и их комбинации) разработки приложений:• ручное кодирование программ (Clipper, FoxPro, Paradox);• создание текстов приложений с помощью генераторов (FoxApp в FoxPro,Personal Programmer в Paradox);• автоматическая генерация готового приложения методами визуальногопрограммирования (Delphi, Access, Paradox for Windows).При ручном кодировании программисты вручную набирают текст программприложений, после чего выполняют их отладку.Использование генераторов упрощает разработку приложений, поскольку при этом можно получать программный код без ручного набора.
Генераторы приложений облегчают разработку основных элементов приложений1. Введениев базыданных23(меню, экранных форм, запросов и т. д.), но зачастую не могут полностью исключить ручное кодирование.Средства визуального программирования приложений являются дальнейшимразвитием идеи использования генераторов приложений. Приложение при этомстроится из готовых «строительных блоков» с помощью удобной интегрированной среды. При необходимости разработчик легко может вставить в приложение свой код. Интегрированная среда, как правило, предоставляет мощныесредства создания, отладки и модификации приложений.