- •Базы данных
- •Глава 1. Введение в теорию баз данных
- •Основные понятия и определения
- •Основные пути и тенденции развития баз данных
- •1.2.1. Модели представления данных
- •Счет №_______ от _______
- •1.2.2. Разделение функций бд, субд и приложений
- •1.2.3. Локальные и серверные базы данных
- •Реляционная модель данных
- •1.3.1. Отношения и таблицы
- •1.3.2. Реляционные ключи
- •1.3.3. Ключи и индексы
- •1.4. Целостность баз данных
Счет №_______ от _______
Покупатель_________________________________________________________
№ п/п |
Наименование |
Ед. изм. |
Цена |
Кол-во |
1 |
Товар1 |
шт |
1250.00 |
23 |
2 |
Товар2 |
кг |
4230.00 |
2.12 |
… |
|
|
|
|
в реляционной модели понадобится три таблицы:
Товар (Усл.№, Наименование, Ед.изм., Цена);
Счет (№счета, Дата, Покупатель);
Строка_счета (№счета, №строки, Товар, Кол-во).
Соответственно при выполнении запросов потребуется строить соединения этих трех (больших по объему) таблиц. Заметим, что необходимость последней таблицы здесь обусловлена именно недопустимостью многозначных атрибутов.
В постреляционной модели данных многозначные атрибуты допустимы. Кроме того, отсутствует требование постоянства числа полей и их размера в записях одной таблицы. Поэтому две последних таблицы могут быть заменены одной:
Счет (№счета, Дата, Покупатель, Товар, Кол-во).
При этом поля «Товар» и «Кол-во» будут многозначными, а часть строк будут содержать только два этих поля.
Таким образом в постреляционной модели достигается повышение производительности и большая наглядность представления данных.
Другой пример. РМД оказалась не очень подходящей по своим свойствам для систем аналитической обработки информации (систем поддержки принятия решений, OLAP-систем). Так информация о продажах некоторых товаров в рамках реляционной модели может быть представлена таблицей вида:
-
Товар
Месяц
Объем
Товар1
Январь
2100
Товар1
Февраль
2000
Товар1
Март
2300
…
Товар2
Январь
150000
Товар2
Февраль
140000
…
В многомерной модели данных та же самая информация может быть представлена гораздо более наглядно:
-
Январь
Февраль
Март
…
Товар1
2100
2000
2300
Товар2
150000
140000
160000
…
Также важными достоинствами многомерной МД являются: агрегируемость данных, т.е., возможность представления информации с разной степенью обобщения (например, с одной степенью для руководства компании и с другой – для менеджеров начального уровня); историчность – обязательная привязка данных ко времени. Но, с другой стороны, громоздкость многомерной МД делает ее неприемлемой для построения систем оперативной обработки информации.
Для областей, где необходимо отображать большое число сложных связей в последнее время используется объектная модель данных, которая основана на известных из ООП понятиях инкапсуляции, наследования и полиморфизма.
Однако, несмотря на появление различных новых моделей данных, реляционная модель на текущий момент времени сохраняет абсолютное преимущество по числу применений. Более того, новые модели в существенной степени наследуют механизмы, разработанные в рамках и для реализации РМД. Поэтому и данный курс строится на базе именно реляционной модели данных.
