Top Banner
Common Warehouse Metamodel
24

Common Warehouse Metamodel Meta data : data describing data

Jan 27, 2015

Download

Documents

Timothy212

 
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Common Warehouse Metamodel Meta data : data describing data

Common Warehouse Metamodel

Page 2: Common Warehouse Metamodel Meta data : data describing data

Meta data : data describing dataMata data is critical to achieving integration between dissimilarsoftware systems and products from multiple vendors.

Product/component

Product/ component

metadata metadata

Data warehousing & business analysis domain’s component

Posses rich meta data

Page 3: Common Warehouse Metamodel Meta data : data describing data

Why meta dataA given software product(eg Relational database system can perform operations on data effectively only if it has a precise definition of that data available.

Internal meta model

Several software products can be integrated effectively onlyif they have a common understanding of their data

External meta model

Most products have differing or incompatible internal meta modelsand interfaces exposing their meta data

Page 4: Common Warehouse Metamodel Meta data : data describing data

Relational ware house

OLAP ware house

metadata

metadata

interchange

Data ware housing/business analysis domain’s

Page 5: Common Warehouse Metamodel Meta data : data describing data

However it is nearly impossible for commercial software products & Systems to share meta data.

WhyMost products coming from different vendors have dissimilar meta dataModels(or meta models) and interfaces exposing their meta data.

So what do we need Bridges between dissimilar meta models.

A CB products

Meta data

Bridges

Page 6: Common Warehouse Metamodel Meta data : data describing data

Bridges: not good enoughWhyTime consumingCostlyNot reused in other integration efforts

What are we expecting thenA single, low cost, meta data integration architecture.

It is simply not possible to have a single metadata repository that implements a single meta model for all the metadata.

Instead, what is needed is a standard for interchange of warehouse metadata.

Page 7: Common Warehouse Metamodel Meta data : data describing data

A CB products

meta data

CWMMetamodel

(shared meta data)

CWM meta data interchange(based on XML or api calls)

Page 8: Common Warehouse Metamodel Meta data : data describing data

Cs630 Dr.Hawker EE112

Cs601 Dr.Borie EE111

Course table and its values

courseID Instructor Room no

Course

CorseIDDataType="varchar"

Instructor

RoomNo DataType=string

Data Type=String

isActive=True

0..n

table column

0..n1

Column

name : StringdataType : String

Table

name : StringisActive : Boolean

Course Table instance

Relational table model

Page 9: Common Warehouse Metamodel Meta data : data describing data

UML (PIM)

SQL DDL (PSM)CRATE TABLE Course(

ID VARCHAR NOT NULL,

Instructor CHAR

Roomno CHAR );

Export Mapping : process that translates its internal meta data into a platform independent model

Import Mapping : process ro transilate model into an instance of its own, product specific data

Note: If we consider an other relational table modle such as DEPARTMENTS , any software that understands the common metamodel defining relational tables in general can understand both COURSE and DEPARTMENT table models, both of which are instances of the same metamodel.

maps

Page 10: Common Warehouse Metamodel Meta data : data describing data

CWM components1. A formal language capable of specifying meta data in terms of shared, platform-independent models.2. A common metamodel defining the problem domain.3. A common interchange format for interchanging shared meta data4. A common programming interface for meta data access5. Standard mechanism for extending the metamodels.6. Software adapters facilitating products meta data import & export

CWM is targeted at six categories of users:• Warehouse platform and tool vendors• Professional service providers• Warehouse developers• Warehouse administrators• End users• Information technology managers

Page 11: Common Warehouse Metamodel Meta data : data describing data

CWM• A primary objective of the CWM is to define a metamodel of a generic data warehouse architecture.• CWM metamodel defines formal rules for modeling instances of data warehouses.• CWM metamodel should be expressed in MOF (and thus enabled for interchange via either CORBA interfaces or XMI).

The main purpose of CWM is to enable easy interchange of warehouse and business intelligence metadata between warehouse tools, warehouse platforms and warehouse metadata repositories in distributed heterogeneous environments. CWM is based on three key industry standards:• UML - Unified Modeling Language, an OMG modeling standard• MOF - Meta Object Facility, an OMG metamodeling and metadata repository standard• XMI - XML Metadata Interchange, an OMG metadata interchange standard

Page 12: Common Warehouse Metamodel Meta data : data describing data

UMLCWM is expressed in UMLCWM extends subset of UML language to include data warehousingand business analysis domain concepts through extension mechanism.The UML notation is used in the diagrammatic representations of the CWM metamodel.

The CWM metamodel includes an Object Model package which is based on the UMLmetamodel.

Any metaclass within CWM ultimately inherits from some metaclassof the Object Model.Ex. CWM Relational PackageRelational metamodel defines a metaclass called "Table" that represents any Relational database table. This metaclass derives from the Object Model metaclass "Class". Similarly, the Relational metaclass "Column" derives from the Object Model "Attribute".

Page 13: Common Warehouse Metamodel Meta data : data describing data
Page 14: Common Warehouse Metamodel Meta data : data describing data

MOF

MOF specification consists ofMOF model : Defines the modeling elements, including the rules for their use, which can be used to construct meta modelsMOF reflective interfaces . Allows a program to create, update, access, navigate, and invoke operations on meta data .MOF to IDL mapping. Defines the standard mapping from a meta model defined using the MOF model onto CORBA IDL, thus allowing the automatic generation of metamodel specific interfaces for accessing and manipulating meta data (M1 level )

MOF enables dissimilar metamodels representing different domainTo be used in an interoperable manner.

CWM IDL

Java/c++

MOF compliant metamodel, CWM Maps using MOF specification

IDL compilar

Page 15: Common Warehouse Metamodel Meta data : data describing data
Page 16: Common Warehouse Metamodel Meta data : data describing data

XMIThis specifications allow data warehouse metadata based on CWMmetamodel to be interchanged using W3C’s Extensible Markup Language (XML).

XMI is used• to transform the CWM metamodel into a CWM Document Type Definition (DTD),• to transfer instances of warehouse metadata that conform to the CWM metamodel as XML documents, based on the CWM DTD, and• to transform the CWM metamodel itself into an XML document, based on the MOF DTD, for interchange between MOF-compliant repositories.

--XMI allows MOF meta data, that is meta data that conforms to MOF based metamodel, to be interchanged as streams or files with a Standard format based on XML.

--XML defines how XML tags are to be used to store CWM metamodel instances in XML document

Page 17: Common Warehouse Metamodel Meta data : data describing data

XMI

XML MOF

UML DTDCWM DTDMOF DTD

UML ModelsCWM metadataMOF meta models

XML DTD XML documents

validate

DTD<!element course(Courseid,InstructorRoomno)>

XML<course><courseid>cs630 </courseid><instructor>Dr. Hawker</instructor><Roomno> ee111 </Roomno></course>

Page 18: Common Warehouse Metamodel Meta data : data describing data
Page 19: Common Warehouse Metamodel Meta data : data describing data

The model elements are contained in the following packages:ObjectModel package

• Core packageContains classes and associations that form the core of the CWM object

model, which are used by all other CWM packages including other ObjectModel packages.

• Behavioral packageContains classes and associations that describe the behavior of CWM

objects and provide a foundation for describing the invocations of defined behaviors.

• Relationships packageContains classes and associations that describe the relationships between

CWM object.

• Instance packageContains classes and associations that represents instances of CWM

classifiers.

Page 20: Common Warehouse Metamodel Meta data : data describing data

Foundation package• Business Information packageContains classes and associations that represent business information about model

elements.

• Data Types packageContains classes and associations that represent constructs that modelers can use

to create the specific data types they need.

• Expressions packageContains classes and associations that represent expression trees.

• Keys and Indexes packageContains classes and associations that represent keys and indexes.

• Software Deployment packageContains classes and associations that represent how software is deployed in a

data warehouse.

• Type Mapping packageContains classes and associations that represent mapping of data types between

different systems.

Page 21: Common Warehouse Metamodel Meta data : data describing data

Resource package• Relational packageContains classes and associations that represent metadata of relational

data resources.• Record packageContains classes and associations that represent metadata of record data

resources.• Multidimensional packageContains classes and associations that represent metadata of

multidimensional data resources.• XML packageContains classes and associations that represent metadata of XML data

resources.Analysis package• Transformation packageContains classes and associations that represent metadata of data

transformation tools.

Page 22: Common Warehouse Metamodel Meta data : data describing data

• OLAP packageContains classes and associations that represent metadata of on-line

analytical processing tools.• Data Mining packageContains classes and associations that represent metadata of data mining

tools.• Information Visualization packageContains classes and associations that representing metadata of

information visualization tools.• Business Nomenclature packageContains classes and associations that represent metadata on business

taxonomy and glossary. Management package• Warehouse Process packageContains classes and associations that represent metadata of warehouse

processes.• Warehouse Operation packageContains classes and associations that represent metadata of results of

warehouse operations.

Page 23: Common Warehouse Metamodel Meta data : data describing data

core relationships

0..n

table column

0..n1

Column

name : StringdataType : String

Table

name : StringisActive : Boolean

Page 24: Common Warehouse Metamodel Meta data : data describing data

MOFModel

XMI

UMLMetaModel

CWMData

Mining

JMI

JDMAPI

Mapping to XML Mapping to java

instance of

instance of

instance of extends

Relationships between OMG MDA and J2EE

Mapping to java