
- •Эволюция архитектуры «клиент-сервер»
- •Определение и назначение промежуточного по
- •Функции middleware
- •Виды промежуточного по
- •Промежуточное по межпрограммного взаимодействия
- •Вызов удаленных процедур
- •Сервисы обработки сообщений
- •Мониторы обработки транзакций (tp-Monitors)
- •Распределенные объектные системы
- •Промежуточное по доступа к базам данных
- •Собственное по промежуточного слоя
- •Основное промежуточное по доступа к бд
- •Middleware: Что выбрать?
- •Контрольные вопросы
Собственное по промежуточного слоя
К этому виду относится, в первую очередь, поддержка стандартов языка SQL. Несмотря на то, что SQL является международным стандартом, разработчики СУБД самостоятельно определяют, какие из возможностей SQL они будут поддерживать в своих системах. В результате, конкретная СУБД может, с одной стороны, не поддерживать или поддерживать частично некоторые команды SQL, а с другой — представлять разработчикам приложений нестандартные языковые расширения.
Другим видом собственного middleware являются встроенные средства СУБД, позволяющие выполнять импорт данных из внешних источников (например, из других СУБД или текстовых файлов) и экспортировать данные в сторонние форматы (например, CSV или XML).
Основное промежуточное по доступа к бд
Рис. 6. Доступ к БД через ODBC
Рис. 7. Интерфейс ODBC (Open DataBase Connectivity)
Рис. 8. Принцип доступа к БД в EDA
Рис. 9. Брокер распределенных запросов (DQB)
К этой категории относятся внешние (по отношению к СУБД) средства промежуточного слоя, специально разработанные для обращения к базам данных. Сюда относятся как технологические решения (например, ODBC и JDBC), так и концептуальные, представляющие обобщенную архитектуру информационной системы с распределенными БД (например, EDA или DQB).
ODBC (Open DataBase Connectivity, открытое соединение с БД) — это интерфейс доступа к базам данных, разработанный Microsoft. ODBC представляет возможность обращения к реляционным и нереляционным СУБД в гетерогенной среде через унифицированные вызовы API (рис. 6). Обращения к функциям ODBC транслируются в естественные диалекты многих СУБД с помощью специальных ODBC-драйверов либо напрямую, либо через указание имени источника данных (рис. 7).
JDBC (Java DataBase Connectivity) — это прикладной программный интерфейс для обращения к базам данных из Java-приложений. Средства JDBC являются платформонезависимыми и выполняются в любой среде под управлением виртуальной машины Java. По сравнению с ODBC этот тип промежуточного ПО баз данных предлагает больше возможностей по интеграции приложений и расширяет сферу использования БД (например, в сторону мобильных приложений). Больше того, спецификация JDBC предусматривает возможность доступа Java-приложений к БД через ODBC с помощью специального средства, т.н. «моста» (ODBC/JDBC-bridge).
EDA (Event-Driven Architecture, событийно-управляемая архитектура) — это концепция управления корпоративной информационной системой на основе событий, возникающих в бизнес-процессе. Доступ к БД в EDA базируется на использовании централизованного способа обращения к распределенным базам данных. Все запросы клиентов поступают на вход SQL-шлюза, который транслирует SQL-запросы в унифицированный формат и перенаправляет их к серверам БД. Взаимодействие с ними возможно как через набор общих API, так и через ODBC-интерфейс (рис. 8). Использование SQL-шлюза обеспечивает доступ к данным в разнородных многозвенных системах, где множество приложений параллельно обращаются к источникам данных различного формата.
DQB (Distributed Query Broker, брокер распределенных запросов) — децентрализованное (в отличие от EDA) решение для доступа к БД на основе ORB. Заглушки-брокеры, размещенные на серверах БД, принимают унифицированные SQL-запросы и транслируют их в диалекты конкретных СУБД (рис. 9).