Cooperative Caching Middleware for Cluster-Based Servers Francisco Matias Cuenca-Acuna Thu D. Nguyen Panic Lab Department of Computer Science Rutgers University.

Slides:



Advertisements
Similar presentations
A KTEC Center of Excellence 1 Cooperative Caching for Chip Multiprocessors Jichuan Chang and Gurindar S. Sohi University of Wisconsin-Madison.
Advertisements

Consistency and Replication Chapter 7 Part II Replica Management & Consistency Protocols.
MASSIVE ARRAYS OF IDLE DISKS FOR STORAGE ARCHIVES D. Colarelli D. Grunwald U. Colorado, Boulder.
Energy Conservation in Datacenters through Cluster Memory Management and Barely-Alive Memory Servers Vlasia Anagnostopoulou Susmit.
What’s the Problem Web Server 1 Web Server N Web system played an essential role in Proving and Retrieve information. Cause Overloaded Status and Longer.
A Server-less Architecture for Building Scalable, Reliable, and Cost-Effective Video-on-demand Systems Jack Lee Yiu-bun, Raymond Leung Wai Tak Department.
Scalable Content-aware Request Distribution in Cluster-based Network Servers Jianbin Wei 10/4/2001.
An Adaptable Benchmark for MPFS Performance Testing A Master Thesis Presentation Yubing Wang Advisor: Prof. Mark Claypool.
Web Caching Schemes1 A Survey of Web Caching Schemes for the Internet Jia Wang.
1 Principles of Reliable Distributed Systems Tutorial 12: Frangipani Spring 2009 Alex Shraer.
Dark and Panic Lab Computer Science, Rutgers University1 Impact of Layering and Faults on Availability and its End-to-End Implications Ricardo Bianchini,
Dark and Panic Lab Computer Science, Rutgers University1 Evaluating the Impact of Communication Architecture on Performability of Cluster-Based Services.
CSE 190: Internet E-Commerce Lecture 16: Performance.
Improving Proxy Cache Performance: Analysis of Three Replacement Policies Dilley, J.; Arlitt, M. A journal paper of IEEE Internet Computing, Volume: 3.
Energy Efficient Prefetching – from models to Implementation 6/19/ Adam Manzanares and Xiao Qin Department of Computer Science and Software Engineering.
Locality-Aware Request Distribution in Cluster-based Network Servers 1. Introduction and Motivation --- Why have this idea? 2. Strategies --- How to implement?
Improving Proxy Cache Performance: Analysis of Three Replacement Policies John Dilley and Martin Arlitt IEEE internet computing volume3 Nov-Dec 1999 Chun-Fu.
Rutgers PANIC Laboratory The State University of New Jersey Self-Managing Federated Services Francisco Matias Cuenca-Acuna and Thu D. Nguyen Department.
Efficient replica maintenance for distributed storage systems Byung-Gon Chun, Frank Dabek, Andreas Haeberlen, Emil Sit, Hakim Weatherspoon, M. Frans Kaashoek,
1 Migratory TCP: Connection Migration for Service Continuity in the Internet* Florin Sultan, Kiran Srinivasan, Deepa Iyer, Liviu Iftode Department of Computer.
Internet Cache Pollution Attacks and Countermeasures Yan Gao, Leiwen Deng, Aleksandar Kuzmanovic, and Yan Chen Electrical Engineering and Computer Science.
A Hybrid Caching Strategy for Streaming Media Files Jussara M. Almeida Derek L. Eager Mary K. Vernon University of Wisconsin-Madison University of Saskatchewan.
Content Delivery Networks. History Early 1990s sees 100% growth in internet traffic per year 1994 o Netscape forms and releases their first browser.
Locality-Aware Request Distribution in Cluster-based Network Servers Presented by: Kevin Boos Authors: Vivek S. Pai, Mohit Aron, et al. Rice University.
Web Server Load Balancing/Scheduling Asima Silva Tim Sutherland.
23 September 2004 Evaluating Adaptive Middleware Load Balancing Strategies for Middleware Systems Department of Electrical Engineering & Computer Science.
1 Exploring Data Reliability Tradeoffs in Replicated Storage Systems NetSysLab The University of British Columbia Abdullah Gharaibeh Advisor: Professor.
Achieving Load Balance and Effective Caching in Clustered Web Servers Richard B. Bunt Derek L. Eager Gregory M. Oster Carey L. Williamson Department of.
CSC 456 Operating Systems Seminar Presentation (11/13/2012) Leon Weingard, Liang Xin The Google File System.
CS An Overlay Routing Scheme For Moving Large Files Su Zhang Kai Xu.
M i SMob i S Mob i Store - Mobile i nternet File Storage Platform Chetna Kaur.
On the Scale and Performance of Cooperative Web Proxy Caching University of Washington Alec Wolman, Geoff Voelker, Nitin Sharma, Neal Cardwell, Anna Karlin,
Emalayan Vairavanathan
DISTRIBUTED COMPUTING
Scalable Web Server on Heterogeneous Cluster CHEN Ge.
Building a Parallel File System Simulator E Molina-Estolano, C Maltzahn, etc. UCSC Lab, UC Santa Cruz. Published in Journal of Physics, 2009.
Autonomous Replication for High Availability in Unstructured P2P Systems Francisco Matias Cuenca-Acuna, Richard P. Martin, Thu D. Nguyen
Company name KUAS HPDS dRamDisk: Efficient RAM Sharing on a Commodity Cluster Vassil Roussev, Golden G. Richard Reporter :
Amy Apon, Pawel Wolinski, Dennis Reed Greg Amerson, Prathima Gorjala University of Arkansas Commercial Applications of High Performance Computing Massive.
Euro-Par, A Resource Allocation Approach for Supporting Time-Critical Applications in Grid Environments Qian Zhu and Gagan Agrawal Department of.
CEPH: A SCALABLE, HIGH-PERFORMANCE DISTRIBUTED FILE SYSTEM S. A. Weil, S. A. Brandt, E. L. Miller D. D. E. Long, C. Maltzahn U. C. Santa Cruz OSDI 2006.
Architecture for Caching Responses with Multiple Dynamic Dependencies in Multi-Tier Data- Centers over InfiniBand S. Narravula, P. Balaji, K. Vaidyanathan,
Quantitative Evaluation of Unstructured Peer-to-Peer Architectures Fabrício Benevenuto José Ismael Jr. Jussara M. Almeida Department of Computer Science.
An Effective Disk Caching Algorithm in Data Grid Why Disk Caching in Data Grids?  It takes a long latency (up to several minutes) to load data from a.
Data Replication and Power Consumption in Data Grids Susan V. Vrbsky, Ming Lei, Karl Smith and Jeff Byrd Department of Computer Science The University.
1 Virtual Machine Memory Access Tracing With Hypervisor Exclusive Cache USENIX ‘07 Pin Lu & Kai Shen Department of Computer Science University of Rochester.
PROP: A Scalable and Reliable P2P Assisted Proxy Streaming System Computer Science Department College of William and Mary Lei Guo, Songqing Chen, and Xiaodong.
Computer Science Lecture 14, page 1 CS677: Distributed OS Last Class: Concurrency Control Concurrency control –Two phase locks –Time stamps Intro to Replication.
Rassul Ayani 1 Performance of parallel and distributed systems  What is the purpose of measurement?  To evaluate a system (or an architecture)  To compare.
Improving Disk Throughput in Data-Intensive Servers Enrique V. Carrera and Ricardo Bianchini Department of Computer Science Rutgers University.
HADOOP DISTRIBUTED FILE SYSTEM HDFS Reliability Based on “The Hadoop Distributed File System” K. Shvachko et al., MSST 2010 Michael Tsitrin 26/05/13.
Adaptive Content-Aware Scaling for Improved Video Streaming. Avanish Tripathi Advisor: Mark Claypool Reader: Bob Kinicki.
MiddleMan: A Video Caching Proxy Server NOSSDAV 2000 Brian Smith Department of Computer Science Cornell University Ithaca, NY Soam Acharya Inktomi Corporation.
Transforming Policies into Mechanisms with Infokernel Andrea C. Arpaci-Dusseau, Remzi H. Arpaci-Dusseau, Nathan C. Burnett, Timothy E. Denehy, Thomas J.
/ Fast Web Content Delivery An Introduction to Related Techniques by Paper Survey B Li, Chien-chang R Sung, Chih-kuei.
Cluster computing. 1.What is cluster computing? 2.Need of cluster computing. 3.Architecture 4.Applications of cluster computing 5.Advantages of cluster.
Taeho Kgil, Trevor Mudge Advanced Computer Architecture Laboratory The University of Michigan Ann Arbor, USA CASES’06.
A Practical Performance Analysis of Stream Reuse Techniques in Peer-to-Peer VoD Systems Leonardo B. Pinho and Claudio L. Amorim Parallel Computing Laboratory.
Clustered Web Server Model
Web Server Load Balancing/Scheduling
Distributed Cache Technology in Cloud Computing and its Application in the GIS Software Wang Qi Zhu Yitong Peng Cheng
Web Server Load Balancing/Scheduling
Memory Management for Scalable Web Data Servers
On the Scale and Performance of Cooperative Web Proxy Caching
Supporting Fault-Tolerance in Streaming Grid Applications
Distributed Shared Memory
Cooperative Caching, Simplified
Qingbo Zhu, Asim Shankar and Yuanyuan Zhou
Performance-Robust Parallel I/O
L. Glimcher, R. Jin, G. Agrawal Presented by: Leo Glimcher
Presentation transcript:

