A New Isolation Level in Object-Relational DBMSs

객체관계형 데이터베이스 시스템에서의 새로운 고립화 수준

  • Seo, Hong-Suk (Dept. of Computer Science, Korea Advanced Institute of Science and Technology) ;
  • Chang, Ji-Woong (Dept. of Computer Science, Korea Advanced Institute of Science and Technology) ;
  • Moon, Yang-Sae (Dept. of Computer Science, Korea Advanced Institute of Science and Technology) ;
  • Whang, Kyu-Young (Dept. of Computer Science, Korea Advanced Institute of Science and Technology) ;
  • Hong, Eui-Kyung
  • 서홍석 (한국과학기술원 전산학과) ;
  • 장지웅 (한국과학기술원 전산학과) ;
  • 문양세 (한국과학기술원 전산학과) ;
  • 황규영 (한국과학기술원 전산학과) ;
  • 홍의경 (서울시립대학교 전산통계학과)
  • Published : 2001.09.01

Abstract

In order to enhance the performance, cursor stability, which is a variant of isolation lvel 2 in relational DBMSs, has been widely used in place of isolation level 3, which uses strict two phase locking. However, cursor stability is much less usable in object-relational DBMSs (ORDBMSs) because navigational applications in ORDBMSs can suffer from critical inconsistency problems such as dangling pointers, lost updates, and reading inconsistent complex objects. In this paper, we propose a new isolation level, navigation stability, that prevents the inconsistency problems of cursor stability for navigational applications, while avoiding significant degradation of the concurrency of level 3. First, we analyze the inconsistency problems of cursor stability for navigational applications. Second, we define navigation stability as an extension of cursor stability and show that it solves those inconsistency problems of cursor stability in ORDBMSs. For workloads consisting of transactions of long duration, compared with level 3, the throughput of navigation stability is enhanced by up to 200%; the average response time reduced by as much as 55%; and the abort ratio reduced by as much as 77%. From these results, we conclude that navigation stability is a useful isolation level in ORDBMSs that can be used in place of isolation level 3 to improve the performance and concurrency without significantly sacrificing consistency.

데이터베이스의 성능향상을 위하여 관계형 DBMS에서는 엄정 이단계 로킹을 따르는 고립화 수준 3대신 고립화 수준 2의 변형인 커서 안정성이 유용하게 사용되어 왔다. 그러나, 객체 관계형 DBMS(object relational DBMS : ORDBMS)의 탐색항해 응용에 대해서 허상 포인터 문제, 갱신 분실 문제, 그리고 일관성을 잃은 복합객체를 읽는 문제와 같은 심각한 일관성 문제로 인하여 커서 안정성은 ORDBMS에서는 더 이상 유용한 수준이 되지 못한다. 본 논문에서는 ORDBMS에서 수준 3의 동시성 저하를 피하는 동시에 커서 안정성의 일관성 문제를 해결하는 새로운 고립화 수준인 탐색향해 안정성(navigation stability)을 제안한다. 먼저, 탐색항해 응용에 대한 커서 안정성의 일관성 문제를 분석한다. 다음으로, 커서 안정성을 확장하여 탐색항해 안정성을 정의하고 탐색항해 안정성이 ORDBMS의 탐색항해 응용에 대한 커서 안정성의 일관성 문제를 일으키지 않음을 증명한다. 마지막으로, 성능 평가를 통해 수행 시간이 긴 트랜잭션의 경우에 탐색항해 안정성은 수준 3에 비해 성능을 최대 200%까지 향상시키고, 평균 응답 시간을 최대 55% 줄이며, 트랜잭션의 철회율을 최대 77% 줄임을 보였다. 이러한 결과로부터, 탐색항해 안정성은 ORDBMS에서 일관성을 거의 희생하지 않고도 성능 향상을 위해 수준 3 대신 사용할 수 있는 유용한 고립화 수준임을 의미한다.

Keywords

References

  1. Bernstein, P.A., Hadzilacos, V., and Goodman, N., Concurrency Control and Recovery in Database Systems, Addison-Wesley, 1987
  2. Gray, J. and Reuter, A., Transaction Processing: Concepts and Techniques, Morgan Kaufmann, 1993
  3. Chamberlin, D.D., A Complete Guide to DB2 Universal Database, Morgan Kaufmann, 1998
  4. Oracle, Inc., Oracle Call Interface Programmer's Guide, Volumes 1 & 2, Release 8.0 Part No. A58234-01, 1997
  5. UniSQL, C Application Programming Interface Reference Manual, 1996
  6. Gray, J., et al., Granularity of Locks and Degrees of Consistency in a Shared Database, In Readings in Database Systems, 2nd ed., Michael Stonebraker, ed., Morgan Kaufmann, 1994(originally published as IBM Research Report RJ1654 in 1975)
  7. Berenson, H., et al, 'A Critique of ANSI SQL Isolation Levels,' In Proc. Int'l Conf. on Management of Data, ACM SIGMOD, pp.1-10, San Jose, California, May 1995 https://doi.org/10.1145/568271.223785
  8. Keller, T., Graefe, G., and Maier, D., 'Efficient Assembly of Complex Objects,' In Proc. Int'l Conf. on Management of Data, ACM SIGMOD, pp.148-157, Denver, Colorado, May 1991 https://doi.org/10.1145/119995.115809
  9. Stonbraker, M. and Moore, D., Object-Relational DBMSs: The Next Great Wave, Morgan Kaufman Publishers, 1996
  10. Melton, J. an Simon, A. R., Understanding the New SQL: A Complete Guide, Morgan Kaufmann, 1993
  11. Whang, K. Y. and Krishnamurthy, R., 'Query Optimization in a Memory-Resident Domain Relational Calculus Database System,' ACM Trans. on Database Systems, Vol. 15, No. 1, pp.67-95, Mar. 1990 https://doi.org/10.1145/77643.77646
  12. Cattell, R.G.G. and Barry, D.K., The Object Database Standard: ODMG2.0, Morgan Kaufmann, 1997
  13. Ullman, J. D. and Widom, J., A First Course in Database Systems, Prentice Hall, 1997
  14. Silberschatz, A., Korth, H. F., and Sudarshan, A., Database System Concepts, McGraw-Hill, 3rd ed., 1997
  15. Wang, Y. and Rowe, A. L., 'Cache Consistency and Concurrency Control in a Client/Server DBMS Architecture,' In Proc. Int'l Conf. on Management of Data, ACM SIGMOD, pp.367-376, Denver, Colorado, June 1991 https://doi.org/10.1145/115790.115855
  16. Mesquite, Inc., CSIM User Guide, http://www.mesquite.com, 1998
  17. Seagate, Inc., Seagate Barracuda 50 Family Product Specification, http://www.seagate.com, 1999