
- •Содержание
- •Основные понятия
- •Понятие данных
- •Файловые системы
- •Системы баз данных
- •История развития субд
- •Трехуровневая архитектура ansi/sparc
- •Общая характеристика моделей данных
- •Основные понятия модели данных
- •Представление статических и динамических свойств
- •Общая характеристика структурных компонентов. Множества: домены и атрибуты
- •Общая характеристика структурных компонентов. Отношения: сущности
- •Общая характеристика структурных компонентов. Отношения: связи
- •Общая характеристика ограничений целостности
- •Модель данных «сущность – связь»
- •Уровни представления информации
- •Уровень 1 – информация о сущностях и связях
- •Уровень 2. Структура информации
- •Ограничения целостности в модели сущность-связь
- •Расширенная модель данных сущность-связь: нотация idef1x
- •Реляционная модель данных
- •Базовые структурные компоненты реляционной модели данных
- •Целостная часть реляционной модели данных
- •Языковые средства описания данных
- •Манипуляционная часть реляционной модели данных
- •Подмножество sql для манипулирования данными
- •Примеры написания запросов
- •I. И еще несколько примеров написания запросов из документации [10]
- •Краткая характеристика языка sql pl db2® udb
- •Дополнительные возможности описания ограничений целостности
- •Дополнительные возможности db2
- •Описание данных
- •Манипулирование данными
- •Дополнительные возможности формирования запросов
- •Типы данных, определенные пользователем
- •Функции, определенные пользователем
- •Теория проектирования реляционных баз данных
- •Цели проектирования
- •Функциональные зависимости
- •1. Рефлексивность
- •2. Пополнение
- •3. Транзитивность
- •4. Псевдотранзитивность
- •5. Аддитивность (объединение)
- •6. Декомпозиция (проективность)
- •7. Композиция
- •Нормализация отношений
- •Внутренние структуры хранения
- •Структурная схема обработки запроса
- •Бинарные деревья
- •Многоходовые деревья
- •Сравнение методов индексирования
- •Создание индексов в db2®
- •Организация файлов базы данных в db2®
Общая характеристика моделей данных
Основные понятия модели данных
Все модели данных принято делить на две категории: сильно типизированные и слабо типизированные.
Сильно типизированные модели данных – все данные относятся к конкретным категориям. Если появляются новые данные, они либо подгоняются под уже определенную категорию, либо для них определяется новая категория. В дальнейшем связи и соотношения между данными рассматриваются на уровне связей и соотношений между категориями.
Слабо типизированные модели данных – нет никаких предположений для категоризации; элементы данных относятся к той или иной категории только тогда, когда это необходимо в каждом конкретном случае.
Большинство моделей данных, используемых в информационных системах, относятся к сильно типизированным моделям. Следовательно, в таких моделях данных можно выделить следующие структурные компоненты:
категория
свойства категории
связи между категориями
Определение
В конкретном применении модели данных совокупность именованных категорий, их свойств и связей между ними называется схемой.
Например, некоторая модель используется для представления транспортного отдела, точнее, для представления сведений о водителях автомобилей. Тогда в ней будут представлены две категории: ВОДИТЕЛЬ со свойствами Имя, Возраст, Стаж работы и АВТОМОБИЛЬ со свойствами Модель, Гос. номер, Дата приобретения. Между этими категориями имеет место связь: ВОДИТЕЛЬ УПРАВЛЯЕТ АВТОМОБИЛЕМ. Соответствующую схему можно представить так:
ВОДИТЕЛЬ (Имя, Возраст, Стаж работы)
АВТОМОБИЛЬ (Модель, Гос. номер, Дата приобретения)
УПРАВЛЯЕТ (ВОДИТЕЛЬ, АВТОМОБИЛЬ)
Определение
Совокупность данных, структура которых соответствует конкретной схеме, называется реализацией базы данных.
Таким образом, схема определяет структуру данных. Однако структурные спецификации не обеспечивают возможности полной интерпретации семантики данных и способа их использования. Необходимо еще определить допустимые операции над данными. Обычно операции соотносятся со структурами данных.
Операции, предусмотренные моделью данных, преобразуют одну реализацию базы данных в другую, но все эти реализации имеют одну и ту же структуру и соответствуют одной и той же схеме. В соответствии с этим, можно дать следующее определение:
Определение
Под базой данных понимают последовательность реализаций, полученных в результате некоторых преобразований и удовлетворяющих одной и той же схеме.
Представление статических и динамических свойств
Модель данных должна некоторым образом представлять реальный мир: предметная область – часть реального мира, представляющая интерес для данного исследования (использования). Реальный мир обладает и статическими, и динамическими свойствами. Следовательно, модель данных должна как-то представлять и статические, и динамические свойства реального мира.
Отсюда, модель данных можно определить как множество правил порождения G (Generate Rules) и множество операций O (Operators). Множество правил порождения представляет статические свойства модели данных и соотносится с ЯОД. Множество операций представляют динамические свойства модели данных и соотносятся с ЯМД.
Средствами ЯОД определяются допустимые структуры данных – объектов (сущностей) и связей, а также допустимые реализации данных.
Определение структуры данных реализуется посредством спецификации соответствующих категорий, которые должны удовлетворять правилам порождения G. Спецификация категорий определяется в терминах атрибутов (свойств категорий) и типов значений каждого атрибута. Селекция допустимых реализаций объектов и связей задается указанием для каждой категории (типа сущности) дополнительных условий – ограничений целостности, которым должна удовлетворять каждая реализация.
В соответствии с этим в некоторых моделях данных правила порождения делятся на две части:
правила порождения структуры Gs (Generate Structure),
правила порождения ограничений Gc (Generate Constraints)
Таким образом (Рис. 2.1):
правила порождения G обеспечивают порождение множества схем S, каждая из которых (Si) определяет конкретную структуру данных и специфицирует ограничения целостности;
конкретной схеме Si соответствует множество различных реализаций базы данных Di1, Di2, …;
множество операций определяет допустимые действия над реализацией базы данных Dij для преобразования ее в другую реализацию Dik
Рис. 2.1. Соотношение между моделями данных, схемами и реализациями базы данных
Следовательно, модель данных определяет структуру, ограничения целостности и допустимые операции.
Рассмотрим общие характеристики, правила, соответствующие представлению этих трех составляющих модели данных.