Cooperative Caching Middleware for Cluster-Based Servers Francisco Matias Cuenca-Acuna Thu D. Nguyen Panic Lab Department of Computer Science Rutgers University

Our work Goal –Provide a mechanism to co-manage memory of cluster-based servers –Deliver a generic solution that can be reused by Internet servers and file systems Motivation –Emerging Internet computing model based on infrastructure services like Google, Yahoo! and others » Being built on clusters: scalability, fault-tolerance –It’s hard to build efficient cluster-based servers »Dealing with distributed memory »If memories are used independently, servers only perform well when the working set fits on a single node

Previous solutions Request distribution based on load and data affinity Web Server FS Web Server FS Web Server FS Web Server FS Web Server FS Network A A Front end

Previous solutions Web Server FS Web Server FS Web Server FS Web Server FS Web Server FS Network A A Distributed front end Request distribution based on load and data affinity Round Robin req.distribution

Our approach Web Server FS Web Server FS Web Server FS Web Server FS Web Server FS Network A A Cooperative block caching and global block replacement Round Robin req distribution

Our approach Web Server FS Web Server FS Web Server FS Web Server FS Web Server FS Network Round Robin req distribution Other uses for our CC layer

Why cooperative caching and what do we give up? Advantages of our approach –Generality »By presenting a block-level abstraction »Can be used across very different applications such as web servers and file systems »Doesn’t need any application knowledge –Reusability »By presenting it as a generic middleware layer Disadvantages of our approach –Generality + no application knowledge  possible performance loss –How much?

