4.4. Системы управления базами данных (СУБД)


Архитектура систем управления базами данных. База данных – это совокупность данных, организованная по определенным правилам, которые предусматривают общие принципы описания, хранения и манипулирования данными.

Основные компоненты СУБД (рис.4.3): средства представления данных в БД, средства манипулирования данными, интерфейсы пользователей, администратора базы данных и комму­никаций.

Средства представления данных совместно с интер­фейсами осуществляют организацию базы данных на разных уровнях абстракции данных. Различают три уровня абстракции и соответственно представления дан­ных: физический, концептуальный и внешний (пользо­вательский).

Средства физического уровня учитывают характе­ристики конкретного ВЗУ, форматы и способы записи данных на физический носитель и др. Средства концеп­туального уровня отображают данные физического уров­ня с определенной абстракцией. Концептуальный уро­вень определяет модель представления данных в БД. В настоящее время применяются три модели представле­ния данных в БД: иерархическая, сетевая и реляцион­ная. Средства внешнего уровня преобразуют данные в форму, понятную пользователю и с которой пользова­тель может работать через свои интерфейсы.

В зависимости от назначения СУБД и модели пред­ставления данных в БД пользователю могут быть предо­ставлены следующие интерфейсы: меню, командный, многооконный, графический, стандартные языки запро­сов и манипулирования данными, генератор отчетов. 

Администратору базы данных для выполнения им своих функций предлагаются дополнительные интерфейсы: языки программирования высокого уровня, языки СУБД, генераторы интерфейсов пользователей. Коммуникационные интерфейсы обеспечивают экспорт/импорт данных в другие прикладные системы и компьютерные сети.  

Представление данных в БД на разных уровнях обеспечивается программами различного уровня машин­ной зависимости. На внешнем (пользовательском) уров­не используются языки запросов и манипулирования данными и языки программирования высокого уровня. Для работы на физическом уровне необходимы машин­но-зависимые языки. Концептуальный уровень требует применения тех и других языков.



Рис. 4.3. Архитектура системы управления базой данных

Обозначения: СВУ — средства внешнего уровня, 

СКУ - средства концептуального уровня, 

СФУ - средства физического уровня, ИП - интерфейсы пользователей, ИАБД - интерфейсы администратора базы данных, 

КИ - коммуникационные интерфейсы.


Интерфейсы СУБД.  Интерфейсы СУБД по своему назначению и уровню делятся на интерфейсы пользователей, интерфейсы ад­министратора базы данных и коммуникационные интер­фейсы. Приведенный ниже перечень интерфейсов не оз­начает, что все названные интерфейсы реализованы в каждом типе СУБД. Реализация конкретных интерфей­сов в СУБД определяется назначением системы, моделью представления данных в БД, ориентацией на подго­товленность пользователя и другими факторами.

Интерфейсы пользователей:

• взаимодействие с системой по принципу “меню”;

• многооконный интерфейс;

• графический интерфейс;

• генератор отчетов;

• языки запросов и манипулирования данными в БД.

Язык запросов и манипулирования данными в БД является основным интерфейсом создания и ведения БД. Наиболее доработанным и известным является язык SQL (Structured Query Language - Язык Структурированных Запросов), разработанный фирмой IBM для работы с ре­ляционными БД. Язык SQL Американским нацио­нальным институтом стандартов (ANSI) и Международ­ной организацией стандартов (ISO) принят в качестве стандартного при разработках СУБД.

Интерфейсы администратора базы данных:

• все интерфейсы пользователей;

• языки программирования высокого уровня (Бей­сик, Паскаль, Си и др.);

• генераторы интерфейсов пользователей, которые дают возможность администратору базы данных разрабатывать интерфейсы с учетом специфики работы конкретных пользователей;

• языки баз данных.

Язык базы данных является частью СУБД, с помо­щью которого создаются прикладные программы для ра­боты с информацией в БД. Существует большое число языков баз данных, однако наиболее популярны язык СУБД dBASE III Plus и язык СУБД Paradox (язык PAL). Эти языки используют в своих СУБД и другие фирмы.

Коммуникационные интерфейсы обеспечивают эк­спорт/импорт данных в другие прикладные системы компьютерные сети.

Виды СУБД.  В зависимости от организации структуры БД и интерфейсов, предоставляемых пользователям, СУБД под­разделяются на следующие группы.

Однофайловые СУБД - наиболее простые в обращении системы, не требующие больших ресурсов ПЭВМ. Обычно применяются для телефонных и адресных справочников, списков товаров в магазинах, на складах, организации картотек в библиотеках и т.п. Пример СУБД: Professional Report, Professional File, Reflex, Formula IV.

Многофайловые непрограммируемые СУБД доставляют пользователям большие возможности по ее зданию БД, так как позволяют хранить и использовать записи различных типов. Примеры: Quick Code, Magi PC, СУБД интегрированного пакета MS Works и др.

