Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Modelirovanie_sistem_uch_posobie_izdatelstvo.doc
Скачиваний:
100
Добавлен:
15.04.2019
Размер:
5.93 Mб
Скачать

5.3. Метамодель общих хранилищ данных (cwm)

В середине 1998 года корпорации IBM, Oracle, Unisys, Hyperion, SAS, Meta Integratiom и ряд других поставщиков программного обеспечения представили в консорциум Object Management Group (OMG) спецификацию стандарта "Обмен метаданными общих хранилищ данных" (Common Warehouse Metadata Interchange, CWMI).

CWMI определяет интерфейсы, которые могут быть использованы для обмена метаданными между хранилищами данных (ХД) и аналитическими приложениями с помощью инструментальных средств ХД, программно-аппаратных платформ и репозиториев метаданных в распределенных гетерогенных вычислительных средах.

CWMI основан на трех стандартах:

  • UML — Unified Modeling Language (стандарт OMG для моделирования объектно-ориентированных информационных систем);

  • MOF — Meta Object Facility (стандарт OMG для метамоделирования и репозиторииев метаданных);

  • XMI — XML Metadata Interchange (стандарт OMG обмена метаданными на базе расширенного языка разметки XML).

Стандарт UML определяет язык объектно-ориентированного моделирования, который поддерживает ряд графических нотаций. Стандарт MOF определяет гибкие средства для определения модели метаданных и обеспечивает программные средства для хранения и доступа к метаданным в репозиториях. Стандарт XMI определяет спецификации для обмена метаданными в формате стандарта XML.

Эти стандарты формируют ядро стандартизованной архитектуры общих средств управления информацией (IMCF) консорциума OMG (рис. 5.1.).

Использование этих стандартов не накладывает сильных ограничений при реализации модели метаданных в конкретных системах складирования данных.

На базе стандарта CWMI в начале февраля 2001 года, OMG опубликовала первую версию стандарта "Общая метамодель хранилищ данных" (Common Warehouse Metamodel, SWM) [9].

Рис. 5.1. Архитектура общих средств управления информацией (IMCF) со стандартизованным ядром RCF

Этот стандарт базируется на XML-технологиях и описывает обмен метаданными в информационных системах с распределёнными хранилищами данных (РХД), а также в системах бизнес-интеллекта (Business Intelligence) и системах управления знаниями (Knowledge Management).

Основными элементами CWM являются:

  • четырехуровневая архитектура метамоделирования при работе с метаданными в распределенных репозиториях;

  • использование нотаций UML для представления метамодели и моделей данных;

  • использование стандартных информационных моделей UML для описания семантики объектно-ориентированного анализа и проектирования моделей;

  • использование MOF для определения и работы с метамоделями с использованием интерфейсов CORBA (Common Object Request Broker Architecture);

  • использование XMI для организации обмена метаданными.

Как показано в таблице 5.1, четырехуровневая архитектура метамоделирования аналогична общепринятой архитектуре моделирования.

Таблица 5.1. Архитектура метамоделирования OMG

Мета уровень

Уровень моделирования

M3

Мета-метамодель/мета-мета-метаданные (Meta-Metamodel/Meta-meta-metadata). Например, MOF класс, атрибут, ассоциация

M2

Метамодель/мета-метаданные (Metamodel/Meta-metadata). Например, UML класс, атрибут таблицы CWM, колонка

M1

Модель/метаданные (Model/Metadata). Например, Покупатель: Тип_таблицы_покупатель: Колонка

M0

Данные/объект (Data/Object). "ООО" ("Флинт")

Стандарт расширяет базовую метамодель метамоделями для реляционных и многомерных данных, для преобразования функций оперативной аналитической обработки (On-Line Analytical Processing, OLAP) и ХД, включая процессы и операции. Спецификацию CWM можно рассматривать как язык, предназначенный для определения моделей ХД. Спецификация CWM расширяет язык UML: каждый метакласс (metaclass) CWM наследуется непосредственно или косвенно из метаклассов UML. Так, метакласс "Реляционная Таблица" (Relational Table) CWM является непосредственным наследником класса UML (UML Class), а "Реляционный Столбец" (Relational Column) CWM ‑ прямой потомок атрибута UML (UML Attribute).

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

