A tool for nesting and clustering large objects

In implementations of non-standard database systems, large objects are often embedded within an aggregate of different types, i.e. a tuple. For a given size and access probability of a large object, query performance depends on its representation: either inlined within the aggregate or swapped out to a separate object. Furthermore, the implementation of complex data models often requires nested large objects, and access performance is highly influenced by the clustering strategy followed to store the resulting tree of large objects. In this paper we describe a large object extension which automatically clusters nested large objects. A rank function is developed which indicates the suitability of a large object being inserted into a given cluster. We present two clustering algorithms of different run-time complexity, both using the rank function, and a series of simulations is performed to compare them to each other as well as to two trivial ones. One of the algorithms proves to compute the most efficient clustering in all tests.

[1]  Miron Livny,et al.  The Case for Enhanced Abstract Data Types , 1997, VLDB.

[2]  Ronald L. Graham,et al.  Concrete mathematics - a foundation for computer science , 1991 .

[3]  Jeffrey F. Naughton,et al.  A stochastic approach for clustering in object bases , 1991, SIGMOD '91.

[4]  Ralf Hartmut Güting,et al.  A data model and data structures for moving objects databases , 2000, SIGMOD '00.

[5]  Jeffrey F. Naughton,et al.  On the performance of object clustering techniques , 1992, SIGMOD '92.

[6]  Gilbert Harrus,et al.  Clustering strategies in O 2 : an overview , 1992 .

[7]  David J. DeWitt,et al.  Shoring up persistent applications , 1994, SIGMOD '94.

[8]  François Bancilhon,et al.  Building an Object-Oriented Database System, The Story of O2 , 1992 .

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

[10]  Ali R. Hurson,et al.  Effective clustering of complex objects in object-oriented databases , 1991, SIGMOD '91.

[11]  Ronald L. Graham,et al.  Concrete mathematics - a foundation for computer science (2. ed.) , 1994 .

[12]  Ralf Hartmut Güting,et al.  Efficient Handling of Tuples with Embedded Large Objects , 2000, Data Knowl. Eng..

[13]  Kien A. Hua,et al.  A decomposition-based simulated annealing technique for data clustering , 1994, PODS '94.

[14]  Gilbert Harrus,et al.  Clustering Strategies in O2: An Overview , 1992, Building an Object-Oriented Database System, The Story of O2.

[15]  Mario Schkolnick,et al.  A clustering algorithm for hierarchical structures , 1977, TODS.

[16]  Goetz Graefe,et al.  The Volcano optimizer generator: extensibility and efficient search , 1993, Proceedings of IEEE 9th International Conference on Data Engineering.

[17]  David J. DeWitt,et al.  Building a scaleable geo-spatial DBMS: technology, implementation, and evaluation , 1997, SIGMOD '97.

[18]  Jay Banerjee,et al.  Composite object support in an object-oriented database system , 1987, OOPSLA '87.

[19]  Elisa Bertino,et al.  Composite objects revisited , 1989, SIGMOD '89.

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

[21]  Jim E. Greer,et al.  A hybrid object clustering strategy for large knowledge-based systems , 1996, Proceedings of the Twelfth International Conference on Data Engineering.

[22]  Randy H. Katz,et al.  Exploiting Inheritance and Structure Semantics for Effective , 1988 .

[23]  Markus Schneider,et al.  A foundation for representing and querying moving objects , 2000, TODS.

[24]  Jay Banerjee,et al.  Composite object support in an object-oriented database system , 1987, OOPSLA 1987.

[25]  Ralf Hartmut Güting,et al.  SECONDO/QP: Implementation of a Generic Query Processor , 1999, DEXA.

[26]  Ralf Hartmut Güting,et al.  Spatio-Temporal Data Types: An Approach to Modeling and Querying Moving Objects in Databases , 1999, GeoInformatica.