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

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

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

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

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

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

Функции СУБД:

    1 Хранение, извлечение и обновление данных. С помощью СУБД пользователь получает возможность выполнять указанные действия над базами данных. Это самая фундаментальная функция СУБД. Причем, способ реализации этой функции должен быть скрыт от конечного пользователя. 2 Каталог, доступный конечным пользователям. Любая СУБД имеет доступный как программистам, так и пользователям, каталог, в котором хранится описание элементов данных. Системный каталог (его еще называют словарь данных) содержит информацию о данных в базе данных (метаданные). В зависимости от типа используемой СУБД объем информации, а также способ ее использования могут быть различными. Чаще всего в системном каталоге находятся следующие данные:
      - имена, типы и размеры элементов данных; - имена связей; - накладываемые на данные ограничения поддержки целостности; - имена санкционированных пользователей; - внешняя, концептуальная и внутренняя схемы и отображения между ними; - статистические данные (частота транзакций, счетчик обращения к объектам базы данных).

Системный каталог позволяет достичь определенных преимуществ:

    - информация о данных может быть централизованно собрана и сохранена, что позволит контролировать доступ к этим данным, как и к любому другому ресурсу; - можно определить смысл данных, что поможет другим пользователям понять их назначение; - упрощается сообщение, так как сохраняются точные определения смысла данных. В системном каталоге также могут быть указаны один или несколько пользователей, которые являются владельцами данных или обладают правом доступа к ним; - благодаря централизованному хранению избыточность и противоречивость описания отдельных элементов данных могут быть легко обнаружены; - внесенные в базу данных изменения могут быть запротоколированы; - последствия любых изменений могут быть определены еще до их внесения, поскольку в системном каталоге зафиксированы все существующие элементы данных, установленные между ними связи, а также все их пользователи; - меры обеспечения безопасности могут быть дополнительно усилены; - появляются новые возможности организации поддержки целостности данных; - может выполняться аудит сохраняемой информации. 3 Поддержка транзакций. СУБД должна иметь механизм, который гарантирует выполнение либо всех операций обновления данной транзакции, либо ни одной из них. Транзакция представляет собой набор действий, выполняемых отдельным пользователем или прикладной программой с целью доступа или изменения содержимого базы данных (например, удаление сведений о сотруднике из база данных и передача ответственности за всю курируемую им работу другому сотруднику). Если во время выполнения транзакции произойдет сбой, например, из-за выхода из строя компьютера, база данных попадет в противоречивое состояние, поскольку некоторые изменения уже будут внесены, а остальные нет. В этом случае все частичные изменения должны быть отменены для возвращения базы данных в исходное непротиворечивое состояние. 4 Сервисы управления параллельностью. Любая СУБД должна иметь механизм, который позволяет работать с базой данных нескольким пользователям, обеспечивая при этом корректное обновление данных в базе данных. Одна из основных целей создания и использования СУБД заключается в том, чтобы множество пользователей могло осуществлять доступ к совместно обрабатываемым данным. Параллельный доступ сравнительно просто организовать, если все пользователи выполняют только чтение данных. Конфликтные ситуации с нежелательными последствиями легко могут возникнуть, когда два и более пользователей пытаются обновить данные. СУБД должна гарантировать, что при одновременном доступе к базе данных многих пользователей таких конфликтов не произойдет. 5 Сервисы восстановления. Любая СУБД должна обеспечить функцию восстановления базы данных, в случае ее повреждения или разрушения. Это может обусловлено различными ошибками программного обеспечениями, сбоями в работе аппаратура и т. д. К тому же пользователь может потребовать отмены операции. Во всех подобных случаях СУБД должна предоставить механизм восстановления базы данных и возврата к ее непротиворечивому состоянию. Сервисы восстановления тесно связаны с управлением транзакциями. 6 Сервисы контроля доступа к данным. СУБД имеет механизм, обеспечивающий только санкционированный доступ к базе данных. Это позволяет разграничить уровни доступа пользователей, а также ограничить доступ к информации, которая является, скажем, конфиденциальной. 7 Поддержка обмена данными. СУБД должна обладать способностью к интеграции с коммуникационным программным обеспечением. Большинство пользователей осуществляют доступ к базе данных с помощью терминалов. Иногда эти терминалы подсоединены непосредственно к компьютеру с СУБД. В других случаях терминалы могут находиться на значительном удалении и обмениваться данными с компьютером, на котором располагается СУБД, через сеть. В любом случае СУБД получает запросы в виде сообщений обмена данными и аналогичным образом отвечает на них. Такая передача данных управляется менеджером обмена данными. Хотя этот менеджер не является частью собственно СУБД, тем не менее, чтобы быть коммерчески жизнеспособной, любая СУБД должна обладать способностью интеграции с разнообразными существующими менеджерами обмена данными. Даже СУБД для персональных компьютеров должны поддерживать работу в локальной сети, чтобы вместо нескольких баз данных для каждого пользователя можно было установить одну централизованную базу данных и использовать ее как общий ресурс для всех пользователей. При этом предполагается, что не база данных должна быть распределена в сети, а удаленные пользователи должны иметь возможность доступа к централизованной базе данных. Такая топология называется распределенной обработкой. 8 Службы поддержки целостности данных. СУБД должна обладать инструментами контроля за тем, чтобы данные и их изменения соответствовали заданным правилам. Целостность базы данных означает корректность и непротиворечивость хранимых данных. Она может рассматриваться как еще один тип защиты базы данных, но в более широком смысле целостность связана с качеством самих данных. Целостность обычно выражается в виде ограничений или правил сохранения непротиворечивости данных (например, сотрудник не имеет права работать больше, чем на полторы ставки в данной организации). 9 Службы поддержки независимости от данных. СУБД должна обладать инструментами поддержки независимости программ от фактической структуры базы данных. Обычно она достигается за счет реализации механизма поддержки представлений или подсхем. Физическая независимость от данных достигается достаточно просто, что нельзя сказать о логической независимости от данных. Как правило, система легко адаптируется к добавлению нового объекта, атрибута или связи, но не к их удалению. В некоторых системах вообще запрещается вносить любые изменения в уже существующие компоненты логической схемы. 10 Вспомогательные службы. СУБД должна предоставлять некоторый набор различных вспомогательных служб. Вспомогательные утилиты обычно предназначены для оказания помощи администратору баз данных в эффективном администрировании базы данных Сорокин, А. В. Разработка баз данных. - СПб. : Питер, 2008. - С. 285..

Выводы по главе 1

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

В основе любой базы данных находится модель данных - способ организации и хранения данных в базе данных. На основании используемой модели данных осуществляются все операции с данными.

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

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

База данные сетевой распределенный

Похожие статьи




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

Предыдущая | Следующая