26
Merging Models Based on Given Correspondences Rachel A. Pottinger Philip A. Bernstein

Merging Models Based on Given Correspondences

  • Upload
    briar

  • View
    31

  • Download
    1

Embed Size (px)

DESCRIPTION

Merging Models Based on Given Correspondences. Rachel A. Pottinger Philip A. Bernstein. Introduction. - PowerPoint PPT Presentation

Citation preview

Page 1: Merging Models Based on Given Correspondences

Merging Models Based on Given CorrespondencesRachel A. PottingerPhilip A. Bernstein

Page 2: Merging Models Based on Given Correspondences

Introduction“A model is a formal description of a complex application artifact, such as a database schema, an application interface, a UML model, an ontology, or a message format. The problem of merging such models lies at the core of many meta data applications.”

Page 3: Merging Models Based on Given Correspondences

IntroductionCombining models requires two steps: Determining correspondences between

two models (Schema matching) Merging the models based on those

correspondencesDetermining correspondences is a major topic of ongoing research and is not covered in this paper

Page 4: Merging Models Based on Given Correspondences

Model ManagementProposed by Bernstein in “Applying Model Management to Classical Meta Data Problems”Operators: Match Merge Apply Diff

Page 5: Merging Models Based on Given Correspondences

Model ManagementPresented solution: Merge (A, B, MapAB) A & B models MapAB = mapping of correspondences Returns “duplicate-free union” of A &

B

Page 6: Merging Models Based on Given Correspondences

Example - Conflict

Page 7: Merging Models Based on Given Correspondences

Conflict ResolutionConflict resolution is independent of representationExisting similarities among solutions offer an opportunity for abstractionBuneman, Davidson, and Kosky (BDK) algorithm Uses pair-wise correspondences that

have “Is-a” and “Has-a” relationships

Page 8: Merging Models Based on Given Correspondences

Representation of ModelsRepresentation requires (at least) 3 meta-levelsModel = database schema, etcMeta-model = type definitionsMeta-meta-model = representation language in which models and meta-models are expressed

Page 9: Merging Models Based on Given Correspondences

Inputs: Merge (A, B, MapAB)

Two models: A & BMapping: MapAB First-class models, elements and relationships Mapping elements, origins of additional

mapping relationships Non-mapping elements Equality and similarity mapping elements

Optional designation of preferred modelOptional overrides for Merge behavior

Page 10: Merging Models Based on Given Correspondences

Complicated Mapping

Non-mapping element

Similarity Mapping

Page 11: Merging Models Based on Given Correspondences

Mapping Result

Result = “a schema that presents all the information of the schemas being merged, but no additional information”Resulting model, G, satisfies Generic Merge Requirements

Page 12: Merging Models Based on Given Correspondences

Conflict ResolutionConflicts categorized based on meta-level Representation conflicts Meta-model conflicts Fundamental conflicts

Page 13: Merging Models Based on Given Correspondences

Representation ConflictsOccurs when two models describe the same concept in different ways Example, Name represented as ActorName vs.

FirstName & LastName Different possible outputs

Solutions: Concepts the same based off equality mapping

elements Related based of meta-meta-model relationships

and elements, FirstName sub element of ActorName

Related in more complex fashion beyond meta-meta-model representation, ActorName equals the concatenation of FirstName and LastName

Page 14: Merging Models Based on Given Correspondences

Meta-Model ConflictsMerge result violates meta-model-specific constraint SQL table and XML database are

merged into a SQL model, there will be no concept of a sub column

EnforceConstaints operator requires merge results to conform to a given meta-model.

Page 15: Merging Models Based on Given Correspondences

Fundamental ConflictsMeta-meta-model conflictsMerge result violates meta-meta-model rules and cannot be considered a model

Page 16: Merging Models Based on Given Correspondences

Fundamental Conflicts Example

Meta-meta-model rule: one-type restriction

Merge allowed actions: Specify an alternative function to apply

for each conflict resolution category Resolve the conflict manually

Page 17: Merging Models Based on Given Correspondences

Cardinality ConstraintsMaximum and minimum occurrences of relations often restricted

Page 18: Merging Models Based on Given Correspondences

AcyclicityModels often required to be acyclicCycles introduced in merging are collapsed into a single element by defaultUser can override default behavior

Page 19: Merging Models Based on Given Correspondences

The Merge AlgorithmInitialize result G to nullInclude Elements with equivalence relationCombine element propertiesCombine and include relationshipsFundamental conflict resolution

Page 20: Merging Models Based on Given Correspondences

Merge Steps

ActorNameActorIDSim

Bio

Actor

Bio FirstName LastName

ID:History:HowRelated:Name:Etc…

ID:History:HowRelated:Name:Etc…

ID:History:HowRelated:Name:Etc…

ID:History:HowRelated:Name:Etc…

ID:History:HowRelated:Name:Etc…

ID:History:HowRelated:Name:Etc…

ID:History:HowRelated:Name:Etc…

ID:History:HowRelated:Name:Etc…

Page 21: Merging Models Based on Given Correspondences

ContributionsTechnical requirements for a generic merge operatorUse of a first-class input mapping model, enabling richer correspondencesCharacterization of when Merge can be automaticTaxonomy of conflicts and a definition of conflict resolution strategiesExperimental evaluation and results

Page 22: Merging Models Based on Given Correspondences

EvaluationMerged Foundational Model of Anatomy (FMA) and GALEN Common Reference Model

FMA contains 895,307 elements and 2,032,020 relationships

GALEN contains 155,307 elements and 569,384 relationships

Significant structural differencesMapping contained 6265 1-to-1 correspondencesEvaluation Goals:

Limited changes to Merge would be needed Merge would function on models this large The merged results would not be simply read from the

mapping (i.e., the conflicts anticipated would occur)

Page 23: Merging Models Based on Given Correspondences

EvaluationFew non-fundamental changes had to be madeMerging took aprox. 20 hoursMerge results

1,045,411 elements with 9,096 duplicates 2,590,969 relationships

338 cycles, most of length 2, where found1 cycle of length 18 was foundMerged correspondences:

3 element merges: 2344 3+ element merges: 623 1 element merges: 1215

Page 24: Merging Models Based on Given Correspondences

ConclusionsAlgorithm is well designed Merge() is implemented in a generic way that allows for different modelsDefinitions of conflict management are givenImplementation and execution was very labor intensiveSlow, 13 weeks of expert work, 20 hours of processor timeRelies on other systems with unknown results

Page 25: Merging Models Based on Given Correspondences

Questions?

Page 26: Merging Models Based on Given Correspondences

Generic Merge Requirements1. Element preservation2. Equality preservation3. Relationship preservation4. Similarity preservation5. Meta-meta-model constraint satisfaction6. Extraneous item prohibition7. Property preservation 8. Value preference