SERF: ODMG-Based Generic Re-structuring Facility

E.A. Rundensteiner, K. Clayp o ol, M. Li, L. Chen, X. Zhang, C. Natara jan, J. Jin, S. De Lima, S. Weiner

Department of Computer Science

Worcester Polytechnic Institute

Worcester, MA 01609

tel.: 508 831{5815, fax: 508 831{5776

frundenst,ka jal,mingli,lichen,xinz,chandu,jing,delima,[email protected]

such transformations. Research that has b egun to lo ok 1 Overview

into the issue of complex changes [Br e96, Ler96] is still

The age of information management and with it the

limited by providing a xed set of some selected even

advent of increasingly sophisticated technologies have

if now more complex op erations.

kindled a need in the database community and others

To address these limitations of the current re-

to re-structure existing systems and move forward to

structuring technology, we have prop osed the SERF

make use of these new technologies. Legacy application

framework which aims at providing a richenvironment

systems are b eing transformed to newer state-of-the-art

for doing complex user-de ned transformations exi-

systems, information sources are b eing mapp ed from

bly, easily and correctly [CJR98b]. The goal of our

one data mo del to another, a diversity of data sources

work is to increase the usability and utility of the

are b eing transformed to load, cleanse and consolidate

SERF framework and its applicability to re-structuring

data into mo dern data-warehouses [CR99].

problems b eyond OODB evolution. Towards that end,

Re-structuring is thus a critical task for a variety

we provide re-usable transformations via the notion

of applications. For this reason, most ob ject-oriented

of SERF Templates that can be packaged into li-

database systems OODB to day supp ort some form of

braries, thereby increasing the portability of these

re-structuring supp ort [Tec94, Ob j93, BKKK87]. This

transformations. We also nowhave a rst cut at pro-

existing supp ort of current OODBs [BKKK87, Tec94,

viding an assurance of consistency for the users of this

Ob j93] is limited to a pre-de ned taxonomy of simple

system, a semantic optimizer that provides some p erfor-

xed-semantic schema evolution op erations. However,

mance improvements via enhanced query optimization

such simple changes, typically to individual typ es

techniques with emphasis on the re-structuring prim-

only, are not sucient for many advanced applications

itives [CNR99]. In this demo we give an overview of

[Br e96]. More radical changes, such as combining

the SERF framework, its current status and the en-

two typ es or rede ning the relationship between two

hancements that are planned for the future. We also

typ es, are either very dicult or even imp ossible to

present an example of the application of SERF to a

achieve with current commercial database technology

domain other than schema evolution, i.e., the web re-

[Tec94, Ob j93]. In fact, most OODBs would typically

structuring.

require the user to write ad-ho c programs to accomplish



This work was supp orted in part by the NSF NYI grant IRI

2 OQL-SERF: Our ODMG Based

94-57609. Wewould also like to thank our industrial sp onsors, in

System

particular, IBM for the IBM partnership award and Informix for

contribution. Sp ecial thanks also go es to the PSE Team

2.1 System Architecture

sp eci cally, Gordon Landis, Sam Haradhvala, Pat O'Brien and

Breman Thuraising at Ob ject Design Inc. for not only software

In order to validate our concept of SERF transforma-

contributions but also for providing us with a customized patchof

tions [CJR98b], we have develop ed a working system,

the PSE Pro2.0 system that exp osed schema-related APIs needed

called OQL-SERF [CJR98a]. OQL-SERF serves b oth

to develop our to ol.

as pro of of concept as well as helps to explore the suit-

ability of the ODMG standard as the foundation for

a template-based re-structuring framework. For OQL-

SERF, we have used an extension of Java's binding

of the ODMG mo del as its ob ject mo del, our bind-

ing of the Schema Rep ository for the Metadata Dic-

tionary and OQL as the database transformation lan-

guage. OQL-SERF is written entirely in Java and uses

Ob ject Design Inc.'s 100 Pure Java PSE as its p er- user wants to apply the SERF template transformation.

sistent store. As part of our development e ort we A type-check ensures that the typ es of the parameters

have also built on top of PSE, aschema evolution fa- match and they exist in the system as well as the

cility, Schema Evolution Primitive Manager, the correct numb er of parameters are supplied by the user.

Schema Rep ository and OQL Query Engine which This is followed by a bind-check which checks the

are not directly a part of the SERF system. Figure 1 existence of these actual parameters in the schema on

gives the overall architecture of our system. which they are b eing applied by accessing the Schema

Rep ository. The SERF template is instantiated using

SERF Framework

these parameters by replacing each variable with its

b ound parameter after all the checks are completed Template Manager

User Template

successfully. The instantiated SERF template now Interface Processor

invokes

ts, i.e., wenow call invokes Instantiates corresp onds to pure OQL statemen Template and

Editor executes

an OQL transformation. The OQL Query Engine uses Semantic Consistency it Template

Schema Optimizer Manager

vides an interface for the syntax-checking, the Library pro

Viewer

and the execution of the OQL transformation.

uses uses uses

Template Library. SERF templates for a particular

domain are collected in a Template Library. Searchof

Schema Schema Query

a template in this library is supp orted via simple key- Repository uses Evolution Engine

Primitives

word search on all stored parameters of the template

h as the input and output parameters, the name,

queries operates on suc

1

the contract , and the description. We are currently in

Object

inheritance and other semantic

Repository queries the pro cess of de ning

relationships between templates to facilitate a multi-

level organization of the template library.

OODB System

Consistency Manager. The current version of the

Figure 1: Architecture of the SERF Framework

Consistency Manager deals with b oth the invariant

consistency as sp eci ed by the invariants of the ob ject

mo del as well as with contractual consistency, i.e.,

2.2 To ols for the SERF System

the consistency as sp eci ed by the individual contracts

Template Pro cessor. The Template Pro cessor is an

of a template. As part of the consistency manager,

interface between the user and the SERF framework

we have develop ed a language for the sp eci cation of

for the execution of a template. Figure 2 shows

contracts, i.e., the constraints that must be sati ed

the steps p erformed by the Template Pro cessor for

by the input schema given by the template and also

the execution of a SERF template. The template

the constraints that must be satis ed at termination

pro cessing b egins with the user supplying the input

time. The consistency manager uses these contracts

parameters. These parameters are a particular Class

for the detection of erroneous templates and provides

or Property in the application schema to which the

a framework for the managementof violations as well

as for veri cation.

Template inline(className, refAttrName) className = Class Person,

refAttrName = Attribute address

Semantic Optimizer. The Optimizer is a to ol for

Type-check optimizing SERF templates in terms of their execution

error

The semantic optimizer uses a query graph as

pass times.

internal representation. The optimization is based

Bind-check error its

on a semantic analysis of the data dep endencies in this

pass Error to User

graph, as well as heuristics of pairwise eliminating, can-

Instantiate

celing or merging schema evolution primitives [CNR99].

inline(Person, address)

e have fo cused in particular on the optimization of (, W

Pure oql statements olution metho ds. syntax-check ev error

pass

Application sp eci c to ol: XML Mapp er. In the

Execute

context of Re-WEB, a system for the generation and

1

This is for the sp eci cation of consistency constraints as

Figure 2: Steps for the Execution of a Template.

required by the consistency manager.

re-structuring of the web based on the SERF system, [CJR98b] K.T. Clayp o ol, J. Jin, and E.A. Run-

wehave also develop ed the XML Mapp er, a to ol that densteiner. SERF: Schema Evolution

allows us to pro duce les using the structure and through an Extensible, Re-usable and Flex-

the ob jects present in the ob ject database and vice ible Framework. In Int. Conf. on Infor-

versa. The XML Mapp er uses the web semantics we mation and Know ledge Management, pages

de ned for the ODMG ob ject mo del [CRCK98]. 314{321, Novemb er 1998.

[CNR99] K.T. Clayp o ol, C. Natara jan, and E.A.

2.3 Highlights of the Demo

Rundensteiner. CHOP: An Optimizer for

We will demonstrate the latest version of our OQL-

Schema Evolution Sequences. Technical

SERF system using an example to walk through and

Rep ort WPI-CS-TR-99-06, Worcester Poly-

show its core functionality in terms of the steps of

technic Institute, February 1999.

execution for a transformation Figure 2 using our

2

library of templates . We will also demonstrate

[CR99] K.T. Claypool and E.A. Rundensteiner.

the re-usability, exibility and the extensibility of our

SERF: Transforming your Database. In

SERF framework and its applicability to the web re-

IEEE Bul letin - Special Issue on Database

structuring via the following:

Tranformation Technology, 1999. to app ear.

[CRCK98] K.T. Clayp o ol, E.A.

 Re-usability. We will demonstrate how a transfor-

Rundensteiner, L. Chen, and B. Kothari.

mation can be generalized to a template as ab ove

Re-usable ODMG-based Templates for Web

and re-used for other meta ob jects in the schema.

View Generation and Restructuring. In

CIKM'98 Workshop on Web Information

 Flexibility. We will demonstrate the ease with which

and Data Management WIDM'98, Wash-

a user can change the semantics of a pre-existing

ington, D.C., Nov.6, 1998.

template.

[Ler96] B.S. Lerner. A Mo del for Comp ound Typ e

 Extensibility. We will demonstrate the extensibility

Changes Encountered in Schema Evolution.

of our system by showing how a template can

Technical Rep ort UM-CS-96-044, Univer-

be emb edded in another template to make more

sity of Massachusetts, Amherst, Computer

complex transformations.

Science Department, 1996.

 Applicability Beyond Schema Evolution. We demon-

[Ob j93] Ob ject Design Inc. ObjectStore - User

strate how Re-WEB can be used to generate cus-

Guide: DML. ObjectStore Release 3.0 for

tomized web pages. SERF makes restructuring of

UNIX Systems. Ob ject Design Inc., Decem-

web sites a very manageable task.

b er 1993.

[Tec94] O Technology. O Reference Manual,

2 2

References

Version 4.5, Release November 1994. O

2

[BKKK87] J. Banerjee, W. Kim, H. J. Kim, and

Technology, Versailles, France, November

H. F. Korth. Semantics and Implementation

1994.

of Schema Evolution in Ob ject-Oriented

Databases. SIGMOD, pages 311{322, 1987.

[Br e96] P.Br eche. Advanced Primitives for Chang-

ing Schemas of Ob ject Databases. In Con-

ference on Advanced Information Systems

Engineering, pages 476{495, 1996.

[CJR98a] K.T. Clayp o ol, J. Jin, and E.A. Runden-

steiner. OQL SERF: An ODMG Implemen-

tation of the Template-Based Schema Evo-

lution Framework. In Centre for Advanced

Studies Conference, pages 108{122, Novem-

b er 1998.

2

This library of templates has b een formulated by the case

study of the di erent transformations that we have found in

research literature.