Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Архитектура систем баз данных




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

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

К числу функциональных компонент СУБД относятся:

§ управление средой хранения данных;

§ методы доступа к данным;

§ поддержка уровней представления данных (концептуального, внутреннего и внешнего);

§ механизмы управления транзакциями;

§ поддержка функций администратора системы;

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

§ интерфейсы прикладного программирования.

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

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

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

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

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

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

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

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

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

Наиболее распространенным вариантом распределенной архитектуры еще с начала 90-х годов стала архитектура «клиент-сервер». При этом предусматривается выделение одного из функциональных компонентов системы, называемого сервером, для оказания определенных услуг по запросам других компонентов, называемых клиентами. Роли клиента и сервера в рассматриваемой архитектурной модели являются относительными, так как они ассоциируются с конкретным набором услуг. Функциональный компонент, являющийся клиентом относительно одного набора услуг, может быть вместе с тем сервером, оказывающим другие услуги.

В системах баз данных, основанных на таком подходе, сервер поддерживает базу данных и обрабатывает запросы, поступающие со стороны клиентов. В свою очередь, клиентские узлы поддерживают пользовательские интерфейсы и функциональность приложений. Такая архитектура называется двухзвенной архитектурой «клиент-сервер».

Концепция «клиент-сервер» может также использоваться в среде сосредоточенной архитектуры.

Системы с двухзвенной архитектурой «клиент-сервер» обладают ограниченными возможностями масштабирования, и наращивание нагрузки на сервер базы данных выше некоторого порога приводит к резкому снижению производительности системы. К тому же, при двухзвенном подходе усложняется модификация приложений - изменения могут затрагивать целый ряд клиентских систем. В связи с этим в разработках крупных систем стала применяться "трехзвенная архитектура «клиент-сервер»" (клиенты, сервер приложения и сервер базы данных). При такой архитектуре функциональность приложения поддерживается специальным сервером. Сервер базы данных и сервер приложения могут поддерживаться на различных платформах и при необходимости независимо масштабироваться, порождая тем самым многозвенную архитектуру «клиент-сервер».

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

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

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

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

Контрольные вопросы по теме.

1.Какие свойства системы базы данных характеризует ее информационная архитектура?

2.Какие свойства системы базы данных характеризует ее функциональная архитектура, какими средствами она воплощается?

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

4.Кратко охарактеризуйте основные принципы информационной архитектуры современной системы базы данных.

5.Охарактеризуйте свойства системы базы данных, которые определяются ее пространственной архитектурой.

6.В чем заключается главное свойство сосредоточенных систем базы данных?

7.Каковы особенности и цели создания распределенных систем баз данных?

8.Каковы основные принципы архитектуры «клиент-сервер»?

9.Чем различаются двухзвенная и трехзвенная архитектура «клиент-сервер»?




Поделиться с друзьями:


Дата добавления: 2014-10-17; Просмотров: 2596; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.016 сек.