Slides (powerpoint)

Download Report

Transcript Slides (powerpoint)

CSE 590DB: Database Seminar
Autumn 2002: Meta Data
Management
Phil Bernstein
Microsoft Research
Course Administration

Course credit



I’m giving today’s lecture


So I get 2 credits
Next week, we have a visitor


1 credit for reading the papers and showing up
2 credits for leading a discussion
Wang-Chiew Tan
Send me mail to sign up for later weeks
What’s Meta Data?

DB defns, form defns, documents, interface defns,
source code, help text, executables, icons, makefiles, ...
Spec
Forms
ER Diagram
Customer
Order
Product
Scheduled
Delivery
Salesperson
Business Rules
Emp.Sal <
Emp.Mgr.Sal
Business
Process
Architecture
Update
Marketing
Authorize
Credit
Order
Entry
Bill
Customer
Table Defns
Schedule
Delivery
Inventory
View Defns
Interface Defns
The Schemas are the Data

Plus relationships between the schemas


This isn’t like data-processing data that you
store in relational databases



Depends-on, generated-from, authored-by, …
It’s more like the content of a SQL catalog
It’s inherently heterogeneous & distributed
SQL doesn’t help a lot to manipulate it
What’s Meta Data Management?


Generic mechanisms to help store,
search, and manipulate meta data.
Main components


A database engine
Information Models (i.e. meta models)


Schemas whose instances are meta data (i.e. models)
Tools
Generic – for any meta data application
 For Vertical Applications – usually design-time,
but can be run-time

Meta Data Manager Architecture
Customer
Update
Marketing
cust
emp
dept
dno
dna
Order
Authorize
Credit
Product
Scheduled
Delivery
Order
Entry
Bill
Customer
Salesperson
Schedule
Delivery
select all
Information Model
• Predefined types
Inventory
Forms
ERD
Spec
Customer
Order
Product
Scheduled
Delivery
Salesperson
Architecture
Tables
Views
Code
Repository Mgr
or OO DBMS
• Objects, properties
• Rich relationships
• Extensibility
• Versioning
• Configurations
Database System
Database
Generic Tools
• Browser
• Scripting language
• Data translators
(import/export)
• Model editor
• Model merge
• Component mgr
Typical Usage Pattern
Meta Data Source
Database catalog, language introspection,
modeling tool, prog. environment, …
Scanner (importer)
Object-Oriented
Structure
Meta Data
Application
Database design, impact analysis,
data translation, data integration,
view integration, message
mapping, data whse loading,
data migration, ….
Generator (exporter)
Code
SQL DDL, interface defns, XSLT, Java, …
Meta Terminology
meta-meta-meta data Definition of “object”
= meta-meta-model
meta-meta data
= meta-model
Definition of “Table”
meta data
= model
Definition of (schema for)
the Employee Table
data
Employee Table
Vertical Applications I

Database design



Map ER model to SQL schema
Reverse engineer SQL schema to ER model
DB Application development



Map SQL schema to default form
Map business rule to SQL constraints and
form validation code
Manage dependencies between code and
schemas and forms
Vertical Applications II
Data translation



Import source and target schemas
Build a mapping between them
Data translator interprets the mapping
Schema integration


Merge data sources into a global schema
View integration



Define use-case scenario
Identify views for each use-case
Integrate views into a conceptual schema
Vertical Applications III

Message Mapping


Map messages from one format to another
Data Warehousing





Import schemas of data sources
Identify overlapping attributes, etc.
Build data cleaning scripts
Build data transformation scripts
Enable data lineage tracing
Vertical Applications IV

Data Migration




Import a schema and its modified version
Build a mapping between them
Data migration tool inteprets the mapping
Scientific data management



Merge schemas from related experiments
Manage transformations of experimental data
Track evolution of schemas and transformations
Vertical Applications V

Information Resource Management




Inventory control of schemas and apps for
large enterprises
Import & browse schemas and interfaces
Impact analysis
Semantic query processing


Pose queries against conceptual model
Automatically map the query to DB schemas
Vertical Applications VI

Integrated CASE







Model the application in UML
Translate the UML to interfaces, schemas, etc.
Tools for consistency checking, test generation,
impact analysis, ….
Integrating customized applications
Workflow design and management
Document management
Application configuration management
Course Topics

Meta data applications



Schema management



Data translation [Popa et al]
Data integration [Spaccapietra & Parent]
Meta meta models [Noy et al]
Properties of mappings [Hull]
Meta data mechanisms




Lineage tracing [Buneman et al.] (Wang-Chiew Tan)
Mapping generation [Atzeni & Torlone]
Schema merging [Buneman, Davidson, Kosky]
Model Management [Bernstein]
Model Management


Model – a complex information structure, e.g., XML
schema, SQL schema, .NET type def, UML model.
Mapping – a transformation from one model into another





Map between two XML schemas
Map SQL schema to XML schema
Map data source to data warehouse
Map classes to data source defns
Model Management Algebra



Match (M1, M2, map)
Merge (M1, M2, map, M3)
Compose (map1, map2, map3)



Copy, Delete, Update
Diff, Apply, ModelGen
Select, Enumerate
Implementation Vision
Generic Tools
Customer
Update
Marketing
Order
Authorize
Credit
Product
Order
Entry
Model-Driven
UI Generator
cust
emp
dept
dno
dna
Scheduled
Delivery
Bill
Customer
Salesperson
Schedule
Delivery
Inventory
select all
• Browser
• Editors
• Import/export • Catalogs
• Scripting
Model Match Compose Operation
SpecialiCopy
Manager Merge
zations
Apply …
Object-Oriented
Repository
Inferencing
Engine


SQL
DBMS

Web pointers

//www.research.microsoft.com/~philbe

//research.microsoft.com/db/ModelMgt/