Simulation of clustering algorithms in OODBs in order to evaluate their performances
📝 Abstract
A good object clustering is critical to the performance of object-oriented databases. However, it always involves some kind of overhead for the system. The aim of this paper is to propose a modelling methodology in order to evaluate the performances of different clustering policies. This methodology has been used to compare the performances of three clustering algorithms found in the literature (Cactis, CK and ORION) that we considered representative of the current research in the field of object clustering. The actual performance evaluation was performed using simulation. Simulation experiments showed that the Cactis algorithm is better than the ORION algorithm and that the CK algorithm totally outperforms both other algorithms in terms of response time and clustering overhead.
💡 Analysis
A good object clustering is critical to the performance of object-oriented databases. However, it always involves some kind of overhead for the system. The aim of this paper is to propose a modelling methodology in order to evaluate the performances of different clustering policies. This methodology has been used to compare the performances of three clustering algorithms found in the literature (Cactis, CK and ORION) that we considered representative of the current research in the field of object clustering. The actual performance evaluation was performed using simulation. Simulation experiments showed that the Cactis algorithm is better than the ORION algorithm and that the CK algorithm totally outperforms both other algorithms in terms of response time and clustering overhead.
📄 Content
- 1 - Simulation of clustering algorithms in OODBs in order to evaluate their performances
J. Darmont A. Attoui M. Gourgand Université Blaise Pascal – Clermont-Ferrand II Laboratoire d’Informatique Complexe scientifique des Cézeaux 63177 Aubière Cedex France E-mail : darmont@libd1.univ-bpclermont.fr
Abstract: A good object clustering is critical to the performance of object-oriented databases. However, it always involves some kind of overhead for the system. The aim of this paper is to propose a modelling methodology in order to evaluate the performances of different clustering policies. This methodology has been used to compare the performances of three clustering algorithms found in the literature (Cactis, CK and ORION) that we considered representative of the current research in the field of object clustering. The actual performance evaluation was performed using simulation. Simulation experiments showed that the Cactis algorithm is better than the ORION algorithm and that the CK algorithm totally outperforms both other algorithms in terms of response time and clustering overhead.
Keywords: Clustering, Computer systems performance evaluation methodology, Object- oriented databases, Simulation
- 2 -
- INTRODUCTION
In Object-Oriented Databases (OODBs), a good object clustering is critical to performance [TSAN91]. Clustering means storing related objects close together on secondary storage so that when one object is accessed from disk, all its related objects are also brought into memory. Then access to these related objects is a main memory access that is much faster than a disk access.
Several methods can be used to evaluate the performances of a Database Management System (DBMS). Benchmarks generally propose a standard database and a series of operations that run on this database. Thus, performance measurement directly depends on the reactions of the tested DBMS. Several benchmarks have been specifically designed for object- oriented databases, like the Synthetic Benchmark [KIM90], the HyperModel Benchmark [ANDE90, BERR91], the OO1 Benchmark [CATT91] or the CluB-0 Benchmark [BANC92]. However, some OODB designers or clustering algorithm authors prefer the use of simulation [CHAN89, CHEN91, HE93], because simulation allows to specifically measure performance improvements due to one or another clustering policy. [TSAN92] proposes a dual performance evaluation method, performing simulations that use the database introduced by the CluB-0 Benchmark. One last way to determine the advantages of a given clustering method is mathematical analysis as it is performed by [CHAB93]. This approach is however limited because the obtained results are qualitative rather than quantitative and sharp performance criteria cannot be extracted.
The aim of this paper is to propose a methodology in order to compare the performance of the different clustering strategies that can be implemented in OODBs. Modelling may lead either to simulation or to the application of exact analytical methods whenever possible. We applied our methodology to three object-oriented clustering algorithms that are representative of the current research in the field of OODBs: Cactis [HUDS89], CK [CHAN90] and ORION [BANE87, KIM90].
The main advantage of our approach opposed to the use of benchmarks is that it allows, by providing a common environment, to specifically compare clustering algorithms, in a way that is totally independent of any environment associated with the DBMSs that implement the clustering algorithms we intend to compare. For instance, physical storage methods and buffering strategies also influence the DBMS global performance. Furthermore, our approach also allows to a priori study the behavior of algorithms (like CK) that are not implemented in any DBMS. Thus we can compare their performances to those of already implemented algorithms.
This paper is organized as follows. We start by presenting the modelling methodology we used. Section 3 is dedicated to our study: we apply our modelling methodology to obtain a knowledge model and an action model. Then we present in Section 4 the three studied
- 3 - clustering algorithms. The simulation results are given in Section 5. They expand those already provided by [DARM95]. We end this paper with a conclusion and a brief discussion about future research directions.
- MODELLING METHODOLOGY
OODBs are complex systems. Modelling their behavior may as well be a complex task. This is the reason why we propose an approach dedicated to the study of such systems. This modelling approach carry out a model according to an iterative process. [GOUR91]. This process is divided into four phases (Figure 1).
Real system Knowledge model Action model Performance criteria Phase 4 Actions on the system Phase 1 or usual language Phase 2 Translation into a mathematical or Phase 3 Action model exp
This content is AI-processed based on ArXiv data.