Архитектура базы данных: понятие, определение, уровни
Как называется совокупность основных структурных, функциональных компонентов различных БД, СУБД (систем управления базами данных)? Этот комплекс в информационной науке принято называть архитектурой базы данных, СУБД. Предлагаем вам досконально разобрать это понятие, типы подобных комплексов, их трехуровневое разбиение.
Что это?
Архитектура базы данных - комплекс структурных компонентов БД, а также средств, обеспечивающих их взаимодействие как друг с другом, так и с конечным пользователем, системным персоналом.
Данное определение отражает одну из важнейших функций хранилищ информации - обеспечение возможности абстракции сведений БД. Она и формирует сложившийся в наши дни подход к архитектуре данных.
Отсюда возникает новый вопрос: в чем суть, предназначение абстракции данных? Предоставляемые системой, они (абстракции) будут основным средством поддержки независимости ведения хранилищ информации (другими словами, БД) разными группами конечных пользователей. По-иному это называется независимостью данных системы.
Виды БД
Архитектура систем управления базами данных будет различной в зависимости от разновидности последних. На сегодня выделяется два вида БД:
- централизованный;
- распределенный.
С особенностями каждой из разновидностей мы предлагаем читателю ознакомиться далее.
Централизованные базы данных
Главное отличие этих БД: они хранятся в памяти одной вычислительной системы. Но если база, в свою очередь, будет компонентом сетей ЭВМ, то становится возможным распределенный доступ к базам данных. То есть БД будет открытой для пользователей электронно-вычислительных машин, подключенных к данной сети. Подобное использование характерно для локальных систем ЭВМ, создаваемых на базе организаций, компаний.
Распределенные базы данных
Что важно знать об архитектуре распределенных баз данных? Такие БД состоят из нескольких частей, хранящихся в различных ЭВМ одной сети. Возможно, информация тут будет дублироваться, пересекаться. Что удобно, пользователю распределенной базы данных не нужно знать, каким образом элементы хранилища информации размещены в узлах подобной сети. Чаще всего он воспринимает этот комплекс сведений как единое целое.
Как осуществляется работа с подобной БД? С помощью системы управления распределенными базами данных (СУРБД). Ее системный справочник будет описывать информацию, содержащуюся в хранилище данных, основы ее размещения в сети. В свою очередь, сам справочник может быть декомпозирован, размещен в различных узлах общей сети.
Составные части распределенной БД размещаются на отдельных подключенных к ней ЭВМ. Ими управляют уже собственные (локальные) СУБД электронно-вычислительных устройств. Что важно отметить, подобные локальные системы управления хранилищами информации необязательно должны быть одинаковыми в различных узлах общей сети. Однако объединение таковых различных локальных баз данных в единую систему - весьма сложная научно-техническая задача. Для ее успешного решения потребовался целый комплекс экспериментальных мероприятий, теоретических разработок.
Типы БД по способу доступа к ним
Архитектура базы данных также будет различаться по способу доступа к находящейся в хранилище информации:
- Доступ локальный.
- Доступ удаленный (сетевой).
Последний тип доступа предполагает разделение архитектуры подобных систем еще на две вариации:
- Тип "файл-сервер".
- Тип "клиент-сервер".
Снова предлагаем читателю разобраться с представленными разновидностями подробнее.
БД "файл-сервер"
Подобная архитектура комплексов баз данных предполагает выделение одного из устройств сети ЭВМ в качестве центрального. Оно будет считаться сервером файлов. На главной машине хранится совместно используемая централизованная база данных. Другие же устройства сети выступают рабочими станциями, которые поддерживают пользовательский доступ к основной БД.
В системе "файл-сервер" каждый пользователь имеет возможность запускать приложение, находящееся на главной машине. Притом на его устройстве будет открываться только копия данной программы.
По пользовательским запросам файлы центральной базы данных (находящейся на сервере) передаются на компьютеры - рабочие станции. Там и происходит обработка информации. У пользователей, работающих с общей БД, на компьютерах появляется локальная ее копия. Последняя периодически обновляется по мере наполнения основного хранилища на сервере свежей информацией.
Подобная архитектура систем БД более всего характерна для сетей, к которым подключено небольшое число пользователей. Для ее реализации типично использование персональных СУБД (к примеру, Paradox, DBase). Недостатком архитектуры является критически низкая производительность системы при одновременном доступе нескольких пользователей к одним и тем же данным.
БД "клиент-сервер"
Здесь также предполагается наличие машины в сети, которая будет являться главной. Однако архитектура базы данных "клиент-сервер" имеет и собственную особенность. Главный компьютер не только хранит централизованную БД, но и обеспечивает основную часть обработки требуемых пользователю данных.
Технология разделяет систему на две части: серверную и клиентскую. Последняя будет обеспечивать интерактивный сервис, а серверная - разделение информации, управление данными, безопасность и администрирование.
Что предполагает архитектура клиент-серверных баз данных? Клиентское приложение здесь оформляет и отправляет запрос удаленному компьютеру-серверу, где расположено централизованное хранилище информации. Он (запрос) составлен на специальном языке SQL - стандарте доступа к серверу при использовании реляционных БД.
После получения запроса удаленный сервер перенаправляет его SQL-серверу. Так называется программа, ответственная за управление удаленной базой данных. Она обеспечивает выполнение запроса, предоставляет клиенту требуемые результаты по нему.
Таким образом, вся обработка запросов здесь будет проходить на удаленном сервере. Чтобы реализовать подобную архитектуру, необходимо задействовать многоуровневые СУБД. Второе их название - промышленные. Такие СУБД способны организовать масштабную инфосистему, состоящую из большого числа пользователей.
Три уровня архитектуры БД
Архитектура баз данных подразделяется на три основных уровня - три степени описания элементов БД:
- Внешний. На данном уровне информация воспринимается пользователями.
- Внутренний. На этом уровне информация воспринимается операционными системами, СУБД (системами управления базами данных).
- Концептуальный. Здесь осуществляется отображение внешнего уровня архитектуры системы баз данных на внутренний, обеспечение необходимой их независимости друг от друга.
Предлагаем читателю более подробно познакомиться с каждой из вышепредставленных степеней.
Внешний уровень
Внешний уровень архитектуры систем баз данных - это предоставление информации с позиции людей-пользователей.
Что из этого следует? Уровень описывает пользовательскую часть баз данных (относящихся к каждому пользователю). В свою очередь, она будет состоять из нескольких внешних представлений хранилищ информации, БД.
Что удобно, каждый пользователь здесь имеет дело с таким образом "реального мира", который более всего адаптирован под него. Внешнее представление будет содержать в себе только те сущности, связи и атрибуты, что интересны и полезны конкретному "юзеру".
Не стоит полагать, что ненужные для пользователя атрибуты, сущности и связи не существуют в базе данных. Они есть, но "юзер" чаще всего не подозревает об их существовании.
Если обратиться к терминологии ANSI/SPARC (Американского национального института стандартов), то представление каждого отдельного пользователя здесь будет называться внешним. В него будет входить содержимое БД - такое, каким его видит конкретный "юзер". Каждое такое внешнее представление определяется посредством внешней системы. Она же состоит из определения записи каждого типа, присутствующего во внешнем представлении.
Концептуальный уровень
Продолжаем разбирать архитектуру сервера, баз данных. Следующий ее уровень - концептуальный. Он включает в себя обобщающее представление о хранилище информации. Будет описывать, какие именно сведения хранятся в базе данных, а также каковы связи, их объединяющие.
С точки зрения администратора, хранилище содержит в себе логическую структуру БД. Данный уровень архитектуры базы данных - это фактически полное представление требований информации со стороны компании, предприятия, которое не будет зависеть от любых соображений относительно способа, методики ее (информации) хранения.
Элементы концептуального уровня
Перечислим компоненты, представленных на концептуальном уровне архитектуры:
- Совокупность сущностей, их атрибутов, связей между ними.
- Ограничения, что могут быть наложены на данные.
- Семантическая информация о сведениях в БД (связанная с их смыслом и значением).
- Информация по мерам обеспечения безопасности хранения данных, общей поддержки их целостности.
Концептуальный уровень призван поддерживать каждое из внешних представлений. Любая доступная пользователю информация из БД должна содержаться (или может быть вычислена) именно на данном уровне. Однако следует помнить, что информация о методах хранения данных в системе здесь не хранится.
Внутренний уровень
И последняя ступень трехуровневой архитектуры базы данных. Тут находится физическое представление в компьютере БД. Что это значит? Уровень предназначен для описания физической реализации базы данных. Кроме того, с его помощью достигается оптимальная производительность, обеспечивается экономное использование дискового пространства компьютерной системы.
Содержит в себе описание структур данных, организации конкретных файлов, которые используются для реализации хранения информации на дисковых пространствах, запоминающих устройствах. Здесь, на внутреннем уровне, СУБД взаимодействует с методами, способами доступа операционных систем, вспомогательным функционалом хранения и извлечения записей сведений. Цель всего перечисленного: размещать информацию на запоминающих устройствах, извлекать данные, создавать индексы и проч.
Ниже данного будет находиться физический уровень. Его контролирует уже операционная система, однако все же под контролем СУБД.
Элементы внутреннего уровня
Внутренний уровень архитектуры приложения, базы данных хранит в себе следующую информацию:
- О распределении дискового пространства для сохранения индексов и сведений.
- Подробное описание сохранения записи (где указываются реальные объемы сохраняемых данных).
- Информация о размещении записей.
- Сведения о сжатии данных, избранных методик их шифрования.
Вы познакомились с распространенными типами, видами архитектур систем баз данных. Также мы представили уровни архитектуры СУБД - внешний, внутренний и концептуальный, их характеристики и элементы.