
- •Ис поддержки принятия решений.
- •Общая характеристика реляционной модели данных.
- •Типы данных
- •Типы данных, используемые в реляционной модели
- •Отношения, атрибуты, кортежи отношений.
- •Тема: Первая нормальная формула
- •Базовые концепции реляционных бд db2.
- •Объекты db2, используемые для хранения бд.
- •Контейнер Контейнер — это физическое хранилище. Имя контейнера — это имя папки (или имя устройства) или имя файла (для dms).
- •Буферный пул
- •Расчет физического пространства для таблиц.
- •Объекты системы
- •Целостность данных
- •Потенциальные ключи
- •Внешние ключи.
- •Целостность внешних ключей.
- •Операции, в результате которых нарушается ссылочная целостность:
- •Стратегии поддержания ссылочной целостности.
- •Дополнительные стратегии поддержки ссылочной целостности.
- •Нормальная форма отношений.
- •Критерий оценки качества логической модели данных.
- •Нормализация таблиц
- •Замкнутость реляционной алгебры
- •Зависимые реляционные операторы.
- •Запросы, невыразимые средствами реляционной алгебры.
- •Элементы языка sql.
- •Синтаксис языка sql с использованием языка Бэкуса-Наура.
- •Замечание
- •Замечание
- •Синтаксис условных выражений (из раздела where)
- •Порядок выполнения оператора select
- •Выражение средствами sql операторов реляционной алгебры
Расчет физического пространства для таблиц.
Тип колонок
Длина самих таблиц (количество строк)
Дефрагментация диска
Объем свободного пространства на диске
Эти 4 момента необходимо учитывать при оценке физического пространства для таблиц.
Estimate size — оценивает, какое пространство объект БД будет занимать на диске в предположении того, что объект будет разрастаться. Оценкой объекта являются два значения:
Минимальный размер (размер табличного пространства)
Максимально возможный размер.
Размер, необходимый для таблиц БД определяется следующими объектами:
Таблица системного каталога
Пользовательские таблицы
Данные типа long
Данные типа LOB
Размер индексов.
Таблицы системного каталога.
Таблицы увеличиваются при добавлении объектов в БД и привилегий. При создании БД изначально все ее таблицы занимают 3.5 Мб. Объем необходимого для размещения таблиц системного каталога зависти от типа табличного пространства и размера extent’a этого табличного пространства, который будет содержать таблицы системного каталога. Для DMS с размером extent=32 пространство под таблицы системного каталога занимает 27? Мб.
По умолчанию используется page size = 4 Кб. Каждая страница включает 76 байт, которые использует менеджер БД, остается 4020 байт, которые можно использовать под строку данных. От этого возникает ряд проблем:
4 Кбайтная страница не может сохранить больше, чем 4005 байт, т.е. 15 байт все равно остаются незадействованными.
Максимальное количество столбцов не может превышать 500, т.е. не может быть больше 500 колонок.
Для того, чтобы рассчитать количество страниц под пользовательскую таблицу, необходимо выполнить следующий запрос:
ROUND DOWN (4020 / (average rowsize +10)) = records per page
(number of records / records per page)*1.1 = number of pages
average rowsize — средний размер строки.
number of pages — размер extent, который нам нужен при планировании табличного пространства.
Оценка данных типа long.
Данные типа long хранятся и структурируются отдельно от других данных.
В DB2 существует два типа для long-данных:
Long VARCHAR
Long VARGRAPHIC
Для них используется отдельная 4 Кбайтная страница.
Данные типа LOB.
Для того, чтобы оценить LOB-данные, необходимо рассмотреть 2 объекта:
LOB data object
Данные хранятся в 4 Кб пространстве, которое разбивается не сегменты по1 Кб.
LOB allocation object. (Хранятся на 4 Кб странице).
Под этими объектами рассматривается не используемое пространство.
Пространство для индексов
Для каждого индекса используется место, которое можно разместить как в табличном пространстве, так и в отдельном табличном пространстве. Для оценки используется формула:
(average index keysize +8)* number of rows *3.2
average index keysize — количество байт под каждую колонку, включая индекс.
+8 и *3.2 используются для округления.
Временное табличное пространство, используемое для создания индекса, рассчитывается по такой же формуле, только вместо *3.2 будет *2.
Объекты системы
Параметры:
Параметры конфигурации
Бизнес-правила
NOT NULL ограничения
Уникальные ограничения
Ограничения первичного и вторичного ключа
Эти параметры определяют ресурсы, необходимые для всех компонентов DB2 и для пользовательских БД, а так же параметры, необходимые для диагностики БД (например, проверка ссылочной целостности…).
Существует два типа конфигурационных файлов:
Для менеджера БД
Конфигурационный файл БД.
Параметры содержат значение ресурсов системы на уровне Instance.
Для каждого клиента создается свой конфигурационный файл менеджера. Конфигурационный файл БД создается при создании БД. Он задает значения ресурсов, которые необходимы БД.
Бизнес-правила.
Обеспечивают соответствие БД некоторым обязательным требованиям (ограничениям):
NOT NULL ограничения. Предполагается, что в каждой ячейке таблицы содержится информация, т.е. не пустые ячейки.
Unique (т.е. должен быть столбец, значения которого уникальны, т.е. является первичным ключом).
Primary key (первичный ключ).
Foreign key (первичный ключ для другой таблицы).
Check (проверка корректности ввода).
Unique ограничение обязывает все значения в колонке быть уникальными и ненулевыми для всех строк.
Primary: Каждая таблица может иметь только один первичный ключ (т.е. колонка или комбинация колонок, связанных какими-то операциями). Эта одна или несколько колонок должны удовлетворять ограничению уникальности. Первичный ключ совместно со вторичным ключом определяет связи между таблицами, поэтому он должен идентифицировать строку в этой таблице и он не должен сильно увеличиваться или уменьшаться после создания.
DEPARTMENT
DEPTNO Primary key |
DEPTNAME |
MGRNO |
A00 |
Comp.Serv. |
10 |
B01 |
Planning |
20 |
C01 |
Inform. Center |
10 |
D11 |
M |
60 |
EMPNO Primary key |
First Name |
Last Name |
WORKDEPT Foreign key |
10 |
Christine |
Haas |
A00 |
20 |
Sally |
Kwan |
B01 |
30 |
Sean |
O’Connel |
D11 |
40 |
Heather |
Nichols |
D11 |
60 |
Irving |
Stern |
D11 |
10 |
Christine |
Haas |
C01 |
EMPLOYEE
Лекция №6 (14.03.02)