Memory Management for Scalable Web Data Servers

Slides:



Advertisements
Similar presentations
The Performance Impact of Kernel Prefetching on Buffer Cache Replacement Algorithms (ACM SIGMETRIC 05 ) ACM International Conference on Measurement & Modeling.
Advertisements

ULC: An Unified Placement and Replacement Protocol in Multi-level Storage Systems Song Jiang and Xiaodong Zhang College of William and Mary.
A Survey of Web Cache Replacement Strategies Stefan Podlipnig, Laszlo Boszormenyl University Klagenfurt ACM Computing Surveys, December 2003 Presenter:
Investigating Distributed Caching Mechanisms for Hadoop Gurmeet Singh Puneet Chandra Rashid Tahir.
SDN Controller Challenges
A KTEC Center of Excellence 1 Cooperative Caching for Chip Multiprocessors Jichuan Chang and Gurindar S. Sohi University of Wisconsin-Madison.
Consistency and Replication Chapter 7 Part II Replica Management & Consistency Protocols.
COS 461 Fall 1997 Workstation Clusters u replace big mainframe machines with a group of small cheap machines u get performance of big machines on the cost-curve.
Storage management and caching in PAST Antony Rowstron and Peter Druschel Presented to cs294-4 by Owen Cooper.
IO-Lite: A Unified Buffering and Caching System By Pai, Druschel, and Zwaenepoel (1999) Presented by Justin Kliger for CS780: Advanced Techniques in Caching.
Scalable Content-aware Request Distribution in Cluster-based Network Servers Jianbin Wei 10/4/2001.
1 Routing and Scheduling in Web Server Clusters. 2 Reference The State of the Art in Locally Distributed Web-server Systems Valeria Cardellini, Emiliano.
Web Caching Schemes1 A Survey of Web Caching Schemes for the Internet Jia Wang.
Beneficial Caching in Mobile Ad Hoc Networks Bin Tang, Samir Das, Himanshu Gupta Computer Science Department Stony Brook University.
1 A Comparison of Load Balancing Techniques for Scalable Web Servers Haakon Bryhni, University of Oslo Espen Klovning and Øivind Kure, Telenor Reserch.
Improving Proxy Cache Performance: Analysis of Three Replacement Policies Dilley, J.; Arlitt, M. A journal paper of IEEE Internet Computing, Volume: 3.
Decentralized resource management for a distributed continuous media server Cyrus Shahabi and Farnoush Banaei-Kashani IEEE Transactions on Parallel and.
Cooperative Caching Middleware for Cluster-Based Servers Francisco Matias Cuenca-Acuna Thu D. Nguyen Panic Lab Department of Computer Science Rutgers University.
Hardware-based Load Generation for Testing Servers Lorenzo Orecchia Madhur Tulsiani CS 252 Spring 2006 Final Project Presentation May 1, 2006.
Analysis of Web Caching Architectures: Hierarchical and Distributed Caching Pablo Rodriguez, Christian Spanner, and Ernst W. Biersack IEEE/ACM TRANSACTIONS.
Client-Server Caching James Wann April 4, Client-Server Architecture A client requests data or locks from a particular server The server in turn.
Two Techniques For Improving Distributed Database Performance ICS 214B Presentation Ambarish Dey Vasanth Venkatachalam March 18, 2004.
A Hybrid Caching Strategy for Streaming Media Files Jussara M. Almeida Derek L. Eager Mary K. Vernon University of Wisconsin-Madison University of Saskatchewan.
Caching And Prefetching For Web Content Distribution Presented By:- Harpreet Singh Sidong Zeng ECE Fall 2007.
Wide Web Load Balancing Algorithm Design Yingfang Zhang.
Locality-Aware Request Distribution in Cluster-based Network Servers Presented by: Kevin Boos Authors: Vivek S. Pai, Mohit Aron, et al. Rice University.
Network File Systems Victoria Krafft CS /4/05.
Storage management and caching in PAST PRESENTED BY BASKAR RETHINASABAPATHI 1.
P2P File Sharing Systems
Active Network Applications Tom Anderson University of Washington.
Achieving Load Balance and Effective Caching in Clustered Web Servers Richard B. Bunt Derek L. Eager Gregory M. Oster Carey L. Williamson Department of.
Hybrid Prefetching for WWW Proxy Servers Yui-Wen Horng, Wen-Jou Lin, Hsing Mei Department of Computer Science and Information Engineering Fu Jen Catholic.
Advanced Network Architecture Research Group 2001/11/149 th International Conference on Network Protocols Scalable Socket Buffer Tuning for High-Performance.
1 Design and Performance of a Web Server Accelerator Eric Levy-Abegnoli, Arun Iyengar, Junehwa Song, and Daniel Dias INFOCOM ‘99.
1 Cache Me If You Can. NUS.SOC.CS5248 OOI WEI TSANG 2 You Are Here Network Encoder Sender Middlebox Receiver Decoder.
2: Application Layer1 Chapter 2 outline r 2.1 Principles of app layer protocols r 2.2 Web and HTTP r 2.3 FTP r 2.4 Electronic Mail r 2.5 DNS r 2.6 Socket.
Segment-Based Proxy Caching of Multimedia Streams Authors: Kun-Lung Wu, Philip S. Yu, and Joel L. Wolf IBM T.J. Watson Research Center Proceedings of The.
Scalable Web Server on Heterogeneous Cluster CHEN Ge.
1 Wenguang WangRichard B. Bunt Department of Computer Science University of Saskatchewan November 14, 2000 Simulating DB2 Buffer Pool Management.
A Measurement Based Memory Performance Evaluation of High Throughput Servers Garba Isa Yau Department of Computer Engineering King Fahd University of Petroleum.
Introduction to DFS. Distributed File Systems A file system whose clients, servers and storage devices are dispersed among the machines of a distributed.
Advanced Network Architecture Research Group 2001/11/74 th Asia-Pacific Symposium on Information and Telecommunication Technologies Design and Implementation.
Effects of wrong path mem. ref. in CC MP Systems Gökay Burak AKKUŞ Cmpe 511 – Computer Architecture.
C-Hint: An Effective and Reliable Cache Management for RDMA- Accelerated Key-Value Stores Yandong Wang, Xiaoqiao Meng, Li Zhang, Jian Tan Presented by:
MiddleMan: A Video Caching Proxy Server NOSSDAV 2000 Brian Smith Department of Computer Science Cornell University Ithaca, NY Soam Acharya Inktomi Corporation.
Project Summary Fair and High Throughput Cache Partitioning Scheme for CMPs Shibdas Bandyopadhyay Dept of CISE University of Florida.
Querying the Internet with PIER CS294-4 Paul Burstein 11/10/2003.
System Models Advanced Operating Systems Nael Abu-halaweh.
Adaptive Configuration of a Web Caching Hierarchy Pranav A. Desai Jaspal Subhlok Presented by: Pranav A. Desai.
1 Design and Implementation of a High-Performance Distributed Web Crawler Polytechnic University Vladislav Shkapenyuk, Torsten Suel 06/13/2006 석사 2 학기.
Outline Introduction. Changes made to the Tycho design from last time (June 2005). Example Tycho setup. Tycho benchmark motivations and methodology. Some.
Clustered Web Server Model
Presented by Tashana Landray
Multiprocessor Cache Coherency
PA an Coordinated Memory Caching for Parallel Jobs
Auburn University COMP7500 Advanced Operating Systems I/O-Aware Load Balancing Techniques (2) Dr. Xiao Qin Auburn University.
Cluster Resource Management: A Scalable Approach
Evaluating Proxy Caching Algorithms in Mobile Environments
Cooperative Caching, Simplified
Qingbo Zhu, Asim Shankar and Yuanyuan Zhou
Distributed File Systems
Distributed File Systems
Distributed File Systems
Group Based Management of Distributed File Caches
Lecture 23: Virtual Memory, Multiprocessors
Distributed File Systems
CSE 542: Operating Systems
Performance-Robust Parallel I/O
Distributed File Systems
Simulation for Cache Mesh Design
Presentation transcript:

