SIGMOD '87 Proceedings of the 1987 ACM SIGMOD international conference on Management of data
Clustering a DAG for CAD Databases
IEEE Transactions on Software Engineering
Cactis: a self-adaptive, concurrent implementation of an object-oriented database management system
ACM Transactions on Database Systems (TODS)
The performance and utility of the Cactis implementation algorithms
Proceedings of the sixteenth international conference on Very large databases
A stochastic approach for clustering in object bases
SIGMOD '91 Proceedings of the 1991 ACM SIGMOD international conference on Management of data
Data caching tradeoffs in client-server DBMS architectures
SIGMOD '91 Proceedings of the 1991 ACM SIGMOD international conference on Management of data
Communications of the ACM
On the performance of object clustering techniques
SIGMOD '92 Proceedings of the 1992 ACM SIGMOD international conference on Management of data
Principles of static clustering for object-oriented databases
Principles of static clustering for object-oriented databases
Self-adaptive, on-line reclustering of complex object data
SIGMOD '94 Proceedings of the 1994 ACM SIGMOD international conference on Management of data
OCB: A Generic Benchmark to Evaluate the Performances of Object-Oriented Database Systems
EDBT '98 Proceedings of the 6th International Conference on Extending Database Technology: Advances in Database Technology
Partition-Based Clustering in Object Bases: From Theory to Practice
FODO '93 Proceedings of the 4th International Conference on Foundations of Data Organization and Algorithms
Dynamic Storage Allocation: A Survey and Critical Review
IWMM '95 Proceedings of the International Workshop on Memory Management
VOODB: A Generic Discrete-Event Random Simulation Model To Evaluate the Performances of OODBs
VLDB '99 Proceedings of the 25th International Conference on Very Large Data Bases
DBMSs on a Modern Processor: Where Does Time Go?
VLDB '99 Proceedings of the 25th International Conference on Very Large Data Bases
Local Disk Caching for Client-Server Database Systems
VLDB '93 Proceedings of the 19th International Conference on Very Large Data Bases
Dynamic Clustering in Object Databases Exploiting Effective Use of Relationships Between Objects
ECCOP '96 Proceedings of the 10th European Conference on Object-Oriented Programming
A Clustering Technique for Object Oriented Databases
DEXA '97 Proceedings of the 8th International Conference on Database and Expert Systems Applications
Dynamic Reorganization of Object Databases
IDEAS '99 Proceedings of the 1999 International Symposium on Database Engineering & Applications
Hi-index | 0.00 |
In object oriented database management systems, clustering has proven to be one of the most effective performance enhancement techniques. Existing clustering algorithms are mainly static, that is re-clustering the object base when the database is off-line. However, this type of re-clustering cannot be used when 24-h database access is required. In such situations dynamic clustering is necessary, since it can re-cluster the object base while the database is in operation. We find that most existing dynamic clustering algorithms do not address the following important points: the use of opportunism to impose the smallest I/O footprint for re-organisation; the re-use of prior research on static clustering algorithms; and the prioritisation of re-clustering so that the worst clustered pages are re-clustered first. Our main achievement in this paper is to create the Opportunistic Prioritised Clustering Framework (OPCF). The framework allows any static clustering algorithm to be made dynamic. Most importantly it allows the created algorithm to have the properties of I/O opportunism and clustering prioritisation which are missing in most existing dynamic clustering algorithms. We have used OPCF to make the static clustering algorithms ''Graph Partitioning'' and ''Probability Ranking Principle'' into dynamic algorithms. In our simulation study we found these algorithms outperformed two existing highly competitive dynamic algorithms in a variety of situations.