Системы управления базами данных

 

Одними из первых СУБД считаются системы IMS (IBM, 1968 г.), ADABAS (Software AG, 1969 г.), IDMS (BF Gudrich Chemical Company, 1971 г.), предназначенные для мэйнфреймов – мощных компьютеров универсального значения. Функции их были немногочисленны и в основном включали управление хранением и обработкой данных в базе и предоставление доступа к базе данных пользователям или прикладному программному обеспечению.

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

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

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

· актуализации хранящихся в ней данных;

· быстрого извлечения из базы необходимых данных по запросам пользователей, в том числе по так называемым «незапланированным» запросам, то есть запросам, заранее не предусмотренным в системе;

· выполнения вычислений над данными;

· создания экранных шаблонов – форм, обеспечивающих удобство работы с данными;

· вывода данных из базы в отчетах – документах, имеющих заданный пользователем вид и обеспечивающих удобство восприятия информации;

· разработки приложений;

· экспорта данных в другие базы и импорта данных из других баз данных;

· публикации данных в Интернет.

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

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

Система управления базами данных (Data Base Management System –DBMS) – это программная система, предназначенная для создания общей базы данных для множества приложений, поддержания ее в актуальном состоянии и обеспечения доступа пользователей к содержащимся в ней данным.

 

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

 

Все функции, возлагаемые на СУБД, несмотря на их разнообразие в различных СУБД, можно разделить на три основных вида.

1. Функции определения (описания) данных. СУБД имеет средства для задания структуры данных, хранимой в базе, их типа, а также для указания, как данные будут связаны между собой, каковы критерии проверки данных.

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

3. Функции управления данными. Они обеспечивают организацию ввода, обработки и хранения данных.

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

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

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

· процессор запросов;

· процессор форм;

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

· средства обработки, реализованные на языках программирования.

 

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

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

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

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

По типу поддерживаемой модели данных СУБД делятся на:

· иерархические. Первой иерархической СУБД была система IMS (Information Management System) компании IBM, коммерческое распространение которой началось в 1968 г. Эта СУБД до сих пор остается основной иерархической СУБД, используемой на мэйнфреймах;

· сетевые. Первой сетевой СУБД считается система IDS (Integrated Data Store), разработанная компанией General Electric немного позже системы IMS;

· реляционные. Первые реляционные СУБД System R фирмы IBM, Ingres Калифорнийского университета появились в 1970-х годах, а коммерческие СУБД этого класса были выпущены в начале 1980-х годов – DB2 (IBM), Oracle и др. В это же время появились реляционные СУБД для персональных компьютеров – продукты семейства dBase;

· постреляционные. В качестве их примеров приведем СУБД uniVers, Bubba и Dasdb;

· объектно-ориентированные. Первые объектно-ориентированные СУБД появлялись уже в середине 1980-х. К их числу можно отнести СУБД ORIONамериканской компании MCC, GemStone американской фирмы Servio Logic, Irisфирмы Hewlett-Packard;

· объектно-реляционные. На основе этой модели в Калифорнийском университете была разработана СУБД Postgres. Но первой СУБД, официально называемой объектно-реляционной системой, была UniSQL корейской компании UniSQL, выпущенная в 1991 г.;

· многомерные. К числу многомерных СУБД можно отнести следующие: UniData компании IBM, D3, mvBase, mvEnterprize компании Raining Data и jBASE компании jBASE.

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

Использование Интернет как важнейшего инструмента для бизнеса радикально изменило роль и масштабы использования баз данных. К примеру, корпорация может иметь филиалы во многих странах мира. Их сотрудникам могут понадобиться данные, находящиеся на удаленном расстоянии. Доступ к таким данным возможен в результате интеграции технологий баз данных и Web-технологий. Она позволяет сочетать простоту и доступность применяемых в настоящее время Web-технологий с функциональностью и эффективностью баз данных.

Комбинирование Web-технологий и технологий баз данных открывает множество новых возможностей. Одна из них – публикация базы данных. Это размещение ее на Web-сервере для совместного использования данных. В результате этого появляется возможность создания в среде СУБД Web-страниц с информацией базы данных. Для доступа к ним используется Web-браузер.

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

В основе Web-технологии лежит создание Web-страниц с использованием языка HTML. Но его ограниченные средства не позволяют эффективно решать ряд проблем, в частности обмен структурированными документами. Для преодоления этого недостатка разработан расширяемый язык разметки XML. Использование этого языка привело к появлению так называемых XML-ориентированных СУБД. Число таких систем постоянно растет, совершенствуются технологии их разработки. Системы такого рода (например, Tamino XML Serverкомпании Software AG, Ipedo XML Database компании Ipedo) находят широкое применение в электронном бизнесе, в дистанционном образовании, в поддержке научных исследований и в других отраслях.

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