ВИДЫ БАЗ ДАННЫХ
Дадим основное определение. База данных - это реализованная с помощью компьютера информационная структура (модель), отражающая состояние объектов и их отношения.
Следует учесть, что это определение не является единственно возможным. Информатика в отношении определений чаще всего не похожа на математику с ее полной однозначностью. Если подойти к понятию «база данных» с чисто пользовательской точки зрения, то возникает другое определение: база данных - совокупность хранимых операционных данных некоторого предприятия. Все дело в том, какой аспект доминирует в рассмотрении; в данной главе первое из определений более уместно.
Поскольку основу любой базы данных составляет информационная структура, базы данных делят на три рассмотренные выше типа: табличные (реляционные), сетевые, иерархические.
Опыт использования баз данных позволяет выделить общий набор их рабочих характеристик:
• полнота
- чем полнее база данных, тем вероятнее, что она содержит нужную информацию (однако, не должно быть избыточной информации);
• правильная организация - чем лучше структурирована база данных, тем легче в ней найти необходимые сведения;
• актуальность -
любая база данных может быть точной и полной, если она постоянно обновляется, т.е. необходимо, чтобы база данных в каждый момент времени полностью соответствовала состоянию отображаемого ею объекта;
• удобство для использования - база данных должна быть проста и удобна в использовании и иметь развитые методы доступа к любой части информации.
Соответственно возможностям организации реляционных, иерархических и сетевых информационых структур, существуют и аналогичные виды баз данных. В них данные представлены в формах, адекватных соответствующим структурам. Однако иерархические и сетевые базы данных являются гораздо менее распространенными, чем реляционные и не могут быть реализованы с помощью наиболее популярных СУБД, входящих в состав программного обеспечения ЭВМ, поэтому на них далее останавливаться не будем.
Реляционные базы данных
Наиболее распространенными в практике являются реляционные базы данных. Название «реляционная» (в переводе с английского relation - отношение) связано с тем, что каждая запись в таблице содержит информацию, относящуюся только к одному конкретному объекту.
Всякое отношение должно иметь свое имя. Пусть есть отношение с названием «Альбомы группы». В этом случае структура базы данных, состоящая из одной таблицы, запишется так: Альбомы группы (название альбома, год выпуска, тип альбома, фирма). Однако чаще база данных строится на основе нескольких таблиц, связанных между собой через общие атрибуты. Пусть, например, в базе данных «Рок-энциклопедия» содержатся две таблицы - 2.3, а и 2.3, б.
Таблица 2.3, а
Музыкальные альбомы групп
Код альбома |
Код группы |
Название альбома |
Год выпуска |
Тип альбома |
Фирма |
25 |
1 |
Help! |
1965 |
Lp (English) |
Pariophone |
36 |
2 |
Led Zeppelin 4 |
l97l |
Lp |
Atlantic |
35 |
2 |
Led Zeppelin 4 - |
1970 |
Lp |
Atlantic |
34 |
3 |
Flash Gordon |
1980 |
Soundtrack |
EMI |
группы
Код группы |
Название группы |
Страна |
Дата создания |
Дата распада |
1 |
The Bealles |
Англия |
1963 |
I970 |
2 3 |
Led Zeppelin 4 Flash Gordon |
Англия Англия |
1989 199I |
- - |
создается для того, чтобы отличать альбомы друг от друга. Это очень важно, так как в таблице могут находиться альбомы с одинаковыми названиями.
Необходимость использования больше одной таблицы станет заметной, если объединить эти таблицы в одну (табл. 2.4).
Таблица 2.4 Объединение таблиц 23
Название группы |
Страна |
Дата создания |
Дата распада |
Название альбома |
Год выпуска |
Тип альбома |
Фирма |
The Beatles |
Англия |
1963 |
I970 |
With the Beatles |
1963 |
Lp |
Pariophone |
The Beatles |
Англия |
1963 |
I970 |
Please, please me |
1963 |
Lp |
Pariophone |
The Beatles |
Англия |
1963 |
I970 |
Rubber soul |
1963 |
Lp |
Pariophone |
Из таблицы 2. 4 видно, что при внесении в нее данных об альбомах определенной группы каждый раз приходится дублировать информацию первых четырех полей таблицы. Многократное сохранение в БД одних и тех же данных (название группы, страна, дата создания, дата распада) приведет к неэффективному использованию памяти, к тому же существенно возрастет вероятность ошибок при вводе данных. Разбив же данные по таблицам, можно в значительной степени избежать этих трудностей.
Через связь, определенную между этими таблицами, можно узнать
• сколько альбомов выпустила группа;
• выпускались ли альбомы у фирмы EMI;
• в каком году было выпущено максимальное количество альбомов и т.п.
Реляционные базы данных удобны еще и тем, что для получения ответов на различные запросы существует разработанный математический аппарат, который называется исчислением отношений или реляционной алгеброй. Ответы на запросы получаются путем «разрезания» и «склеивания» таблиц по строкам и столбцам. При этом ясно, что ответы также будут иметь форму таблиц.
Надо отметить, что база данных - это, собственно, хранилище информации и не более того. Однако, работа с базами данных трудоемкая и утомительная. Для создания, ведения и осуществления возможности коллективного пользования базами данных используются программные средства, называемые системами управления базами данных (СУБД).