Информационные хранилища.

Предметно-ориентированные ИС.

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

Источники могут использовать различные модели данных и предоставлять различные интерфейсы для доступа к своим данным (реляционные, объектные или унаследованные СУБД) или данные источника могут быть не структурированными (HTML файлы, текстовые файлы и т.д.). Источники атомарные — взаимодействовать с источником можно только через предоставляемый им интерфейс и нет никакой возможности повлиять на его внутренние процессы.

Наибольшую популярность приобрели два подхода к решению задачи интеграции данных — хранилища данных (Data Warehouse, DW) и виртуальные хранилища. При использовании первого подхода хранилище заполняется данными из различных источников и затем все запросы обрабатываются с использованием этих данных. Таким образом, актуальность данных не гарантируется, поскольку никакой синхронизации с источником не происходит, но преимущество заключается в том, что время выполнения запроса невелико. DW является ядром технологии комплексного использования сведений, находящихся в различных БД. Здесь процесс обработки данных физически разделяется на два этапа:

§ первый из них связан с обработкой транзакций в реальном времени (OLTP), в результате Чего в базах данных накапливается первичная информация о функционировании предприятия, например финансового банка;

§ на втором этапе осуществляется аналитическая обработка в реальном времени (OLAP), например анализ снятия наличности со счетов, объема оказываемых услуг, показатели эффективности работы служащих.

При создании хранилища выполняются преобразования, обеспечивающие работу баз данных различных типов и имеющих разные форматы документов. В свою очередь, информационное хранилище используется для составления нужных отчетов и выполнения прикладных процессов. Информационное хранилище обслуживает запросы, анализирует результаты их выполнения и формирует отчеты Хранилище также обеспечивает загрузку данных и периодическое удаление информации, утратившей актуальность (рис. 5.1).

Рис. 5.1. Структура хранилища данных

Хранилище характеризуется четырьмя важными особенностями:

§ объектно-ориентированной архитектурой, в которой данные организованы в соответствии с их содержанием, а не прикладными программами;

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

§ этапностью, определяющей, что информация собрана за определенный интервал времени;

§ защищенностью, запрещающей изменять либо обновлять данные, помещенные в хранилище.

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

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

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

Данная архитектура основана на распространенной концепции посредников (mediators). Рассмотрим два типа компонентов этой архитектуры:

1) обертка (wrapper) используется для хранения информации о внешнем источнике и организации к нему доступа. Происходит это следующим образом: при получении запроса обертка обращается к источнику через предоставляемый им интерфейс. Полученные от источника данные конвертируются во внутренний формат данных хранилища (т.е. в модель данных хранилища). Понятно, что для каждого источника необходима своя обертка.

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

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

Для хранилищ данных характерны следующие особенности:

1) неизменчивость данных (в хранилищах данных не поддерживаются операции обновления данных);

2) постоянный мониторинг и отбор (по критериям достоверности, оперативности и др.) источников данных;

3) реструктурированность получаемых и накапливаемых документированных данных;

4) формирование полного наименования и описания каждого элементарного сообщения при реструктуризации;

5) приведение к сопоставимому виду однородных данных, накапливаемых в информационном хранилище;

6) формирование полных наименований и описаний элементарных сообщений на основе согласованных информационной модели и модели данных среды хранения;

7) каталогизация всех поступивших данных в виде словаря-справочника данных (репозитория, базы метаданных);

8) возможность восстановления получаемых документов по метаданным;

9) использование эффективного аппарат формирования запросов.