 
        
        - •Ис поддержки принятия решений.
- •Общая характеристика реляционной модели данных.
- •Типы данных
- •Типы данных, используемые в реляционной модели
- •Отношения, атрибуты, кортежи отношений.
- •Тема: Первая нормальная формула
- •Базовые концепции реляционных бд db2.
- •Объекты db2, используемые для хранения бд.
- •Контейнер Контейнер — это физическое хранилище. Имя контейнера — это имя папки (или имя устройства) или имя файла (для dms).
- •Буферный пул
- •Расчет физического пространства для таблиц.
- •Объекты системы
- •Целостность данных
- •Потенциальные ключи
- •Внешние ключи.
- •Целостность внешних ключей.
- •Операции, в результате которых нарушается ссылочная целостность:
- •Стратегии поддержания ссылочной целостности.
- •Дополнительные стратегии поддержки ссылочной целостности.
- •Нормальная форма отношений.
- •Критерий оценки качества логической модели данных.
- •Нормализация таблиц
- •Замкнутость реляционной алгебры
- •Зависимые реляционные операторы.
- •Запросы, невыразимые средствами реляционной алгебры.
- •Элементы языка sql.
- •Синтаксис языка sql с использованием языка Бэкуса-Наура.
- •Замечание
- •Замечание
- •Синтаксис условных выражений (из раздела where)
- •Порядок выполнения оператора select
- •Выражение средствами sql операторов реляционной алгебры
Лекция №1 (07.02.02)
Пакеты DB2:
- DB2 Universal Database Personal Edition 
- DB2 Universal Database Workgroup Edition (для работы в пределах рабочей группы) 
- DB2 Universal Database Enterprise Edition (для предприятий в целом) 
- DB2 Universal Database Enterprise Extended Edition (Расширенный выпуск для кластерных серверов) 
- DB2 Connect Personal Edition 
- DB2 Connect Enterprise Edition (многопользовательский шлюз, который обеспечивает доступ к БД на Mainframe) 
- DB2 Universal Developer’s Edition (включает все инструментальные средства, необходимые для разработки приложений). 
DB2 – объектно-реляционная БД для ОС Unix, Windows NT, ОС2.
Характеристики DB2 :
- Масштабируемость. Возможность работы в широком спектре аппаратного обеспечения: от портативных компьютеров до серверов) 
- Расширенная параллельная обработка, т.е.: 
- возможность выполнения нескольких транзакций параллельно; 
- параллельная обработка нескольких запросов; 
- данные для SQL оператора, распределенные на нескольких дисках (подсистемах), параллельно извлекаются и записываются; 
- БД м.б. распределена в кластер серверов (на нескольких серверах). 
- Высокопроизводительная обработка данных. Поддерживается ряд функций, которые значительно повышают производительность как обработки запроса, так и обработки транзакции. 
- Поддержка 64-х разрядной памяти. DB2 применяется 64-х и 32-х разрядными системами, позволяющими работать более чем с 4 Гб физической памяти. С помощью буфера в этой дополнительной памяти могут храниться оперативные (текущие) данные, что сокращает время работы с ними. 
- Несколько буферных пулов. Пользователь или администратор могут создать несколько буферных пулов различного размера и связать табличную часть с ними. 
- Последовательно упреждающая выборка. Производительность, требующая большого количества операций ввода-вывода, может быть значительно повышена в случае перекрытия во времени операций ввода-вывода. 
- Реорганизация. Осуществляется переупорядочение строк по кластерам, устраняется фрагментация, возникающая в результате удаления строк или записи неполных строк. 
- Расширяемость. 
Делится на 4 группы:
- использование универсальных данных; 
- использование деловых правил; 
- расширенный SQL; 
- DB2 Extender 
- Использование универсальных правил. Поддерживаются следующие объектно-реляционные возможности: 
- Определяемые пользователем типы данных. Пользователь может создавать новые типы данных, которые будут вставлены в БД с использованием встроенных функций. Определяемые пользователем типы данных могут использоваться в качестве столбцов таблиц или параметров функций. 
- Определяемые пользователем функции. С их помощью в запросы можно включать мощные вычислительные предикаты и предикаты поиска для фильтрации ненужных данных. 
Используются все возможности построения запросов к реляционной БД.
- Деловые правила. Можно определять комплексное правило, обеспечивающее целостность данных. Эти правила позволяют расширять существующие только в виде кода объектные библиотеки, методы которых изменить не возможно. Деловые правила включают в себя следующие правила: 
- Значение по умолчанию. Позволяет устанавливать значение по умолчанию для тех строк, которым в операторах непосредственное значение не устанавливается. 
- Проверка ограничений. Используется для реализации некоторых правил, которые не возможно реализовать с помощью установки значения по умолчанию. 
- Ссылочная целостность. Позволяет устанавливать необходимые взаимосвязи между таблицами и внутри таблиц. Ссылочное ограничение объявляется при создании таблицы и обеспечивает согласование значений данных между связанными столбцами различных таблиц. Существует три события: update, delete, insert. 
- Триггер. Может использоваться для реализации сложных межтабличных правил. 
- Расширенный SQL. Включает: 
- Расширенный запрос в SQL; 
- Рекурсивный запрос. 
- DB2 Extender. Каждый Extender представляет собой набор пользовательских функций, предопределенных типов, триггеров, которые решают определенные задачи. 
Ис поддержки принятия решений.
Сюда входят:
- хранилище данных (БД лиц (изображений), которая используется для идентификации людей); 
- система добычи данных; 
- система on-line-овой аналитической обработки; 
- различные аналитические системы принятия решений. 
Лекция №2 (14.02.02)
Общая характеристика реляционной модели данных.
Реляционная модель данных состоит из трех частей (согласно Дейтлу):
- структурная 
- целостная 
- манипуляционная. 
Структурная часть описывает, какие объекты рассматриваются реляционной моделью. Единственной структурой данных, используемой в реляционной модели, являются нормализованные n-арные отношения.
Целостная часть описывает ограничения специального вида, которые выполняются для любых отношений в любых реляционных БД. Эта часть подразделяется на 2 подчасти:
- целостность сущностей 
- целостность внешних ключей 
Под сущностью здесь понимается некий объект, который описывается несколькими связными таблицами. Целостность сущностей поддерживается при помощи процедур, которые отслеживают различные изменения в таблицах.
Манипуляционная часть описывает два эквивалентных способа манипулирования реляционными данными:
- реляционную алгебру; 
- реляционное исчисление. 
Типы данных
Реляционная модель требует, чтобы типы используемых данных были простыми. Выделяют три группы таких данных:
- простые 
- структурированные 
- ссылочные 
Простые (атомарные) типы данных — это данные, которые не обладают внутренней структурой. Данные такого типа называют скалярными и относят к ним логический, строковый и численный типы данных. В DB2 есть еще data, money, time и др. Понятие атомарности относительно, так как строковый тип данных можно рассматривать как одномерный массив символов, а значение целого типа как массив битов. При переходе на битовый уровень теряется семантика данных.
Структурированные типы данных предназначены для задания сложных структур данных. Они конструируются из составляющих элементов, которые в свою очередь так же могут обладать структурой. К примеру, массивы, записи. Массив — это функция с конечной областью определения (с математической точки зрения):
А = {1, 2, . . . , n}
F : A  R
Отображение F задает одномерный вещественный массив.
Запись — кортеж из некоторого декартового произведения множеств:
| 
 | t1 | t2 | . . . | tn | 
| ri | r1 | r2 | . . . | rn | 
| rj | 
 | 
 | . . . | 
 | 
T1 x T2 x …x Tn
r1  T1
r2  T2
Общим для всех структурированных типов данных является то, что они имеют внутреннюю структуру, используемую на том же уровне абстракции, что и сами типы данных.
При работе с массивами или записями можно манипулировать массивом или записью как единым целым, так же можно работать и поэлементно. Работая же с простыми типами данных (например, с числовыми) мы ими манипулируем как целыми (неделимыми) объектами, и чтобы работать с набором битов, нужно перейти на более низкий уровень абстракции (к примеру, на ассемблер).
Ссылочный тип данных предназначен для обеспечения возможности указания на другие данные.
