
- •1. Модели взаимодействия компонентов рис
- •2. Обмен сообщениями
- •3. Удаленный вызов процедур
- •3.1. Вызов распределенных процедур.
- •4. Механизм работы rpc
- •5. Обращение к удаленным объектам (rmi)
- •6. Связь на основе потоков данных
- •7. Архитектура распределённых приложений
- •7.1. Принципы создания системы обработки информации в масштабе предприятия
- •7.2. Парадигма распределенных вычислений
- •8. Архитектура распределенных приложений
- •9. Физическая структура распределенных приложений
- •10. Распределение бизнес-логики по уровням распределенного приложения
- •11. Уровень представления данных
- •12. Уровень обработки данных
- •13. Уровень управления данными
- •14. Уровень хранения данных
- •15. Расширения базовых уровней
14. Уровень хранения данных
Уровень хранения данных объединяет серверы SQL и базы данных, используемые приложением.
Он обеспечивает решение следующих задач:
хранение данных в БД и поддержание их в работоспособном состоянии;
обработка запросов уровня обработки данных и возврат результатов;
реализация части бизнес-логики распределенного приложения;
управление распределенными базами данных при помощи административного инструментария серверов БД.
Помимо очевидных функций - хранения данных и обработки запросов, уровень может содержать часть бизнес-логики приложения в хранимых процедурах, триггерах, ограничениях и т. д.
Да и сама структура базы данных приложения (таблицы и их поля, индексы, внешние ключи и пр.) есть реализация структуры данных, с которыми работает распределенное приложение, и реализация некоторых правил бизнес-логики.
Например, использование в таблице БД внешнего ключа требует создания соответствующего ограничения на манипуляции с данными, так как записи главной таблицы не могут быть удалены при наличии соответствующих записей, связанных по внешнему ключу таблицы.
Большинство серверов БД поддерживают разнообразные процедуры администрирования, в том числе и управление распределенными базами данных.
К ним можно отнести:
репликацию данных,
удаленное данных,
архивирование данных,
средства доступа к удаленным базам данных и др.
Возможность использования этих инструментов следует учитывать при разработке структуры собственного распределенного приложения.
Подключение к базам данных серверов SQL осуществляется в основном при помощи клиентского ПО серверов.
Помимо этого дополнительно могут использоваться различные технологии доступа к данным, например ADO (ActiveX Data Objects) или ADO.NET. Но при проектировании системы необходимо учитывать, что функционально промежуточные технологии доступа к данным не относятся к уровню хранения данных.
15. Расширения базовых уровней
Рассмотренные выше уровни архитектуры распределенного приложения являются базовыми.
Они формируют структуру создаваемого приложения в целом, но при этом, естественно, не могут обеспечить реализацию любого приложения - предметные области и задачи слишком обширны и многообразны.
Для таких случаев архитектура распределенного приложения может быть расширена за счет дополнительных уровней, которые призваны отобразить особенности создаваемого приложения.
Среди прочих можно выделить два наиболее часто применяемых расширения базовых уровней:
1. Уровень бизнес-интерфейса располагается между уровнем пользовательского интерфейса и уровнем обработки данных.
Уровень бизнес-интерфейса скрывает от клиентских приложений детали структуры и реализации бизнес-правил уровня обработки данных, обеспечивая абстрагирование программного кода клиентских приложений от особенностей реализации логики приложения.
В результате разработчики клиентских приложений используют некий набор необходимых функций - аналог интерфейса прикладного программирования (API). Это позволяет сделать клиентское ПО независимым от реализации уровня обработки данных.
Безусловно, при внесении серьезных изменений в систему без глобальных переделок не обойтись, но уровень бизнес-интерфейса позволяет не делать этого без крайней необходимости.
Уровень доступа к данным располагается между уровнем хранения данных и уровнем обработки данных.
Он позволяет сделать структуру приложения не зависящей от конкретной технологии хранения данных. В таких случаях программные объекты уровня обработки данных передают запросы и получают ответы при помощи средств выбранной технологии доступа к данным.
При реализации приложений на платформе Windows чаще всего используется технология доступа к данным ADO, так как она обеспечивает универсальный способ доступа к самым разнообразным источникам данных - от серверов SQL до электронных таблиц.
Для приложений на платформе .NET служит технология ADO.NET.