Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Модели данных и СУБД.doc
Скачиваний:
7
Добавлен:
01.03.2025
Размер:
1.71 Mб
Скачать

Раздел 5 посвящен семантическим или инфологическим моделям, используемым в современных программных системах поддержки проектирования, называемых case-системами (Computer Aided Software Engineering).

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

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

Раздел 9 посвящен вопросам защиты информации в базах данных. Понятие защиты информации в базах данных чаще всего связано с концепцией защиты от несанкционированного доступа. В данном разделе обсуждается общая концепция защиты информации, которая применяется в базах данных, вводится понятие пользователя и рассматриваются вопросы определения прав и привилегий пользователей по работе с отдельными объектами в базе данных.

Раздел 10 посвящен вопросам распределенной обработки данных, здесь рассматриваются проектирование распределенных систем обработки данных, уделяется большое внимание фрагментации данных.

В разделе 11 излагаются вопросы, касающиеся основных положений работы с объектно-реляционной СУБД Oracle. Рассматривается архитектура базы данных, объекты базы данных, архитектура экземпляра Oracle.

Раздел 12 полностью посвящен современному стандартному языку работы с базами данных, языку SQL. Рассматриваются основные элементы языка, создание и модификация объектов базы данных, построение запросов к базе данных.

В разделе 13 рассматривается процедурное расширение языка SQL – язык PL/SQL, который используется при разработке триггеров, хранимых процедур и функций, пакетов, работающих с базами данных, а также для работы с объектами, их созданию, хранению в базе данных и выборке.

Материал пособия включает достаточно большое количество примеров. Пособие может быть использовано для самостоятельного освоения курса «Модели данных и СУБД».

1. Основные понятия и определения теории баз данных.

1.1. Причины возникновения систем баз данных.

Основой решения большинства задач является обработка информации. Информация – это совокупность фактов, наблюдений, сведений об объектах, явлениях, событиях реального мира. Для обработки информации создаются информационные системы, которые воспринимают информацию из окружающей среды, хранят, обрабатывают ее и выдают в окружающую среду. Как правило, обработке подвергается информация, относящаяся к одной определенной предметной области, то есть к некоторой области знаний, имеющей практическую ценность для пользователя. В 60-х годах прошлого века появились первые автоматизированные информационные системы (АИС), включающие в свой состав вычислительную технику. Массивы информации в АИС, для их компьютерного хранения и обработки, необходимо оптимальным образом организовывать, обеспечивать их целостность и непротиворечивость. Решение подобных задач с нужной производительностью невозможно осуществлять, используя только функции стандартных файловых систем.

Укажем очевидные недостатки файловой организации данных на внешних носителях.

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

Зависимость программ от данных. Поскольку описание структуры данных задается в прикладной программе, то любое внесение изменений в эту структуру требует, как минимум, перекомпиляции всех программ, использующих этот файл.

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

Отсутствие описаний данных. В файлах операционной системы данные, обрабатываемые прикладными программами, хранятся без описания. Это создает сложности при документировании системы, затрудняет поиск нужных данных и создает условия для ошибок.

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

1.2. Базы данных.

Предметная область АИС “материализуется” в форме хранимой в памяти ЭВМ структурированной совокупности данных, которые характеризуют состав объектов предметной области, их свойства и взаимосвязи. Такое отражение предметной области принято называть базой данных. Более строго определение базы данных звучит следующим образом.

База данных – это именованная совокупность данных, отражающая состояние объектов и их взаимосвязей (отношений) в рассматриваемой предметной области.

Жизненный цикл системы обработки данных состоит из нескольких этапов:

  1. проектирование базы данных;

  2. проектирование приложений;

  3. реализация базы данных, включающая начальную загрузку базы данных и запуск ее в эксплуатацию;

  4. разработка специальных средств администрирования БД;

  5. эксплуатация базы данных (анализ функционирования, модификация и адаптация).

Процесс проектирования базы данных представляет собой последовательность переходов от неформального словесного описания информационной структуры предметной области к формализованному описанию в терминах некоторой модели и включает несколько этапов.

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

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

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

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

Результатом этапа проектирования являются готовая к заполнению реальной информацией база данных и готовое к работе программное обеспечение.

Современные базы данных, как правило, имеют трехуровневую архитектуру, которая образуется в процессе проектирования базы данных. Трехуровневая архитектура, то есть инфологический, логический и физический уровни, позволяет обеспечить логическую и физическую независимость хранимых данных от использующих их программ. При необходимости можно переписать хранимые данные на другие носители информации и (или) реорганизовать их физическую структуру, изменив лишь физическую модель данных. Можно подключить к системе любое число новых пользователей (новых приложений), дополнив, если надо, логическую модель. Указанные изменения физической и логической моделей не будут замечены пользователями системы (окажутся “прозрачными” для них), так же как не будут замечены и новые пользователи. Следовательно, независимость данных обеспечивает возможность развития системы баз данных без разрушения существующих приложений.