공유 디스크 기반의 다중 서버 DBMS를 위한 효율적인 버퍼 일관성 관리

Efficient Buffer Coherency Management for a Shared-Disk based Multiple-Server DBMS

  • 발행 : 2009.10.15

초록

공유디스크 모델을 사용하는 다중 서버 DBMS에서는 서버 프로세스들이 서로 독립된 메모리를 가지므로, 특정 서버 프로세스가 데이터베이스를 수정하더라도 다른 서버 프로세스들의 버퍼에는 수정된 내용이 반영되지 않는다. 따라서, 다른 서버 프로세스들이 수정되기 전 내용에 대하여 데이터 처리 요청을 수행하면 문제가 발생한다. 본 논문에서는 큰 단위의 로크(여기서는 볼륨 로크)를 사용하는 DBMS에서 이러한 문제를 해결하기 위한 새로운 방법을 제안한다. 이 방법에서는 서버 프로세스가 트랜잭션을 커밋할 때 수정한 페이지의 식별자와 타임스탬프를 일관성 볼륨에 저장하고, 이 정보를 통하여 다른 서버 프로세스가 로크를 획득하는 시점에 일관성 볼륨에서 다른 프로세스가 먼저 수정하였는지 여부를 확인하여 해당 페이지를 버퍼에서 무효화시켜 디스크에서 최신의 버전을 새로 읽어 들인다. 이 방법은 매우 작은 크기의 일관성 볼륨만을 사용하고, 액세스하는 데이터의 양이 적어서 성능이 매우 빠르다.

In a multiple-server DBMS using the share-disk model, when a server process updates data, the updated ones are not immediately reflected to the buffers of the other server processes. Thus, the other server processes may read invalid data. In this paper, we propose a novel method to solve this problem. In this method the server process stores the identifiers and timestamps of the pages that have been updated during a transaction into the coherency volume when the transaction commits. Then, the server process invalidates its buffers of the pages updated by the other server processes by accessing the coherency volume when the lock is acquired, and, subsequently, read the up-to-date versions of the pages from disk. This method needs only a very small coherency volume and shows a good performance because the amount of data that need to be accessed is very small.

키워드

참고문헌

  1. Kim, T., Design and Implementation of a Buffer-Sharing Mechanism for Extended Single User DBMSs Using Coarse-Granularity Locking, Master's Thesis, Department of Computer Science, KAIST, June 2005.
  2. Stonebraker, M., 'The Case for Shared Nothing,' A Ouarterlv Bulletin of the IEEE Computer Society Technical Committee on Database Engincering, vol.9, no.1, pp.4-9, Mar. 1986
  3. Bamford, R., Ahad, R., and Pruscino, A, 'A Scalable and Highly Available Networked Database Architecture,' In Proc. 25th Int'l Conf. on Very Large Data Bases (VLDB), pp.199-201, Sept. 1999
  4. Dan, A. and Yu, P., 'Performance Analysis of Buffer Coherency Policies in a Multisystem Data Sharing Environment,' IEEE Trans. on Parallel and Distributed Systems, vol.4, no.3, pp.289-305, Mar. 1993 https://doi.org/10.1109/71.210812
  5. Whang, K. Lee, M., Lee, J., Kim, M., and Han, W., 'Odysseus: a High-Performance ORDBMS Tightly-Coupled with IR Features,' In Proc. 21st Int'l Conf on Data Engineering (lCDE), pp.1104-1105, Demonstration Paper, Apr. 2005 https://doi.org/10.1109/ICDE.2005.95
  6. Transaction Processing Performance Council (TPC), TPC BenchmarkTM C Standard Specification, Revision 5.9, June 2007
  7. Cho, H., 'Cache Coherency and Concurrency Control in a Multisystem Data Sharing Environment,' IEICE Trans. on Information and Systems, voI.E82-D, no.6, pp.1042-1050, 1999
  8. Mohan, C. and Narang, I., 'Efficient Locking and Caching of Data in the Multi-system Shared Disks Transaction Environment,' In Proc. Int'l Conf Extending Database Technology (EDBT), Mar. 1992