Функционально СД присутствует во всех БнД, но не всегда компонент выполняющий перечисленные функции имеет именно такое название, чаще всего функции СД исполняет СУБД .
Администратор БД (АБД) – это лицо или группа лиц, отвечающих за выработку требований к БД, ее проектирование, создание, эффективное использование эффективное использование и сопровождение. Для однопользовательских систем функции АБД возлагаются, как правило, на лица, которые непосредственно работают с приложениями базы данных. В вычислительной сети АБД взаимодействует с администратором сети, который контролирует функционирование аппаратных и программных средств, а так же обеспечивает разграничение доступа.
Вычислительная система (ВС) представляет собой совокупность взаимосвязанных и согласовано действующих ЭВМ или процессоров и других устройств, обеспечивающих автоматизацию процессов приема, обработки и передачи информации потребителям.
Обслуживающий персонал выполняет функции поддержания технических и программных средств в работоспособном состоянии.
Эффективность функционирования информационной системы (ИС) во многом зависит от ее архитектуры. В настоящее время в большинстве случаев используются распределенные ИС. Распределенные ИС – это такие ИС, которые позволяют обрабатывать, добавлять и удалять информацию из базы данных сразу нескольким пользователям. Такие ИС делятся на две части серверную и клиентскую. При чем общая база данных разделяется на корпоративную базу данных (КБД) и персональные базы данных (ПБД), и КБД размещается на компьютере сервере, а ПБД размещаются на персональных компьютерах сотрудников подразделений.
Сервером определенного ресурса в компьютерной сети называют компьютер (программу), управляющий этим ресурсом, клиентом – компьютер (программу), использующий этот ресурс. Тип сервера определяется ресурсом, которым он управляет, например, если таковым ресурсом является база данных, то соответствующий сервер называется сервером баз данных.
Исторически первой появилась архитектура распределенной ИС, названная файл-сервером (Рис. 1). В таких ИС по запросам пользователей файлы БД передаются на персональные компьютеры, где и производится их обработка. Недостатками такого вида архитектуры является высокий трафик, то есть загруженность сети при передаче данных для обработки, а так же частая передача избыточных данных: вне зависимости от того, сколько записей из базы данных требуется пользователю, файлы базы данных передаются пользователю полностью.
В настоящее время перспективной является архитектура клиент-сервер (Рис. 2). Достоинством организации информационной системы по такой архитектуре является удачное сочетание централизованного хранения, обслуживания и коллективного доступа к общей корпоративной информации с индивидуальной работой пользователей над персональной информацией. При использовании архитектуры клиент-сервер сервер баз данных берет на себя основную часть работы по обработке данных, а так же обеспечению их надежного хранения, непротиворечивости и корректности. Кроме того, при использовании данной архитектуры значительно снижается нагрузка на сеть. Это происходит из-за того, что клиент формирует запросы, поступающие к серверу в виде инструкций языка SQL (StructuredQueryLanguage – структурированный язык запросов).
В ответ на получение таких инструкций, сервер выполняет поиск необходимых записей и передает их пользователю, то есть по сети вместо длинных процедур от клиента предается короткий запрос, а в ответ от сервера передаются не все данные, а только необходимые пользователю. В результате скорость работы с БД значительно возрастает.
Корпоративная БД создается, поддерживается и функционирует под управлением сервера БД, например, MicrosoftSQLServer, BorlandInterBase, OracleServer. При использовании архитектуры клиент-сервер общая база данных разделяется на корпоративную БД и персональные БД, это дает возможность уменьшить сложность проектирования БД, а значит снизить вероятность ошибок при проектировании и стоимость проектирования. Кроме того, использование такой архитектуры позволяет постепенно наращивать информационную систему предприятия, во-первых, по мере развития предприятия; во-вторых, по мере развития самой ИС.
Классификация и функции СУБД
Все существующие СУБД можно разделить по нескольким параметрам. Рассмотрим некоторые из них.
По сфере применения различают три основных вида СУБД:
· Промышленные универсального назначения – эти СУБД не имеют четко очерченных рамок применения, они рассчитаны на все случаи жизни, вследствие чего достаточно сложны и требуют о пользователя специфических знаний.
· Промышленные специального назначения – это СУБД, разрабатываемые для применения в конкретной сфере деятельности – бухгалтерские, складские, банковские СУБД и т.д.
· Заказные СУБД. Как специализированные, так и универсальные промышленные СУБД относительно дешевы, достаточно надежны (отлажены) и готовы к немедленной работе, в то время как заказные СУБД требуют существенных затрат, а их подготовка к работе и отладка занимают значительный период времени (от нескольких месяцев до нескольких лет). Однако, в отличие от промышленных заказные СУБД в максимальной степени учитывают специфику работы заказчика (того или иного предприятия), их интерфейс интуитивно понятен пользователю и не требует от него специальных знаний.
Кроме разделения по специализации СУБД можно разделить так же и по их архитектуре (Рис. 3). Все СУБД по этому критерию делятся на следующие:
· Однозвенная архитектура. В однозвенной архитектуре используется единственное звено (клиент), обеспечивающее необходимую логику управления данными и их визуализацию
· Двухзвенная архитектура. В данном виде архитектуры значительную часть логики управления берет на себя сервер баз данных, в том время как клиент в основном занят отображением данных в удобном для пользователя виде.
· Трехзвенная архитектура. В трехзвенных СУБД используется промежуточное звено – сервер приложений, который является посредником между клиентом и сервером баз данных. Сервер приложений призван избавить клиента, от каких бы то ни было забот по управлению данными и обеспечению связи с сервером баз данных.
Кроме того, в зависимости от расположения отдельных частей СУБД различают локальные и сетевые СУБД.
Все части локальной СУБД размещаются на компьютере пользователя базы данных. Чтобы с одной и той же базой данных одновременно могло работать
несколько пользователей, каждый пользовательский компьютер должен иметь свою копию локальной базы данных. Существенной проблемой СУБД такого типа является соответствие разных копий базы данных друг другу – синхронизация копий. Именно поэтому для решения задач, требующих совместной работы нескольких пользователей такой вид СУБД фактически не используется.
К сетевым относятся файл-серверные, клиент-серверные и распределенные СУБД. Непременным атрибутом таких СУБД является сеть, обеспечивающая аппаратную связь компьютеров и делающая возможной корпоративную работу множества пользователей с одними и теми же данными. Работа первых двух видов СУБД основана на работе соответствующих ИС и описана выше. Распределенные СУБД могут содержать несколько десятков и сотен серверов БД. Количество клиентских мест в них может достигать нескольких сотен тысяч. Обычно такие СУБД работают на предприятиях государственного масштаба, подразделения которых разнесены на значительные расстояния (Министерство обороны, Центризбирком, МВД и др.). В распределенных СУБД некоторые серверы могут дублировать друг друга, с целью достижения предельно малой вероятности отказов и сбоев, которые могут исказить жизненно важную информацию. Они используют собственные региональные средства связи. Интерес к распределенным СУБД возрос в связи со стремительным развитием Интернета. Опираясь на возможности Интернета подобные СУБД строят не только предприятия государственного масштаба, но и небольшие коммерческие предприятия.
По используемой модели данных СУБД (как и БД) разделяют на иерархические, реляционные, объектно-ориентированные и другие типы (об этих моделях данных будет рассказано ниже). Некоторые СУБД могут одновременно поддерживать несколько моделей данных.
Рассмотрим некоторые функции, которые реализует СУБД.
С точки зрения пользователя, СУБД реализует функции хранения, изменения (пополнения, редактирования, удаления) и обработки информации, хранящейся в базе данных, а так же разработки и получения различных выходных документов.
Перечисленные выше функции СУБД, в свою очередь, используют следующие основные функции более низкого уровня, которые называются низкоуровневыми:
· Управление данными во внешней памяти;
· Управление буферами во внешней памяти;
· Управление транзакциями;
· Ведение журнала изменений базы данных;
· Обеспечение целостности, непротиворечивости и безопасности БД.
Рассмотрим эти функции более подробно.
Реализация функции управления данными во внешней памяти в разных системах может различаться и на уровне управления ресурсами (используя файловые системы ОС или непосредственное управление устройствами компьютера), и по логике самих алгоритмов управления данными. Качество реализации этой функции наиболее сильно влияет на эффективность работы специфических ИС с огромными БД, сложными запросами, большим объемом обработки данных.