This Article 
 Bibliographic References 
 Add to: 
Coordinated Placement and Replacement for Large-Scale Distributed Caches
November/December 2002 (vol. 14 no. 6)
pp. 1317-1329

Abstract—In a large-scale information system such as a digital library or the web, a set of distributed caches can improve their effectiveness by coordinating their data placement decisions. Using simulation, we examine three practical cooperative placement algorithms, including one that is provably close to optimal, and we compare these algorithms to the optimal placement algorithm and several cooperative and noncooperative replacement algorithms. We draw five conclusions from these experiments: 1) Cooperative placement can significantly improve performance compared to local replacement algorithms, particularly when the size of individual caches is limited compared to the universe of objects; 2) although the amortizing placement algorithm is only guaranteed to be within 14 times the optimal, in practice it seems to provide an excellent approximation of the optimal; 3) in a cooperative caching scenario, the recent greedy-dual local replacement algorithm performs much better than the other local replacement algorithms; 4) our hierarchical-greedy-dual replacement algorithm yields further improvements over the greedy-dual algorithm especially when there are idle caches in the system; and 5) a key challenge to coordinated placement algorithms is generating good predictions of access patterns based on past accesses.

[1] C. Bowman, P. Danzig, D. Hardy, U. Manber, and M. Schwartz, “The Harvest Information Discovery and Access System,” Proc. Second Int'l World Wide Web Conf., pp. 763-771, Oct. 1994.
[2] P. Cao and S. Irani, “Cost-Aware WWW Proxy Caching Algorithms, Proc. 1997 USENIX Symp. Internet Technology and Systems, pp. 193-206, Dec. 1997.
[3] A. Chankhunthod, P. Danzig, C. Neerdaels, M. Schwartz, and K. Worrell, “A Hierarchical Internet Object Cache,” Proc. USENIX Technical Conf., pp. 22-26, Jan. 1996.
[4] Digital Equipment Corp.,“Web Proxy Traces,” . Sept. 1996.
[5] M.D. Dahlin, R.Y. Wang, T.E. Anderson, and D.A. Patterson, “Cooperative Caching: Using Remote Client Memory to Improve File System Performance,” Proc. First Symp. Operating Systems Design and Implementation, pp. 267-280, Nov. 1994.
[6] L. Fan et al., "Summary Cache: A Scalable Wide-Area Web Cache Sharing Protocol," Computer Communication Review, Vol. 28, No. 4, Oct. 1998, pp. 254-265.
[7] M. Feeley, W. Morgan, F. Pighin, A. Karlin, H. Levy, and C. Thekkath, “Implementing Global Memory Management in a Workstation Cluster,” Proc. 15th ACM Symp. Operating Systems Principles, Dec. 1995.
[8] S. Gadde, M. Rabinovich, and J. Chase, "Reduce, Reuse, Recycle: An Approach to Building Large Internet Caches," Proc. Sixth Workshop on Hot Topics in Operating Systems, IEEE Computer Soc. Press, Los Alamitos, Calif., 1997.
[9] J. Gwertzman and M. Seltzer, "The Case for Geographical Push Caching," Proc. Workshop Hot Operating Systems, 1995.
[10] A. Heddaya and S. Mirdad, “WebWave: Globally Load Balanced Fully Distributed Caching of Hot Published Documents,” Proc. 17th Int'l Conf. Distributed Computing Systems, pp. 160-168, May 1997.
[11] S. Irani, “Page Replacement with Multisize Pages and Applications to Web Caching,” Proc. 29th Ann. ACM Symp. Theory of Computing, pp. 701-710, May 1997.
[12] D. Karger, E. Lehman, F.T. Leighton, M. Levine, D. Lewin, and R. Panigrahy, “Consistent Hashing and Random Trees: Distributed Caching Protocols for Relieving Hot Spots on the World Wide Web,” Proc. 29th Ann. ACM Symp. Theory of Computing, pp. 654-663, May 1997.
[13] M.R. Korupolu, C.G. Plaxton, and R. Rajaraman, “Placement Algorithms for Hierarchical Cooperative Caching,” Proc. 10th Ann. ACM-SIAM Symp. Discrete Algorithms, pp. 586-595, Jan. 1999. invited to appear in the special issue ofJ. Algorithmsdevoted to selected papers from SODA, 1999.
[14] A. Leff, J. Wolf, and P.S. Yu, "Replication algorithms in a remote caching architecture," IEEE Trans. Parallel and Distributed Systems, vol. 4, no. 11, pp. 1,185-1,204, Nov. 1993.
[15] C.G. Plaxton and R. Rajaraman, “Fast Fault-Tolerant Concurrent Access to Shared Objects,” Proc. 37th Ann. IEEE Symp. Foundations of Computer Science, pp. 570-579, Oct. 1996.
[16] M. Rabinovich, I. Rabinovich, and R. Rajaraman, “Dynamic Replication on the Internet,” Technical Report HA6177000-980305-01-TM, AT&T Labs-Research, Apr. 1998.
[17] L. Rizzo and L. Vicisano, “Replacement Policies for a Proxy Cache,” Technical Report RN-98-13, Dept. of Computer Science, Univ. College, London, 1998.
[18] A. Rousskov and D. Wessels, “Cache Digests,” Proc. Third Int'l Web Caching Workshop,, June 1998.
[19] R. Tewari, M. Dahlin, H.M. Vin, and J. Kay, Beyond Hierarchies: Design Considerations for Distributed Caching on the Internet Proc. 19th Int'l Conf. Distributed Computing Systems (ICDCS), June 1999.
[20] M. van Steen, F.J. Hauck, and A.S. Tanenbaum, “A Model for Worldwide Tracking of Distributed Objects,” Proc. 1996 Conf. Telecomm. Information Networking Architecture (TINA '96), pp. 203-212, Sept. 1996.
[21] S. Williams et al., "Removal Policies in Network Caches for World Wide Web Documents," Applications, Technologies, Architectures, and Protocols for Computer Communications, ACM Press, New York, 1996, pp. 293-305.
[22] O. Wolfson, S. Jajodia, and Y. Huang, “An Adaptive Data Replication Algorithm,” ACM Trans. Database Systems, vol. 22, no. 4, pp. 255-314, June 1997.
[23] A. Wolman, G.M. Voelker, N. Sharma, N. Cardwell, A. Karlin, and H.M. Levy, “On the Scale and Performance of Cooperative Web Proxy Caching,” Proc. 17th ACM Symp. Operating Systems Principles, pp. 16-31, 1999.
[24] N.E. Young, “On-Line File Caching,” Proc. Ninth Ann. ACM-SIAM Symp. Discrete Algorithms, pp. 82-86, Jan. 1998.
[25] P.S. Yu and E.A. MacNair, “Performance Study of a Collaborative Method for Hierarchical Caching in Proxy Servers,” Computer Networks and ISDN Systems, vol. 30, nos. 1-7, pp. 215-224, Apr. 1998.
[26] L. Zhang, S. Floyd, and V. Jacobson, “Adaptive Web Caching,” Proc. NLANR Web Cache Workshop, June 1997.

Index Terms:
Cache, cooperative, distributed, hierarchical, placement, replacement, web.
Madhukar R. Korupolu, Michael Dahlin, "Coordinated Placement and Replacement for Large-Scale Distributed Caches," IEEE Transactions on Knowledge and Data Engineering, vol. 14, no. 6, pp. 1317-1329, Nov.-Dec. 2002, doi:10.1109/TKDE.2002.1047770
Usage of this product signifies your acceptance of the Terms of Use.