Стандарт OMG "Средства метаобъекта" (Meta Object Facility, MOF) определяет общие интерфейсы и семантику для взаимодействующих метамоделей. Являясь подмножеством UML, он представляет собой пример мета-метамодели, или модели метамодели. В сферу действия этого стандарта входит определение языка описания интерфейса (Interface Definition Language, IDL), который устанавливает правила управления моделями с помощью программных (API) интерфейсов. Все модели CWM выражаются на UML и реализуют семантику MOF.

MOF имеет замкнутую («строгую») 4-х уровневую архитектуру, показанную на рис. 5.2. Каждый модельный элемент каждого уровня строго соответствует элементу модели верхнего уровня. MOF обеспечивает только средства для определения структуры или абстрактный сиснтаксис языка или данных. Таким образом, MOF является предметно-ориентированным языком (Domain Specific Language, DSL), используемым для определения мета-моделей.

Рис. 5.2. Архитектура MOF

На самом верхнем уровне мета-мета моделей (М3) представлена модель самой MOF (MOF-Model). М3-модель – это язык, используемый для построения мета-моделей уровня М2. На рис. 5.2 показаны два наиболее известных примера М2-моделей ‑ мета-модель языка UML, которая описывает сам язык UML, и мета-модель, описывающая язык определения интерфейсов IDL (Interface Definition Language).

Мета-модели уровня М2 описывают модели уровня М1, т.е. модели (диаграммы) языка UML и интерфейсы языка IDL.

Последний уровень М0 – уровень данных, который описывает реальные объекты, моделируемые в объектно-ориентированных программах.

Уровень мета-мета-моделей М3 описывает саму MOF (является моделью MOF), так что в этой архитектуре определена модель и самой MOF (на уровне M3).

MOF использует свою нотацию классов MOF::Classes (не путать с нотацией классов UML ‑ UML::Classes), для определения так называемых концептов (concepts) или элементов моделей на мета-уровнях архитектуры MOF.

MOF можно использовать для определения как объектно-ориентированных мете-моделей (например, UML). Так и не объектно-ориентированных мете-моделей (таких как мета-модели сетей Петри или Web-сервисов).

В 2006 г. OMG определил три варианта MOF:

  • EMOF (Essential MOF) – сущностный MOF

  • CMOF (Complete MOF) – полный MOF

  • SMOF (Semantic MOF) – семантический MOF

Существует также вариант сообщества Eclipse Ecore, который определён в среде моделирования Eclipse (Eclipse Modeling Framework), боле или менее похожий EMOF от OMG.

В 2005 г. появился международный стандарт MOF ‑ ISO/IEC 19502:2005 Information technology -- Meta Object Facility (MOF)

MOF, таким образом, можно рассматривать как стандарт для записи мета-моделей, например, для того, чтобы моделировать абстрактный синтаксис предметно-ориентированных языков (DSL).

В 2005 г. был разработан язык моделирования и программирования для самого мета-моделирования ‑ Kermeta. Он является расширением MOF, позволяющим присоединять к мета-моделям EMOF исполняемые действия (executable actions), что позволяет также моделировать операционную семантику DSL-языков и разрабатывать соответствующие интерпретаторы.

Стандарт OMG «XML-обмен метаданными» (XML Metadata Interchange, XMI) устанавливает правила преобразования метамоделей MOF в XML. XMI задействован непосредственно в обмене метамоделями. Метамодели MOF транслируются в XML DTD12, а модели — в XML-документы, которые согласуются со своими DTD.

Таким образом, стандарт CWM состоит из ряда составных метамоделей (суб-метамоделей), которые организованы в виде следующих 4 слоев: базовый слой (Foundation), источники данных (Resources), анализ (Analysis) и управление хранилищем (Management), как показано на рис. 5.3.

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

Слой источников данных предоставляет возможность моделировать существующие и новые источники данных, в том числе реляционные базы данных, ориентированные на запись базы данных (record oriented data-bases), а также XML и основанные на объектах (object-based) источники данных.

Рис. 5.3. Четыре уровня модели CWM

Слой анализа предоставляет средства для моделирования сервисов информационного анализа, которые обычно используются в хранилище данных. Он определяет метамодель для преобразования данных, OLAP, визуализации информации и исследования данных (data mining).

Слой управления состоит из метамоделей, представляющих стандартные процессы и операции ХД, журнализации и планирования работ (например, ежедневной загрузки и выгрузки).

Набор метамоделей CWM является достаточным для моделирования всего ХД.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]