DOI QR코드

DOI QR Code

Design and Implementation of a Main-memory Storage System for Real-time Retrievals

실시간 검색을 위한 다중 사용자용 주기억장치 자료저장 시스템 개발

  • Published : 2003.04.01

Abstract

Main Memory storage system can increase the performance of the system by assigning enough slack time to real-time transactions. Due to its high response time of main memory devices, main memory resident data management systems have been used for location management of personal mobile clients to cope with urgent location related operations. In this paper we have developed a multi-threaded main memory storage system as a core component of real-time retrieval system to handle a huge amount of readers and writers of main memory resident data. The storage system is implemented as an embedded component which is working with the help of a disk resident database system. It uses multi-threaded executions and utilizes latches for its concurrency control rather than complex locking method. It only saves most recent data on main memory and data synchronization is done only when disk resident database asks for update transactions. The system controls the number of read threads and update threads to guarantee the minimum requirements of real-time retrievals.

주기억장치 자료저장 시스템은 실시간 트랜젝션에 충분한 여유 시간을 부여하여 실시간 트랜잭션의 성능을 높혀준다. 이런 특성으로 인하여 주기억장치를 이용한 데이터관리 시스템들이 이동 통신 관리 시스템의 가입자 위치 관리와 같은 여유시간의 급박한 실시간 트랜잭션에 많이 활용되고 있다. 본 논문에서는 다중 사용자용 멀티쓰레드 방식의 실시간 검색시스템 개발의 일환으로 대량의 실시간 검색 트랜잭션과 자료 변경 트랜잭션이 주기억장치 자료저장 시스템의 자료를 검색, 변경하는 환경에서 주기억장치 자료저장 시스템을 설계 구현하였다. 구현된 시스템은 기존의 디스크 데이터베이스 시스템과 상호 보완적인 형태로 사용되는 내장형 방식으로 다중 쓰레드 방식으로 동작되며, 동시성 제어는 주기억장치의 특성을 살려 복잡한 잠금방식이 아닌 래치를 사용한다. 주기억장치 자료저장 시스템에는 가장 최근의 데이터만을 저장하며, 동기화 기법으로는 디스크 데이터베이스 시스템에서 변경 트랜잭션이 발생하는 경우에 구현 시스템의 데이터를 갱신하는 방법을 사용한다. 시스템은 검색 및 변경 쓰레드의 비율을 제한하여 실시간 검색의 최소성능을 보장할 수 있게 하였다.

Keywords

References

  1. '데이터베이스 서비스 시스템 개발', 한국전자통신연구소, 1996
  2. '주기억장치 상주형 실시간 DBMS 개발에 관한 연구', 한국전자통신연구소, 1996
  3. R. Abbott, H. Garcia-Molina, 'Scheduling Real-Time Transactions : A performance Evaluation,' Proceedings of the 14th VLDB Conference, pp.1-12, 1998
  4. B. Adelberg, H. Garcia, B. Kao, 'Emulating Soft Real-Time Scheduling Using Traditional Operating System Schedulers,' extended version of RTSS, 1994 https://doi.org/10.1109/REAL.1994.342704
  5. D. Agrawal, A. El Abbadi, R. Jeffers, 'Using delayed commitment in locking protocols for real-time databases,' Proceedings of the ACM SIGMOD International Conference of Management of Data, pp.104-113, 1992 https://doi.org/10.1145/130283.130304
  6. K. Arnold, J. Gosling, The $JAVA^{TM}$ programming language, Addison Wesley, 1996
  7. M. J. Carey, R. Jauhari, M. Livny, 'Priority in DBMS Resource scheduling,' Proceeding of the 15th VLDB conference, pp.397-410, 1989
  8. H. Garcia-Molina, K. Salem, 'Main Memory Database Systems : An Overview,' IEEE Transactions on Knowledge and Data Engineering, Vol.4, No.6, pp.509-516, Dec., 1992 https://doi.org/10.1109/69.180602
  9. J. Gray, A. Reuter, 'Transaction Processing : Concepts and Techniques,' Morgan Kaufmann, 1993
  10. J. Haritsa, M. Livny, M. Carey, 'Earliest Deadline Scheduling for real-time Database Systems,' IEEE Real-Time Systems Symposium, pp.232-142, 1991 https://doi.org/10.1109/REAL.1991.160378
  11. J. Haritsa, M. Carey, M. Livny, 'On Being Optimistic About Real-Time Constraints,' Principles of Database Systems, pp.331-343, Apr., 1990 https://doi.org/10.1145/298514.298585
  12. J. Harista, M. Carey, M. Livny, 'Dynamic Real-Time Optimistic concurrency Control,' In Proceeding of the 11th Real-Time Systems Symposium, Orlando, FL., pp.94-103, Dec., 1990 https://doi.org/10.1109/REAL.1990.128734
  13. Steven G. Harris, Oracle 8i Java Developer's Guide, Release 8.1.5, Oracle Corporation, 1999
  14. B. Kao, H. Garcia-Molina, 'An Overview of Real-Time Database Systems,' in Advances in Real-Time Systems, Prentice Hall, pp.463-486, 1995
  15. T. Kevin, Building Intelligent Databases with Oracle PL/SQL, Trigger, and Stored Procedures, Prentice Hall, 1996
  16. G. Ozsoyoglu, R. Snodgrass, 'Temporal and Real-Time Database : A Survey,' IEEE Transactions on Knowledge and Data Engineering, 7(4), pp.513-532, Aug., 1995 https://doi.org/10.1109/69.404027
  17. Tom Portfolio, Oracle 8i Java Stored Procedures Developer's Guide, Release 8.1.5, Oracle Corporation, 1999
  18. P. Yu, K. Wu, K. Lin and S. H. Son, 'On Real-Time Databases : Concurrency Control and Scheduling, 'Proceedings of IEEE Special Issue On Real-Time System, 82(1), pp.140-157, Jan., 1994 https://doi.org/10.1109/5.259432