Многофайловые программируемые СУБД предоставляют пользователям возможности по написанию прикладных программ. Эти СУБД требуют значительных ресурсов ПЭВМ и определенного времени для получения навыков работы с СУБД. Наиболее известные СУБД этой группы dBASE III Plus (русифицированная версия “Ребус”), dBASE IV, FoxBASE Plus (“Карат М”), Oracle (“Каре Микро”), Clipper, Paradox, MS Access имеют следующие обобщенные характеристики: число полей в записи находится в пределах от 128 до 1024; число символов в записи - от несколько тысяч до десятков ты­сяч; число записей в файле - от десятков тысяч до неограниченного количества (ограничение определяется только емкостью памяти), число одновременно откры­тых файлов - от 10 (dBASE III Plus) до неограниченно­го числа (MS Access).

Многопользовательские СУБД используются для работы в локальных компьютерных сетях. Примером такой СУБД для IBM - совместимых ПЭВМ является Microsoft SQL Server.

Широкое применение БД и СУБД выдвигает ряд тре­бований, реализация которых в ближайшее время долж­на существенно упростить взаимодействие пользовате­лей с БД:

• использование для организации баз данных ПЭВМ, обладающих значительными ресурсами по производительности и объему памяти;

• применение периферийных устройств, облегчаю­щих работу пользователей с БД (сканеров про­стого и “читающего” тексты типов, средств вво­да/вывода речевой информации, микрофильми­рующих устройств вывода и др.);

• повышение доли выпуска многофайловых и про­граммируемых СУБД, поддерживающих реляци­онные БД;

• развитие стандартных языков запросов и мани­пулирования данными;

• совершенствование автоматизированных систем   программирования, работающих в среде БД под управлением СУБД;

• создание унифицированных интерфейсов для дос­тупа пользователей к БД из различных систем программирования, текстовых редакторов, электронных таблиц, проблемно- и методо-ориентированных прикладных пакетов.

Технологии разработки реляционных СУБД на бли­жайшие годы останутся наиболее значительными в про­ектах многих ведущих фирм мира.

Краткая  характеристика  некоторых СУБД.  В информационных системах, которые работают на ПК, совместимых с IBM PC, большое распространение получили так называемые dBASE-пoдобные системы управления базами данных (СУБД). Известно по крайней мере три семейства таких СУБД (dBASE, FoxPro® и Clipper), однако версий оригинальных систем и их адаптиро­ванных вариантов гораздо больше. Для пользователей сущест­венным является то, что, отличаясь между собой командными языками и форматом индексных файлов, все эти СУБД исполь­зуют одни и те же оперативные файлы с расширением .DBF, формат которых стал на некоторое время своеобразным стан­дартом баз данных.

В dBASE-подобных БД фактически использован реляцион­ный подход к организации данных, т.е. каждый файл .DBF представляет собой двумерную таблицу, которая состоит из фиксированного числа столбцов и переменного числа строк (за­писей). В терминах, принятых в технической документации, каждому столбцу соответствует поле одного из пяти типов (N – числовое, С – символьное, D – дата, L – логическое, М – примечание), а каждой строке – запись фиксированной длины, состоящая из фиксированного числа полей. С помощью командных языков этих СУБД мы создаем и исправляем маке­ты файлов .DBF (описания таблиц), создаем индексные файлы, пишем программы работы с базами данных (чтение, поиск, мо­дификация данных, составление отчетов и многое другое). Ха­рактерной особенностью файла .DBF является простота и на­глядность: физическое представление данных на диске в точ­ности соответствует представлению таблицы на бумаге.

Однако в целом системы, построенные на основе файлов .DBF, следует считать устаревшими. Многие механизмы реля­ционных БД, рассмотренные выше, в dBASE-подобных систе­мах либо не поддерживаются, либо создаются пользователями и программистами «кустарным» способом.

Большую популярность до сего времени имеют и другие СУБД (с другим форматом файлов) – Paradox, Clarion, db_Vista и т.д. Следует подчеркнуть, что перечисленные систе­мы ведут родословную от MS-DOS, однако ныне почти все они усовершенствованы и имеют версии для Windows.

Среди современных реляционных систем наиболее популяр­ны СУБД для Windows – Access фирмы Microsoft, Approach фирмы Lotus, Paradox фирмы Borland. Многие из этих систем поддерживают технологию OLE и могут манипулировать не только числовой и текстовой информацией, но и графическими образами (рисунками, фотографиями) и даже звуковыми фрагментами и видеоклипами.

Перечисленные СУБД часто называют настольными, имея в виду сравнительно небольшой объем данных, обслуживаемых этими системами. Однако с ними часто работают не только ин­дивидуальные пользователи, но и целые коллективы (особенно в локальных вычислительных сетях.

Вместе с тем, в центр современной информационной техно­логии постепенно перемещаются более мощные реляционные СУБД с так называемым SQL-доступом. В основе этих СУБД лежит так называемая технология «клиент-сервер». Среди ведущих производителей таких систем – фирмы Oracle, Centura (Gupta), Sybase, Informix, Microsoft и другие. Появились также объектные и объектно-реляционные СУБД.