Design and Implementation of Real-Time Static Locking Protocol for Main-memory Database Systems

주기억장치 데이타베이스 시스템을 위한 실시간 정적 로킹 기법의 설계 및 구현

  • Published : 2002.12.01

Abstract

Main-memory database systems which reside entire databases in main memory are suitable for high-performance real-time transaction processing. If two-phase locking(2PL) as concurrency control protocol is used for the transactions accessing main-memory databases, however, the possibility of lock conflict will be low but lock operations become relatively big overhead in total transaction processing time. In this paper, We designed a real-time static locking(RT-SL) protocol which minimizes lock operation overhead and reflects the priority of transactions and we implemented it on a main-memory real-time database system, Mr.RT. We also evaluate and compare its performance with the existing real-time locking protocols based on 2PL such as 2PL-PI and 2PL-HP. The extensive experiments reveal that our RT-SL outperforms the existing ones in most cases.

모든 데이타를 주기억장치에 상주시키는 주기억장치 데이타베이스 시스템은 고성능 실시간 트랜잭션 처리에 적합하다. 주기억장치 데이타베이스 시스템에서 트랜잭션이 데이타베이스에 접근하는 시간이 매우 짧기 때문에 동시성 제어를 위해 이단계 로킹 기법을 사용할 경우, 로크 충돌이 일어날 확률이 적은 반면에, 데이타 객체를 접근할 때마다 수행해야 하는 로킹 연산의 부하는 트랜잭션 수행시간에 비해 상대적으로 큰 비중을 차지하게 된다. 본 논문에서는 로킹 연산의 부하를 최소화하면서 트랜잭션의 우선 순위를 반영한 실시간 정적 로킹 기법을 설계하고, 이를 주기억장치 실시간 데이타베이스 시스템인 Mr.RT에서 구현하였다. 또한 이단계 로킹 기법을 기반으로 하는 기존의 실시간 동시성 제어 기법들(2PL-PI, 2PL-HP)과의 성능 비교를 통하여 실시간 정적 로킹 기법이 보다 좋은 성능을 보임을 확인하였다.

Keywords

References

  1. P. S. Yu, K. L. Wu, K. L. Lin, and S. H. Son, 'On Real-Time Databases: Concurrency Control and Scheduling,' Proc. of the IEEE Vol. 82, No. 1, 1994 https://doi.org/10.1109/5.259432
  2. 실시간 데이타베이스 특집, 한국정보과학학회지, 제11권, 제1호, 1993
  3. 황규영, 장지웅, 이영구, 김원영, '주기억 장치 데이타베이스를 위한 저장시스템,' 한국정보과학학회지, 제14권, 제2호, 1996
  4. R. Abbott and H. Garcia-Molina. 'Scheduling Real-Time Transactions: A Performance Evaluation,' ACM Trans. on Database Systems, Vol. 17, No. 3, 1992 https://doi.org/10.1145/132271.132276
  5. O. Ulusoy and A. Buchmann, 'A Real-Time Concurrency Control Protocol for Main-Memory Database Systems,' Information Systems, Vol. 23, No. 2, 1998 https://doi.org/10.1016/S0306-4379(98)00004-0
  6. P. Bernstein, V. Hadzilacos, and N. Goodman, Concurrency Control and Recovery in Database Systems, Addison-Wesley, 1987
  7. K. Y. Lam, S. L. Hung and S. H. Son, 'On Using Real-Time Static Locking Protocols for Distributed Real-Time Databases,' Journal of Real-Time Systems, Vol. 13, No. 2, 1997 https://doi.org/10.1023/A:1007981523223
  8. 차상균, 박장호, 박병대, 이성직, '$M_2$RTSS: 주메모리 실시간 저장 시스템,' 한국정보과학학회지, 제14권, 제2호, 1996
  9. A. Bestavros and S. Braoudakis, 'SCC-nS: A Family of Speculative Concurrency Control Algorithms for Real-Time Databases,' Proc. Third Int'l Workshop Responsive Computer Systems, 1993
  10. J. R. Haritsa, M. J. Carey, and M. Livny, 'On Being Optimistic about Real-Time Constraints,' Proc. ACM Syrnp, Principles of Database Systems, 1990 https://doi.org/10.1145/298514.298585
  11. J. R. Haritsa, M. J. Carey, and M. Livny, 'Dynamic Real-Time Optimistic Concurrency Control,' Proc. IEEE Real-Time Systems Symp., 1990 https://doi.org/10.1109/REAL.1990.128734
  12. J. Huang, J. Stankovic, K. Ramamritham, and D. Towsley, 'Experimental Evaluation of Real-Time Optimistic Concurrency Control Schemes,' Proc. 17th Int'l Conf. Very Large Data Bases, 1991
  13. J. Huang, J. Stankovic, D. Towsley, and K. Ramamritham, 'Experimental Evaluation of Realtime Transaction Processing,' Proc. IEEE Real Time Systems Symp., 1989 https://doi.org/10.1109/REAL.1989.63565
  14. J. Lee and S. H. Son, 'Concurrency Control Algorithms for Real-Time Database Systems,' Performance of Cincurrency Control Mechanisms in Centralized Database Systems, 1995
  15. J. Lee and S. H. Son, 'Using Dynamic Adjustment of Serialization Order for Real-Time Database Systems,' Proc, IEEE Real-Time Systems Symp., 1993 https://doi.org/10.1109/REAL.1993.393514
  16. Y. Lin and S. H. Son, 'Concurrency Control in Real-Time Databases by Dynamic Adjustment of Serialization Order,' Proc, IEEE Real-Time Systems Symp., 1990 https://doi.org/10.1109/REAL.1990.128735
  17. A. Datta and S. H. Son, 'A Study of Concurrency Control in Real-Time, Active Database Systems,' IEEE Trans. on Knowledge and Data Engineering, Vol. 14, No. 3, 2002 https://doi.org/10.1109/TKDE.2002.1000337
  18. H. Garcia-Molina and K. Salem, 'Main Memory Database Systems: An Overview,' IEEE Trans. on Knowledge and Data Engineering, Vol. 4, No. 6, 1992 https://doi.org/10.1109/69.180602
  19. Gray and A. Reuter, Transaction Processing: Concepts and Techniques, Morgan Kaufmann, 1993
  20. J. Huang, J. Stankovic, K. Ramamritham and D. Towsley, 'On Using Priority Inheritance In Real-Time Databases,' IEEE Real-Time Systems Symp., 1991 https://doi.org/10.1109/REAL.1991.160376
  21. B. Kao and H. Garcia-Molina, 'An Overview of Real-Time Database Systems,' Advances in Real-Time Systems, pp, 463-486, Prentice Hall, 1995
  22. L. Sha, R. Rajkumar and J. P. Lehoczky, 'Priority Inheritance Protocols: An Approach to Real-Time Synchronization,' IEEE Trans. on Computers, Vol. 39, No. 9, 1990 https://doi.org/10.1109/12.57058
  23. B. Stroustrup, The C++ Programming Language, Addison-Wesley, 1991
  24. Sun Microsystems, Inc., Multithreaded Programming Guide, 1994
  25. O. Ulusoy and A. Buchmann, 'Exploiting Main Memory DBMS Features to Improve Real Time Concurrency Control Protocols,' ACM SIGMOD Record, Vol. 25, No. 1, 1996 https://doi.org/10.1145/381854.381876