Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы на экзамен по БД3.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
419.33 Кб
Скачать

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

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

В создании БД как модели ПрО выделяют:

 объектную (предметную) систему, представляющую фрагмент реального мира;

 информационную систему, описывающую некоторую объектную систему;

 датологическую систему, представляющую информационную систему с помощью данных.

Оптимальная модель данных должна удовлетворять таким критериям как: структурная достоверность, простота, выразительность, отсутствие избыточности, расширяемость, целостность, способность к совместному использованию.

Концептуальное проектирование базы данных.

Построение ее осуществляется в определенном порядке: в начале создаются подробные модели пользовательских представлений данных; затем они интегрируются в концептуальную модель данных. Существует два основных подхода к проектированию систем баз данных: «нисходящий» (работа начинается с самого нижнего уровня — уровня определения атрибутов, которые на основе анализа существующих между ними связей группируются в отношения, которые в дальнейшем подвергаются процессу нормализации, который приводит к созданию нормализованных взаимосвязанных таблиц, основанных на функциональных зависимостях между атрибутами) и «восходящий» (начинается с разработки моделей данных, которые содержат несколько высокоуровневых сущностей и связей, затем работа продолжается в виде серии нисходящих уточнений низкоуровневых сущностей, связей и относящихся к ним атрибутов).

В построении общей концептуальной модели данных выделяют ряд этапов.

 -Выделение локальных представлений, соответствующих обычно относительно независимым данным.

 -Формулирование объектов, описывающих локальную предметную область проектируемой БД, и описание атрибутов, составляющих структуру каждого объекта.

 -Выделение ключевых атрибутов.

 -Спецификация связей между объектами. Удаление избыточных связей. Анализ и добавление не ключевых атрибутов. Объединение локальных представлений.

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

Логическое проектирование базы данных.

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

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

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

Физическое проектирование базы данных

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

2. Основными этапами этого процесса являются:

Первая стадия концептуального проектирования БД:

1. Предметная область – восприятие, абстрагирование, изучение и описание предметной области.

2. Информационные потребности пользователя – восприятие, изучение и абстрагирование информационных потребностей пользователя.

3. Проектирование обобщенного концептуального представления – проектирование моделей работы пользователя, включающих технологию работы с БД.

Вторая стадия концептуального проектирования БД:

4. Выбор СУБД – с учетом построенной концептуальной модели и моделей работы пользователей.

5. Проектирование концептуального представления специфицированного к модели данных СУБД (логическая модель) – требования СУБД и определенные конкретным пакетом СУБД процедуры.

6. Проектирование представления данных в памяти ЭВМ (структур хранения)

7. Оценка эксплуатационных характеристик прикладных программ на основе построенных моделей (при неудовлетворительных оценках возвращаемся к этапу 3).

8. Проектирование и разработка программ реализации.

Обобщение представлений всех пользователей о данных называетсяконцептуальной моделью (схемой) БД.

  1. Классификация моделей данных.

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

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

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

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

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

Модели, ориентированные на формат документов, связаны прежде всего со стандартным общим языком разметки — SGML (Standart Generalised Markup Language), который был утвержден ISO в качестве стандарта еще в 80-х годах. Этот язык предназначен для создания других языков разметки, он определяет допустимый набор тегов (ссылок), их атрибуты и внутреннюю структуру документа. Гораздо более простой и удобный, чем SGML, язык HTML (HyperText Markup Language – язык разметки гипертекста) позволяет определять оформление элементов документа и имеет некий ограниченный набор инструкций — тегов, при помощи которых осуществляется процесс разметки. Вкачестве элемента гипертекстовой базы данных, описываемой HTML, используется текстовый файл, который может легко передаваться по сети с использованием протокола HTTP. В настоящее время все большую популярность приобретает язык XML (eXtensible Markup Language – расширяемый язык разметки), позволяющий описывать документы произвольной структуры и содержания.

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

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

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

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

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

Кратко особенности реляционной базы данных можно описать следующим образом:

  • Данные хранятся в таблицах, состоящих из столбцов и строк;

  • На пересечении каждого столбца и строчки стоит в точности одно значение;

  • У каждого столбца есть своё имя, которое служит его названием, и все значения в одном столбце имеют один тип. Например, в столбце id_forum все значения имеют целочисленный тип, а в строке name - текстовый;

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

Осн. Понятия:

Отношения – таблица, специального вида, имеющая поля и записи; у полей уникальные названия.

Домен – множество возможных значений атрибута.

Атрибут – характеристика этого объекта.

Первичный ключ (primary key) – атрибут или группа атрибутов, которая уникально определяет запись в таблице.

Внешний ключ (foreign key) – атрибут, котрый хранится в зависимом отношении и определен на том же самом домене, что и первичный ключ главного отношения.

Альтернативный ключ (Alternative key) – возможный первичный ключ отношения / длинное символьное поле.

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

Картеж – пара(имя атрибута, значение атрибута)

Степень – количество атрибутов в отношении.

Мощность – количество картежей.

  1. Свойства реляционных таблиц.

  1. Недублируемость картежей (записи не повторяются).

  2. Недублируемость атрибутов.

  3. Неупорядоченность атрибутов(хранятся в любом порядке; и если назначили первичный ключ, то это не значит что он первый. Он может быть и 4 и 10…).

  4. Неупорядоченность картежей(чтобы достать значение из таблицы, нужно указать название атрибута и значение первичного ключа).

  5. Атомарность значений атрибутов (в 1 значении должнобыть 1 данное).

  1. Ключи и возможные индексы реляционных отношений.

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

 

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

 

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

  1. Понятие отношения. Операции над отношениями.

Отношения – таблица, специального вида, имеющая поля и записи; у полей уникальные названия.

1)      Выборка (горизонтальная проекция, Select) – выполняется на одном отношении, результатом является новое отношение; все атрибуты которого совпадаю с атрибутом исходного отношения, а катрежи соответствуют определённому условию.

2)      Объединение (Union) – объединение картежей односхемных отношений R и S, с исключением повторяющихся. Результат: третье отношение, содержащие все картежи R и S за исключением дублирующихся.

3)      Пересечение (Intersection) – выполняется на 2-х односхемных отношениях (R,S). Результатом будет отношение, которое состоит из кортежей, которые принадлежат как к R, так и к S.

4)      Вычитание (Difference) - выполняется на 2-х односхемных отношениях (R,S). Результатом будет отношение, которое состоит из кортежей отношения R, но не принадлежат S.

5)      Декартово произведение (Product) - выполняется на 2-х разно-схемных отношениях (R,S). В результате получается отношение D, которое содержит атрибуты R и S, и все возможные сочетания кортежей R и S.

6)      Вертикальная выборка – на одном отношении, результатом является новое отношение сод-ее 1 атрибут из исходного отношения, а картежи содержат всевозможные значения этого атрибута.

7)      Соединение (Join) - во-первых, вычисляется декартово произведение R × S. Затем, выбираются те кортежи, чьи значения общего атрибута C эквивалентны (R.C = S.C). Теперь мы имеем таблицу, которая содержит атрибут C дважды и мы исправим это, выбросив повторяющуюся колонку.

Деление (Divide) – Атрибуты отношения делителя являются подмножителем атрибутов отношения делимого.

R3(a,b)

За исключением атрибутов за исключением R2, а картежи соответствуют условию значений картежей отношения R2.

  1. Понятие нормализации. Основные шаги нормализации.

Нормализация отношений - это задача группирования атрибутов в отношении с целью получения рациональных вариантов схем отношений. Задачами нормализации являются: решение аномалий, поддержка целостности и уменьшение избыточности данных.