common warehouse metamodel meta data : data describing data
DESCRIPTION
TRANSCRIPT
![Page 1: Common Warehouse Metamodel Meta data : data describing data](https://reader036.vdocuments.site/reader036/viewer/2022062511/54c6a9a94a7959b14b8b4584/html5/thumbnails/1.jpg)
Common Warehouse Metamodel
![Page 2: Common Warehouse Metamodel Meta data : data describing data](https://reader036.vdocuments.site/reader036/viewer/2022062511/54c6a9a94a7959b14b8b4584/html5/thumbnails/2.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022062511/54c6a9a94a7959b14b8b4584/html5/thumbnails/3.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022062511/54c6a9a94a7959b14b8b4584/html5/thumbnails/4.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022062511/54c6a9a94a7959b14b8b4584/html5/thumbnails/5.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022062511/54c6a9a94a7959b14b8b4584/html5/thumbnails/6.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022062511/54c6a9a94a7959b14b8b4584/html5/thumbnails/7.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022062511/54c6a9a94a7959b14b8b4584/html5/thumbnails/8.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022062511/54c6a9a94a7959b14b8b4584/html5/thumbnails/9.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022062511/54c6a9a94a7959b14b8b4584/html5/thumbnails/10.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022062511/54c6a9a94a7959b14b8b4584/html5/thumbnails/11.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022062511/54c6a9a94a7959b14b8b4584/html5/thumbnails/12.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022062511/54c6a9a94a7959b14b8b4584/html5/thumbnails/13.jpg)
![Page 14: Common Warehouse Metamodel Meta data : data describing data](https://reader036.vdocuments.site/reader036/viewer/2022062511/54c6a9a94a7959b14b8b4584/html5/thumbnails/14.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022062511/54c6a9a94a7959b14b8b4584/html5/thumbnails/15.jpg)
![Page 16: Common Warehouse Metamodel Meta data : data describing data](https://reader036.vdocuments.site/reader036/viewer/2022062511/54c6a9a94a7959b14b8b4584/html5/thumbnails/16.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022062511/54c6a9a94a7959b14b8b4584/html5/thumbnails/17.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022062511/54c6a9a94a7959b14b8b4584/html5/thumbnails/18.jpg)
![Page 19: Common Warehouse Metamodel Meta data : data describing data](https://reader036.vdocuments.site/reader036/viewer/2022062511/54c6a9a94a7959b14b8b4584/html5/thumbnails/19.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022062511/54c6a9a94a7959b14b8b4584/html5/thumbnails/20.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022062511/54c6a9a94a7959b14b8b4584/html5/thumbnails/21.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022062511/54c6a9a94a7959b14b8b4584/html5/thumbnails/22.jpg)
• 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](https://reader036.vdocuments.site/reader036/viewer/2022062511/54c6a9a94a7959b14b8b4584/html5/thumbnails/23.jpg)
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](https://reader036.vdocuments.site/reader036/viewer/2022062511/54c6a9a94a7959b14b8b4584/html5/thumbnails/24.jpg)
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