Memory Management for Scalable Web Data Servers S. Venkataraman, M. Livny, J. F. Naughton

Motivation Popular Web sites have heavy traffic 2 main bottlenecks CPU overhead of servicing TCP/IP connections I/O of fetching the many pages serviced CPU solution: cluster of servers connected to one File Server If each node had own subset of web site, the cluster is succeptible to skew.

Motivation (continued) Paper’s Goal: Develop buffer management techniques to best utilize the aggregate memory of the machines in the cluster to reduce I/O bottleneck.

Outline Web Server Architecture 3 Memory Management Techniques Client-Server Duplicate Elimination Hybrid Performance Evaluation Discussion

Web Server Architecture Cluster of cooperating servers connected by a fast network Each node has own disks and memory Each node runs the same copy of the server Round robin router distributes requests

Web Server Architecture: Part Deux Primary server: Server where the client request is serviced. Owner: Server that manages a persistent data item. Owners maintain a directory of copies of the data pages they own in global memory. Paper considers algorithms for read-only workloads.

Memory Management Memory Hierarchy: Primary server memory Owner memory memory at other servers disk Each request is broken into page-sized units. If Primary has page in memory, then done. Otherwise, ask Owner for it.

More on Memory Management Owner gets another node to forward page if possible. Otherwise, it gets it from disk and keeps a copy in memory. The page in Owner memory is labeled as hated. Eviction Policy: hated pages are evicted first. When primary server receives a page, it must choose another page to evict. Three algorithms (no hated pages) : Client-Server Duplicate Elimination Hybrid