Our contributions Study carefully why cooperative caching, as designed for cooperative client caching to reduce server load, does not perform as well as content-aware request distribution When compared to a web server that uses content-aware request distribution –Lose 70% when using a traditional CC algorithm –Lose only 8% when using our adapted version (CCM) Adapt cooperative caching to better suit cluster based servers –Trade lower local hit rates for higher total hit rates (local + global)

Our cooperative caching algorithm (CCM) Files are distributed across all nodes –No replication –The node holding a file on disk is called the file’s home –Homes are responsible for tracking blocks in memory Master blocks and non-master blocks –There is only one master block for each block/file in memory –CCM only tracks master blocks Hint based block location –Algorithm based on Dahlin et. al (1994) –Nodes have approximate knowledge of block location and may have to follow a chain of nodes to get to it

Replacement mechanisms Each node maintains local LRU lists Exchange age hints when forwarding blocks –Piggyback age of oldest block Replacement –Victim is a local block: evict –Victim is a master block: »If oldest block in cluster according to age hints, evict »Otherwise, forward to peer with oldest block

Example of CCM at work b mc mpnf home Request b Forward b mc Request b b b

Assessing performance Compare a CCM-based web server against one that uses content-aware request distribution –L2S (HPDC 2000) »Efficient and scalable »Application-specific request distribution »Maintain global information »File based caching Event driven simulation –The same simulator used in L2S The platform we simulate is equivalent to: –1Gbps VIA LAN –Clusters of 4 & 8 nodes with single 800Mhz Pentium III –IDE hard drive on each node

Workload Four WWW traces: Drive server as fast as possible

Results Throughput for Clarknet on 8 nodes

Hit Rate Hit rate distribution on CCM-BasicHit rate distribution on CCM Total hit rate

Normalized throughput Throughput normalized versus L2S

Resource utilization CCM’s resource utilization

Scalability Throughput when running on varying cluster sizes

Further results Performance differences between CCM and L2S may be affected by: –L2S’s use of TCP hand-off –L2S’s assumption that files are replicated everywhere –Refer to paper for estimates of potential performance difference due to these factors Current work –Limit the amount of metadata maintained by CCM »To reduce memory usage »Discard outdated information –Lazy eviction and forwarding notification »On average finds a block with 1.1 hops (vs. 2.4) »10% response time decrease »2% throughput increase

Conclusions A generic block-based cooperative caching algorithm can efficiently co-manage cluster memory –CCM performs almost as well as a highly optimized content aware request distribution web server –CCM scales linearly with cluster size –Presenting a block-based solution to a file-based application only led to a small performance loss  should work great for block-based applications CCM achieves high-performance by using a new replacement algorithm well-suited to a server environment –Trades off local hit rates and network bandwidth for increased total hit rates –Right trade-off given current network and disk technology trends

Future & related work Future Work –Investigate the importance of load-balancing –Provide support for writes –Validate simulation results with implementation Some Related Work –PRESS (PPoPP 2001) –L2S (HPDC 2000) –LARD (ASPLOS 1998) –Cooperative Caching (OSDI 1994) –Cluster-Based Scalable Network Services (SOSP 1997)

Thanks to Liviu Iftode Ricardo Bianchini Vinicio Carreras Xiaoyan Li Want more information?

Extra slides – Simulation parameters

Extra slides – Response time Response time normalized versus L2S

Extra slides – Hops vs. hit rate Number of hops versus hit rate

Extra slides – Traces characteristics

Extra slides – Using location hints b mc mpnf home Request b Forward b mc Request b b b