Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #52, МАРТ 2005 г.

Какие базы есть?

Рябцев Владимир aka BigMaK

Спецвыпуск: Хакер, номер #052, стр. 052-012-1


(bigmak1@progtech.ru)

Чтобы выбирать, надо разбираться

В наш век информационных технологий программное обеспечение для создания и управления базами данных стало одним из базовых элементов IT-инфраструктуры. Действительно, базы данных сейчас используются практически повсеместно: форум PhpBB, информационные порталы (архивы музыки и фильмов), движки сайтов вроде phpNuke и т.д.

База данных (БД) – это электронное хранилище какой-либо информации, имеющее свою определенную, наиболее удобную и функциональную структуру. Для создания баз данных и работы с ними используют различные СУБД (системы управления базами данных). Базы данных различаются по своей структуре: дореляционные (на инвертированных списках, иерархические системы и сетевые СУБД), реляционные и постреляционные (например, объектные).

Системы, основанные на инвертированных списках

К числу наиболее известных представителей можно отнести Datacom/DB от компании Applied Data Research, Inc. (ADR). Организация доступа к данным, основанная на инвертированных списках, очень распространена и применяется практически во всех современных реляционных СУБД. С тем лишь отличием, что в этих системах пользователи не имеют непосредственного доступа к инвертированным спискам (то есть к индексам). Общие правила для ограничения целостности отсутствуют, и все возлагается на плечи прикладной программы.

Иерархические системы

Типичным представителем иерархических систем является Information Management System (IMS) фирмы IBM. Первая версия этого продукта вышла в свет в 1968 году.

Чтобы понять иерархическую модель СУБД, попробуй представить себе дерево (представляет собой структуру данных) со всеми его ветками и выросшими от него другими деревьями. Причем к каждому листочку (сегменту структуры) можно добраться только по одному определенному пути, который начинается от корней (корневого сегмента).

Для этой модели существуют некоторые базовые правила. Никакая запись-потомок не может существовать без записи предка. Согласись, ветка, висящая в воздухе без дерева, - это бред! И ветка не может расти от двух деревьев сразу, то есть запись-потомок может иметь только одного предка.

Сетевые СУБД

Типичным представителем сетевых СУБД является Integrated Database Management System (IDMS), созданная в компании Cullinet Software, Inc. Отличие таких СУБД от разработанных с помощью иерархического подхода кроется в особенностях сетевой структуры данных: потомок может иметь больше одного предка.

Реляционная модель хранения данных

Вообще реляционная база данных представляет собой таблицу, в которой в качестве столбцов выступают названия хранимых в ней данных. Причем в каждом столбце может быть только один, свой тип данных, а каждая строка хранит эти самые данные.

Между таблицами существуют различные связи.

Архитектуры СУБД: технология локальных (настольных) БД

База данных хранится во внешней памяти компьютера, за которым работают один или несколько человек, или на выделенном сервере, доступ к которому осуществляется по сети.

Локальными или настольными называют СУБД типа Access, Paradox и т.д. В них уже есть свой формат данных, который учитывает параллельное выполнение операций, возможность доступа к БД нескольких пользователей и т.д. (в принципе, в клиент-серверных ОС БД тоже часто хранятся в файлах на диске, к которым идет доступ средствами ОС, за исключением гигантов типа Oracle, где есть своя файловая система). Делается это, конечно, менее эффективно, чем в клиент-серверных СУБД.

Содержание  Вперед на стр. 052-012-2