Client-Server An LRU list of pages is kept. Very simple. Increases local hits. Lots of duplication possible.

Duplicate Elimination Considers the cost difference between evicting a single page (singlet) and a duplicate page. Duplicate pages eliminated first since they are cheep to fetch. 2 LRU lists: singlets and duplicates Increases the percentage of database in memory. Main Drawback: hot duplicate page is replaced before a cold singlet. But how do we keep track of duplicates?

Keeping Track of Duplicates When a page goes from singlet to duplicate: Happens during a forward, so this is trivial. (no additional messages) When a page goes from duplicate to singlet: Owner receives a message that a page was evicted. If only one copy remains, owner sends a message to that server. message can be piggy backed. (no additional messages)

Hybrids are Our Friends Estimate performance impact of eviction on the next page reference. Consider both likelihood of reference and cost of re-access. Latency of fetching page p back into memory: C(p). cost of going to disk vs. cost of going to remote memory. Likelihood that page p will be accessed next: W(p) W(p) = 1 / (Elapsed time since last reference) Expected cost: E(p) = W(p) * C(p)

More on Hybrid Algorithm Two LRU lists maintained just like Duplicate Elimination At eviction, heads of the two lists are compared. Replace page with lower Expected Cost

Simulation Model and Workload 8 nodes of 64 MB each. Message cost: 1ms/page Link Bandwidth 15MB / sec All files are the same size. Access frequency: Zipfian distribution. zipf parameter controls wide range of skews zipf of zero means access frequencies are uniform Pages of files are declustered among all servers.

And the survey says . . . Duplication is good at high skews, but bad at low skews At low skews (uniform access frequency): Duplicate elimination has good global memroy utilization. At high skews (zipf over 1) Client-Server keeps hot pages at all nodes in memory duplication is good Hybrid nears the performance of the better choice in both scenarios. Varying database size, using diverse file sizes, and more nodes gave similar results.

Discussion Web sites have predictable hit rates, can that be used somehow? Can we recycle evicted pages?