Design and Performance Analysis of Caching Algorithms for Distributed Non-uniform Objects

분산 이질형 객체 환경에서 캐슁 알고리즘의 설계 및 성능 분석

  • 반효경 (서울대학교 전산과학과) ;
  • 노삼혁 (홍익대학교 정보컴퓨터공학부) ;
  • 민상렬 (서울대학교 컴퓨터공학부) ;
  • 고건 (서울대학교 전산과학과)
  • Published : 2000.06.15

Abstract

Caching mechanisms have been studied extensively to buffer the speed gap of hierarchical storages in the context of cache memory, paging system, and buffer management system. As the wide-area distributed environments such as the WWW extend broadly, caching of remote objects becomes more and more important. In the wide-area distributed environments, the cost and the benefit of caching an object is not uniform due to the location of the object; which should be considered in the cache replacement algorithms. For online operation, the time complexity of the replacement algorithm should not be excessive. To date, most replacement algorithms for the wide-area distributed environments do not meet both the non-uniformity of objects and the time complexity constraint. This paper proposes a replacement algorithm which considers the non-uniformity of objects properly; it also allows for an efficient implementation. Trace-driven simulations show that proposed algorithm outperforms existing replacement algorithms.

캐슁 기법은 저장 장치 계층 간의 속도차를 완충시키기 위해 캐쉬 메모리, 페이징 기법, 버퍼링 기법 등으로 널리 연구되어 왔다. 하지만, 최근 웹을 비롯한 다양한 광역 분산 환경의 보편화에 따라 단일 시스템 내의 저장 장치 간에 이루어지는 캐슁 기법 뿐 아니라 타 노드의 객체를 캐슁하는 기법의 중요성이 커지고 있다. 광역 분산 환경에서의 캐슁 기법은 객체의 캐슁에 드는 비용과 캐슁으로 인한 이득이 객체의 근원지 노드의 위치에 따라 이질적이기 때문에 비용 차이를 고려한 캐쉬 교체 알고리즘이 필요하다. 한편, 캐쉬 교체 알고리즘은 온라인 알고리즘으로서 매 시점 교체 대상이 되는 객체를 즉시 선택해야 하기 때문에 알고리즘의 시간 복잡도가 지나치게 높지 않아야 한다. 그러나, 광역 분산 환경에서의 교체 알고리즘에 대한 지금까지의 연구는 객체들의 이질성을 고려하는 문제와 캐쉬 운영의 시간 복잡도 측면 모두에서 만족스러운 결과를 보이지는 못하고 있다. 본 논문은 이러한 점을 극복하여 우수한 성능을 나타내면서 효율적인 구현이 가능한 새로운 교체 알고리즘을 설계하고, 그 우수성을 트레이스 기반 모의 실험을 통해 보여 준다.

Keywords

References

  1. M. Abrams, C. Standridge, G. Abdulla, S. Williams, and E. Fox, 'Caching proxies: Limitations and potentials,' Proc. 4th Int'l WWW Conf., pp.119-133, 1995
  2. P. Cao and S. Irani, 'Cost-Aware WWW Proxy Caching Algorithms,' Proc. USENIX Symp. on Internet Technology and Systems, pp. 193-206, 1997
  3. L. Belady, 'A Study of Replacement Algorithms for Virtual Storage Computers,' IBM System Journal, vol.5, pp.78-101, 1966
  4. S. Williams, M. Abrams, C. Standridge, G. Abdulla, and E. Fox, 'Removal policies in network caches for world-wide web documents,' Proc. ACM SIGCOMM, pp.293-305, 1996 https://doi.org/10.1145/248156.248182
  5. E. O'Neil, P. O'Neil, and G. Weikum, 'The LRU-k Page Replacement Algorithm for Database Disk Buffering,' Proc. ACM SIGMOD, pp. 297-306, 1993 https://doi.org/10.1145/170036.170081
  6. R. Wooster and M. Abrams, 'Proxy caching that estimates page load delays,' Proc. Sixth Int'l WWW Conf., 1997 https://doi.org/10.1016/S0169-7552(97)00041-X
  7. P. Scheuermann, J. Shim, and R. Vingralek, 'WATCHMAN: A Data Warehouse Intelligent Cache Manager,' Proc. 22nd VLDB Conf., 1996
  8. M. Garey and D. Johnson, Computers and Intractability, W. H. Freeman and Company, San Francisco, 1979
  9. J. Shim, P. Scheuermann, and R. Vingralek, 'Proxy Cache Design: Algorithms, Implementation and Performance,' IEEE Trans. on knowledge and data engineering, vol.11, no.4, 1999 https://doi.org/10.1109/69.790804
  10. J. Spirn, Program Behavior: Models and Measurements, Elsevier North-Holland, 1977
  11. T. Johnson and D. Shasha, '2Q: A Low Overhead High Performance Buffer Management Replacement Algorithm,' Proc. 20th VLDB Conf., pp.439-450, 1994
  12. D. Lee, J. Choi, J. Kim, S. Noh, S. Min, Y. Cho, and C. Kim, 'On the Existence of a Spectrum of Policies that Subsumes the LRU and LFU Policies,' Proc. ACM SIGMETRICS, pp.134-143, 1999
  13. P. Lorenzetti, L. Rizzo, and L. Vicisano, 'Replacement Policies for a Proxy Cache,' Technical Report, http://www.iet.unipi.it/~luigi/caching.ps.gzeunis,1996