Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по БД на транспорте ТИМ.doc
Скачиваний:
19
Добавлен:
25.12.2018
Размер:
2.63 Mб
Скачать
      1. Взаимодействие компонентов

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

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

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

Взаимодействие компонентов клиентского и среднего слоя обеспечивается посредством COM+ (Distributed Component object model), т. е. распределенной модели компонентных объектов. COM является моделью программирования на основе объектов, упрощающей взаимодействие различных приложений, а COM+ – это, своего рода, «клей», связывающий воедино разнообразные технологии, применяемые в распределенных приложениях. COM+ дает возможность нескольким компонентам легко взаимодействовать друг с другом независимо от того, на каком языке программирования они написаны, а также где именно они находятся и под какой операционной системой работают.

Рис. 2.17. Схема взаимодействия компонентов

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

Взаимодействие между компонентами среднего слоя и сервером баз данных происходит на уровне запросов и ответов, т. е. возврата данных по запросам. Вся логика выполнения запроса лежит на компонентах сервера баз данных.

Развитие информационных технологий поддержки иерархических клиент-серверных систем позволило заменить использование платформы проектирования на основе COM-технологии технологией более высокого уровня - .Net, а вместо COM+ - . Net Remoting и WebService.

    1. Геоинформационные субд

Вследствие интенсивного развития геоинформационных систем и систем дистанционного зондирования Земли из космоса значительно увеличился объем доступных геопространственных данных, как векторных, так и растровых. Цифровая карта в терминах объектно-ориентированного подхода принимает особый вид, становясь более интеллектуальной, способной видоизменяться в зависимости от масштаба и назначения: топографическая, тематическая и др. Это позволяют эффективно использовать СУБД в ГИС-технологиях и в цифровой картографии [Михеева Т.И., Демьяненко Р.В., Чугунов И.А. Архитектура ГИС «Организация дорожного].

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

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

  • Система автоматизированного картирования и распознавания объектов, предназначенная для обработки пространственной и графической информации, данных аэрофотоснимков, космического зондирования.

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

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

Рассмотрим методы и средства реализации распределенной ГИС на примере геоинформационной системы ARCView GIS.

Наборы данных в ГИС могут храниться как локально, так и удаленно, в частности, распределенными наборами данных. Методы доступа к локальным и распределенным данным существенно отличаются. ГИС ARCView GIS обеспечивает ряд интерфейсных механизмов, с помощью которых организуется доступ как к локальным, так и к удаленным источникам данных.

На рис. 2.18 схематически изображены имеющиеся в ARCView механизмы доступа к локально хранимым данным. В основе реализации интерфейса лежат классы объектов Vtab, FTheme, ITheme, DBTheme, GTheme. Vtab - «виртуальная таблица» - обеспечивает доступ к атрибутивной информации пространственных объектов. В качестве источника данных могут использоваться INFO-файлы, файлы DBF, текст с разделителями и другие табличные форматы. Объекты FTheme, ITheme, DBTheme, GTheme обеспечивают доступ к пространственной информации - слоям изображения. Источниками данных для этих классов служит пространственная информация во внутренних форматах ARCView, растровые изображения, информация, хранимая в базах данных, и грид-файлы, соответственно. ARCView поддерживает динамический обмен данными с локальными приложениями посредством механизма DDE.

Рис. 2.18. Средства доступа к локально хранимым данным

Для хранения локальных данных ГИС имеет встроенный интерфейс, обеспечивающий доступ к информации, хранимой в формате данной ГИС. Некоторые ГИС имеют интерфейсы доступа к данным, представленным в других, не «родных» форматах. Например, ARCView ГИС, кроме «собственных» данных, поддерживает такие типы данных, как растровые изображения, базы данных различных форматов и др. Эта возможность реализуется в ARCView посредством поддержки соответствующих классов объектов.

Доступ к распределенным данным представлен на рис. 2.19. В ARCView для этой технологии использованы два механизма.

Во-первых, входящий в комплект стандартной поставки данной ГИС, объектно-ориентированный язык программирования Avenue поддерживает обращения к базам данных SQL посредством объектного класса SQLCon и системного интерфейса ODBC. Это дает возможность обращаться через SQL-запросы к удаленным и распределенным базам данных, производить выборку и обработку хранящихся в них данных.

Во-вторых, технология SDE (Spatial Database Engine) предоставляет разнообразные возможности оперирования географическими данными, проведения их многостороннего пространственного анализа, рассылки данных и результатов анализа по сети, введения функций запроса и анализа в любые приложения. При этом SDE является объектно-ориентированной системой, работающей со многими коммерческими реляционными СУБД. Доступ к данным, управляемым SDE-сервером из ARCView GIS, осуществляется использованием объектного класса DBTheme, экземпляры которого отображаются на слои пространственных данных SDE (рис. 2.19).

Рис. 2.19. Средства доступа к распределенным данным

Рис. 2.20 иллюстрирует основные механизмы обработки данных, поддерживаемые ГИС ARCView. Основным средством обработки информации средствами ARCView являются приложения объектно-ориентиро­ванного языка Avenue. Кроме собственного программного кода приложения Avenue могут использовать для обработки данных дополнительные механизмы.

  • При удаленном вызове процедур ARCView выступает в роли RPC-клиента, запрашивающего выполнение отдельных функций у RPC-серверов (например, на базе ARC/INFO), и в роли сервера, обслуживающего запросы клиентов на выполнение функций обработки данных.

  • Функции обработки, реализованные во внешних динамически загружаемых библиотеках (DLL), используются языком Avenue.

  • Через механизм DDE язык Avenue может использовать для обработки данные других локальных приложений.

Рис. 2.20. Средства распределенной обработки данных