801 storage: architecture and programming
ACM Transactions on Computer Systems (TOCS)
A study of three alternative workstation server architectures for object-oriented database systems
Proceedings of the sixteenth international conference on Very large databases
Cache consistency and concurrency control in a client/server DBMS architecture
SIGMOD '91 Proceedings of the 1991 ACM SIGMOD international conference on Management of data
The ObjectStore database system
Communications of the ACM
Fine-grained sharing in a page server OODBMS
SIGMOD '94 Proceedings of the 1994 ACM SIGMOD international conference on Management of data
Prototyping Bubba, A Highly Parallel Database System
IEEE Transactions on Knowledge and Data Engineering
Global Memory Management in Client-Server Database Architectures
VLDB '92 Proceedings of the 18th International Conference on Very Large Data Bases
Transactional client-server cache consistency: alternatives and performance
ACM Transactions on Database Systems (TODS)
A contention based dynamic consistency maintenance scheme for client cache
CIKM '97 Proceedings of the sixth international conference on Information and knowledge management
Adaptive, fine-grained sharing in a client-server OODBMS: a callback-based approach
ACM Transactions on Database Systems (TODS)
Transactional Cache Management with Aperiodic Invalidation Scheme in Mobile Environments
ASIAN '99 Proceedings of the 5th Asian Computing Science Conference on Advances in Computing Science
Hi-index | 0.00 |
Many object-oriented database systems are implemented using a page-server architecture for its performance advantages. Since the applications envisioned for object-oriented DBMSes typically spend a great deal of time processing data already in memory, fast in-memory access is very important. A page-server architecture will permit an implementation where most routine reference following (i.e., where the referenced data is in memory and appropriately locked) is handled by virtual memory hardware to eliminate expensive software overhead. One of the major drawbacks of this approach is that locking and authorization must be handled on a per-page basis, causing unacceptable low concurrency for high-contention data pages and difficulties in supporting fine-grained authorization. With hardware support on the client side for locks on minipages (subdivisions of a page), however, it is possible to have good improvements in concurrency for high-contention areas of the database, along with the ability to do fine-grained authorization. This paper presents a callback-read locking scheme that makes use of hardware-assisted locking of minipages and compares its performance with one that uses page protection under four different workloads. Minipages are already available in several commonly used platforms, but only at the internal levels of the operating system. We conclude that minipages improve performance significantly in high-contention workloads, with minimal performance impact under low-contention workloads, and that minipage facilities should be made visible to client DBMS code. We also discuss the application of our locking algorithms to page servers that supporting object-level locking.