Effective clustering of complex objects in object-oriented databases

Clustering is an effective mechanism for retrieving complex objects. Many object-oriented database management systems have suggested variant clustering schemes to improve their performance. Two issues may compromise the effectiveness of a clustered structure , i.e., object updates and multiple relationships. Updates may destroy the initially cIustered structure, and in a multiple relationship environment, clustering objects based on one relationship may sacrifice others. This paper investigates the updating effects and suggests a dynamic reclustering scheme to reorganize related objects on the disk. A cost model is introduced to estimate the benefit and overhead of reclustering. Reorganizations are performed only when the overhead can be justified. For environments in which multiple relationships among objects exist, the paper proposes a leveled clustering scheme to order related objects into a clustering sequence. Our simulation results show that the leveled clustering scheme has a better access time compared with a single-level clustering scheme.

[1]  David Maier,et al.  Making Database Systems Fast Enough for CAD Applications , 1989, Object-Oriented Concepts, Databases, and Applications.

[2]  ChenPeter Pin-Shan The entity-relationship modeltoward a unified view of data , 1976 .

[3]  Roger King,et al.  Cactis: a self-adaptive, concurrent implementation of an object-oriented database management system , 1989, ACM Trans. Database Syst..

[4]  O. Deux,et al.  The Story of O2 , 1990, IEEE Trans. Knowl. Data Eng..

[5]  Jay Banerjee,et al.  Data model issues for object-oriented applications , 1987, TOIS.

[6]  Jay Banerjee,et al.  Operations and implementation of complex objects , 1987, 1987 IEEE Third International Conference on Data Engineering.

[7]  David Maier,et al.  Varieties of Concurrency Control in IMS/VS Fast Path. , 1985 .

[8]  David J. DeWitt,et al.  Object and File Management in the EXODUS Extensible Database System , 1986, VLDB.

[9]  C. J. Date An Introduction to Database Systems , 1975 .

[10]  J. Banerjee,et al.  Clustering a DAG for CAD Databases , 1988, IEEE Trans. Software Eng..

[11]  Betty Salzberg,et al.  File Structures: An Analytic Approach , 1988 .

[12]  Randy H. Katz,et al.  Exploiting inheritance and structure semantics for effective clustering and buffering in an object-oriented DBMS , 1989, SIGMOD '89.

[13]  G H. Sockut,et al.  Data Base Reorganization - Principles and Practice | NIST , 1979 .

[14]  Dennis McLeod,et al.  Database description with SDM: a semantic database model , 1981, TODS.

[15]  Alfred V. Aho,et al.  Data Structures and Algorithms , 1983 .

[16]  Ming-Chien Shan,et al.  Iris: An Object-Oriented Database Management System , 1989, ACM Trans. Inf. Syst..

[17]  David Robson,et al.  Smalltalk-80: The Language and Its Implementation , 1983 .

[18]  Don S. Batory Optimal file designs and reorganization points , 1982, TODS.

[19]  Lars Söderlund Concurrent Data Base Reorganization - Assessment of a Powerful Technique through Modeling , 1981, VLDB.

[20]  Peter P. Chen The entity-relationship model: toward a unified view of data , 1975, VLDB '75.

[21]  Gary H. Sockut,et al.  Database Reorganization—Principles and Practice , 1979, CSUR.

[22]  Stanley B. Zdonik,et al.  A shared, segmented memory system for an object-oriented database , 1987, TOIS.

[23]  Jay Banerjee,et al.  Operations and Implementation of Complex Objects , 1988, IEEE Trans. Software Eng..