Exploitation of Multi-Versions based on Callback Locking in a Client-Server DBMS Environment

클라이언트-서버 DBMS 환경에서 콜백 잠금 기반 다중 버전의 활용

  • 강흠근 (우송공업대학 전자계산과) ;
  • 민준기 (한국과학기술원 전산학과) ;
  • 전석주 (서울대학교 컴퓨터교육과) ;
  • 정진완 (한국과학기술원 전산학과)
  • Published : 2004.10.01

Abstract

The efficiency of algorithms managing data caches has a major impact on the performance of systems that utilize client-side data caching. In these systems, two versions of data can be maintained without an additional space overhead of the server by exploiting the replication of data in the server's buffer and clients' caches. In this paper, we present a new cache consistency algorithm employing versions: Two Versions-Callback Locking (2V-CBL). Our experimental results indicate that 2V-CBL provides good performance, particularly outperforms a leading cache consistency algorithm, Asynchronous Avoidance-based Gache Consistency, when some clients run only read-only transactions.

데이타 캐쉬를 관리하는 알고리즘의 효율성은 클라이언트에 데이타 캐쉬가 있는 시스템의 성능에 매우 큰 영향을 미친다. 클라이언트에 데이타 캐쉬가 있는 시스템에서는 서버에 추가 스페이스 부담없이 한 데이타에 대해서 두 개의 버전을 유지 관리할 수 있다. 그 이유는 하나의 데이타가 동시에 서버의 버퍼와 클라이언트의 캐쉬에 저장될 수 있기 때문이다. 본 논문에서는 버전 기법을 활용하는 캐쉬 일관성 알고리즘인 Two Versions-Callback Locking(2V-CBL)을 제안하고, 실험을 통해서 2V-CBL라 기존에 가장 높은 성능을 보였던 Asynchronous Avoidance-based Cache Consistency(AACC)의 성능을 비교하였다. 실험 결과에 의하면 2V-CBL은 최소한 AACC와 같은 성능을 보이며 일부의 트랜잭션이 데이타를 수정하지 않고 읽기만 하는 경우에는 AACC 보다 훨씬 높은 성능을 보인다.

Keywords

References

  1. C. Osthoff, C. Bentes, D. Ariosto, M. Mattoso, and C.L. Amorim, 'Evaluating the DSMIO Cache-Coherence Algorithm in Cluster-Based Parallel ODBMS,' 8th International Conference on OOIS, pp. 286-297, 2002
  2. Z. Tari, H. Hamidjadja, 'A CORBA Cooperative Cache Approach with Popularity Admission and Routing Mechanism,' Thirteenth Australasian Database Conference Australasian Database Conference, 2002 https://doi.org/10.1145/563932.563926
  3. Z. Tari, Q.T. Lin, and H. Hamidjaja, 'Cache Management in CORBA Distributed Object Systems,' IEEE Concurrency, vol. 8, num. 3, pp. 48-55, 2000 https://doi.org/10.1109/4434.865893
  4. M. Franklin, M. Carey and M. Livny, 'Transactional Client-Server Cache Consistency: Alternatives and Performance,' ACM Trans. on Database Syst., Vol.22, No.3, pp.315-363, 1997 https://doi.org/10.1145/261124.261125
  5. M. J. Carey, M. J. Franklin, M. Livny, and E. J. Shekita. 'Data Caching Tradeoffs in Client-Server DBMS Architectures'. In Proc. of the ACM SIGMOD Conf. on Management of Data, pages 357-366, Denver, Colorado, May 1991. Also available as Technical Report '#994, Comp. Sci. Dept., University of Wisconsin-Madison, Jan. 1991 https://doi.org/10.1145/115790.115854
  6. Y. Wang and L. Rowe, 'Cache Consistency and Concurrency Control in a Client/Server DBMS Architecture,' ACM SIGMOD Conference, pp. 367-376, June, 1991 https://doi.org/10.1145/115790.115855
  7. M.J. Carey, M.J. Franklin, and M. Zaharioudakis, 'Fine-Grained Sharing in a Page Server OODBMS,' ACM SIGMOD Conference, pp. 359-370, June, 1994 https://doi.org/10.1145/191839.191911
  8. M.T. Ozsu, K. Voruganti, and R.C. Unrau, 'An Asynchronous Avoidance-Based Cache Consistency Algorithm for Client Caching DBMSs,' Proceedings of the 24th VLDB Conference, pp. 440-451, 1998
  9. B. Liskov, M. Castro, L. Shrira, and A. Adya, 'Providing Persistent Objects in Distributed Systems,' Proc. 13th European Conference on Object-Oriented Programming, pp. 230-257, 1999
  10. A. Adya, R. Gruber, B. Liskov, and U. Maheshwari, 'Efficient Optimistic Concurrency Control Using Loosely Synchronous Clocks,' ACM SIGMOD Conference, pp. 23-34, June, 1995
  11. G. Hughes, 'Scalability of Avoidance-Based Transactional Cache Consistency,' Proc. 6th IDEA Workshop, pp. 51-56, 1999
  12. M. Zaharioudakis, M.J. Carey, and M.J. Franklin, 'Adaptive, Fine-Grained Sharing in a Client-Server OODBMS: A Callback-Based Approach,' ACM Transactions on Database Systems, vol. 22, num. 4, pp. 570-627, 1997 https://doi.org/10.1145/278245.278249
  13. M. Zaharioudakis and M.J. Carey, 'Hierarchical, Adaptive Cache Consistency in a Page Server OODBMS,' IEEE Transactions on Computers, vol 47, num. 4, pp. 427-444, 1998 https://doi.org/10.1109/12.675712
  14. E. Panagos and A. Biliris, 'Synchronization and Recovery in a Client-Server Storage System,' The VLDB Journal, vol. 6, num. 3, pp. 209-223, 1997 https://doi.org/10.1007/s007780050041
  15. P.A. Bernstein, V. Hadzilacos, and N. Goodman, 'Concurrency Control and Recovery in Database Systems,' Addison-Wesley, 1987
  16. D. Agrawal and S. Sengupta, 'Modular Synchronization in Distributed, Multiversion Databases: Version Control and Concurrency Control,' IEEE Transactions on Knowledge and Data Engineering, vol. 5, num. 4, pp. 126-137, 1993 https://doi.org/10.1109/69.204097