Load Balancing in Distributed Web Server Systems With Partial Document Replication



Similar documents
Content Delivery Networks. Shaxun Chen April 21, 2009

1. Comments on reviews a. Need to avoid just summarizing web page asks you for:

CHAPTER 5 WLDMA: A NEW LOAD BALANCING STRATEGY FOR WAN ENVIRONMENT

The Effectiveness of Request Redirection on CDN Robustness

Measuring the Performance of Prefetching Proxy Caches

Document distribution algorithm for load balancing on an extensible Web server architecture

International Journal of Scientific & Engineering Research, Volume 4, Issue 11, November ISSN

Lecture 3: Scaling by Load Balancing 1. Comments on reviews i. 2. Topic 1: Scalability a. QUESTION: What are problems? i. These papers look at

Fault-Tolerant Framework for Load Balancing System

Web Load Stress Testing

All-Flash Arrays Weren t Built for Dynamic Environments. Here s Why... This whitepaper is based on content originally posted at

Purpose-Built Load Balancing The Advantages of Coyote Point Equalizer over Software-based Solutions

Server Traffic Management. Jeff Chase Duke University, Department of Computer Science CPS 212: Distributed Information Systems

MEASURING WORKLOAD PERFORMANCE IS THE INFRASTRUCTURE A PROBLEM?

Content-Aware Load Balancing using Direct Routing for VOD Streaming Service

HyLARD: A Hybrid Locality-Aware Request Distribution Policy in Cluster-based Web Servers

How To Model A System

A Content-Based Load Balancing Algorithm for Metadata Servers in Cluster File Systems*

How To Balance A Web Server With Remaining Capacity

CHAPTER 4 PERFORMANCE ANALYSIS OF CDN IN ACADEMICS

Chapter 2 TOPOLOGY SELECTION. SYS-ED/ Computer Education Techniques, Inc.

Energy Efficient MapReduce

Shoal: IaaS Cloud Cache Publisher

Content Delivery Networks

A Novel Data Placement Model for Highly-Available Storage Systems

Optimization of Cluster Web Server Scheduling from Site Access Statistics

Figure 1. The cloud scales: Amazon EC2 growth [2].

Solbox Cloud Storage Acceleration

Real-Time Analysis of CDN in an Academic Institute: A Simulation Study

Direct NFS - Design considerations for next-gen NAS appliances optimized for database workloads Akshay Shah Gurmeet Goindi Oracle

SAN Conceptual and Design Basics

Rackspace Cloud Databases and Container-based Virtualization

Storage Systems Autumn Chapter 6: Distributed Hash Tables and their Applications André Brinkmann

Topics. 1. What is load balancing? 2. Load balancing techniques 3. Load balancing strategies 4. Sessions 5. Elastic load balancing

AN ADAPTIVE DISTRIBUTED LOAD BALANCING TECHNIQUE FOR CLOUD COMPUTING

A New Nature-inspired Algorithm for Load Balancing

A Case for Dynamic Selection of Replication and Caching Strategies

Content Delivery Networks

CS2510 Computer Operating Systems

CS2510 Computer Operating Systems

PARALLELS CLOUD STORAGE

Concept of Cache in web proxies

Globule: a Platform for Self-Replicating Web Documents

Keywords: Dynamic Load Balancing, Process Migration, Load Indices, Threshold Level, Response Time, Process Age.

Big Fast Data Hadoop acceleration with Flash. June 2013

The old Internet. Software in the Network: Outline. Traditional Design. 1) Basic Caching. The Arrival of Software (in the network)

SwiftStack Global Cluster Deployment Guide

OpenFlow Based Load Balancing

Cloud Storage. Parallels. Performance Benchmark Results. White Paper.

The Case for Massive Arrays of Idle Disks (MAID)

ADAPTIVE LOAD BALANCING FOR CLUSTER USING CONTENT AWARENESS WITH TRAFFIC MONITORING Archana Nigam, Tejprakash Singh, Anuj Tiwari, Ankita Singhal

Project Proposal. Data Storage / Retrieval with Access Control, Security and Pre-Fetching

DATA COMMUNICATOIN NETWORKING

The Feasibility of Supporting Large-Scale Live Streaming Applications with Dynamic Application End-Points

Load Balancing in Structured Overlay Networks. Tallat M. Shafaat

Copyright 1

Web Caching and CDNs. Aditya Akella

Web DNS Peer-to-peer systems (file sharing, CDNs, cycle sharing)

The Advantages and Disadvantages of Network Computing Nodes

NAND Flash Architecture and Specification Trends

Speeding Up Cloud/Server Applications Using Flash Memory

How To Load Balance On A Bgg On A Network With A Network (Networking) On A Pc Or Ipa On A Computer Or Ipad On A 2G Network On A Microsoft Ipa (Netnet) On An Ip

DYNAMIC LOAD BALANCING IN CLIENT SERVER ARCHITECTURE

Integrating the F5 BigIP with Blackboard

Enterprise Architectures for Large Tiled Basemap Projects. Tommy Fauvell

Experimentation with the YouTube Content Delivery Network (CDN)

Measuring the Web: Part I - - Content Delivery Networks. Prof. Anja Feldmann, Ph.D. Dr. Ramin Khalili Georgios Smaragdakis, PhD

BASICS OF SCALING: LOAD BALANCERS

Deploying and Optimizing SQL Server for Virtual Machines

A Review of Customized Dynamic Load Balancing for a Network of Workstations

USING VIRTUAL MACHINE REPLICATION FOR DYNAMIC CONFIGURATION OF MULTI-TIER INTERNET SERVICES

Hadoop Cluster Applications

Development of Software Dispatcher Based. for Heterogeneous. Cluster Based Web Systems

Scalability of web applications. CSCI 470: Web Science Keith Vertanen

Recommendations for Performance Benchmarking

Internet Content Distribution

Comprehending the Tradeoffs between Deploying Oracle Database on RAID 5 and RAID 10 Storage Configurations. Database Solutions Engineering

Adaptive Tolerance Algorithm for Distributed Top-K Monitoring with Bandwidth Constraints

Windows Server 2008 R2 Hyper-V Live Migration

GraySort on Apache Spark by Databricks

Building a Highly Available and Scalable Web Farm

FAST 11. Yongseok Oh University of Seoul. Mobile Embedded System Laboratory

RAID Performance Analysis

Tushar Joshi Turtle Networks Ltd

Real-Time Handling of Network Monitoring Data Using a Data-Intensive Framework

TRUFFLE Broadband Bonding Network Appliance. A Frequently Asked Question on. Link Bonding vs. Load Balancing

Understanding Data Locality in VMware Virtual SAN

Load Balancing of DNS-Based Distributed Web Server Systems with Page Caching

High Performance Cluster Support for NLB on Window

Load balancing using Remote Method Invocation (JAVA RMI)

Take An Internal Look at Hadoop. Hairong Kuang Grid Team, Yahoo! Inc

Building Reliable, Scalable AR System Solutions. High-Availability. White Paper

1 How to Monitor Performance

How To Understand The Power Of A Content Delivery Network (Cdn)

Transcription:

Load Balancing in Distributed Web Server Systems With Partial Document Replication Ling Zhuo, Cho-Li Wang and Francis C. M. Lau Department of Computer Science and Information Systems The University of Hong Kong Presented by: Cho-Li Wang 1

Outline Introduction Extensible Distributed Web Server (EDWS) Document Distribution in DWS Three Algorithms Greedy-cost Greedy-load/cost Greedy-penalty Performance Evaluation Conclusion & Future Work 2

The Challenges 1996: Netscape Web site (November): 120M hits per day 1998: Olympic Winter Games (Japan): 634.7M (16 days), peak day 57M. 1999: Winbledon, 942 M hits (14 days), peak day 125M, (> 7K hits/sec) 2000: Olympic Games 2000 : peak day 502.6 M, peak 10K/s 3

The Challenges More people are getting online How many online: 407 million in November 2000 to 544 million in February 2002. More broadband users: 57% of the workers in U.S access Internet via broadband in office. The figure will be more than 90% by 2005. Home broadband user will also increase from less than 9M 2001 to over 55M by 2005 [IDG report] The increasing popularity of the World Wide Web has resulted in large bandwidth demands which translate into high latencies (response time) perceived by Web users. 4

Ways To Reduce Response Time Web Proxy Caching Web Proxy (e.g., Squid) More Powerful Web Server A monolithic Web Server advance hardware support (E.g., SMP, faster backbone network) and optimized server software (E.g., JAWS, Flash, ) A Cluster Web Server : With high-speed load balancing switch (Layer 7/4 dispatching), Cooperative Caching,.. E.g., SWEB, LARD, LVS+Apache, and HKU s p- Jigsaw and Cyclone. 5

Extensible Distributed Web Server (EDWS) client Client Server node Internet Central server node Server node client Server node Master Request Redirector client Allow new server nodes to be added Request redirection (1st time) 6

Extensible Distributed Web Server Main Features of EDWS Traffic/Load is distributed over multiple server nodes Allow servers to be added or removed. No full mirroring of Web site documents Using standard HTTP Redirection protocol for routing the Web requests Periodically replicate and re-distribute documentations among servers based on access record of last period and the current configuration to achieve load balancing. 7

Document Distribution Scheme Document distribution scheme: Rules that determine how documents are replicated and placed in a DWS Performance Issues Load balancing Communication cost of document redistribution 8

Existing Schemes Full replication : NCSA server Waste of storage resources DNS-based dispatching : Partial control on incoming requests Non replication : DCWS, SWEB Content-aware routing : Bottleneck in the central dispatcher Load balancing through Document Migration; can not deal with hot documents. Partial replication : Content-based routing Load balancing through statically or dynamically replication and redistribution of documents based on current global load status 9

Existing Partial-replication Schemes Dynamic Approaches Documents are dynamically replicated based on current global load status E.g., DC-Apache (Univ. of Arizona), P-Jigsaw Parallel Web Server (HKU), WhizzTech s WhizzBee. Static Approaches Documents are replicated and placed statically based on past access pattern E.g., RobustWeb Disadvantage Cannot achieve good load balancing Traffic caused by updating the document replication and distribution is rarely discussed 10

Overview of Document Distribution Scheme in EDWS Main Steps : Analyzing the access log files, and computing the weight of each document w = access rate in the last period * size representing the predicted workload a document to bring to the EDWS Apply the density algorithm to compute the replica number of each document with the consideration of disk space limit Distributing the documents and their replicas to the server nodes 11

Storage Limit vs. Load Balancing Each Document size weight size weight Storage Limitation Each Server Weight Limitation 12

Density Algorithm A document s density represents the predicted workload per unit storage of a document brings to a server (You can view it as popularity ). d = w / size of the document Number of replicas proportional to density Duplicate more copies for frequently requested documents ( hot pages ) -- More effective for load balancing Maximize storage utilization: Replicating as many documents as the storage capacity allows 13

Density Algorithm Input: d i, s i, C, M, N, Variables: Output: c i (i =1, N) S, total size of document S_disk, available disk space; d min, minimal density temp_s, total size of temporary replicas temp_c i, temporary number of replicas Main Steps: 1.compute S, S_disk = M * C - S 2.sort documents by decreasing density d i,and find d min 3.for i = 1 to N {temp_c i = d i / d min } compute temp_s 4.for i = 1 to N { c i = temp_c i * S_disk / temp_s /* scaling */ if (c i >= M-1){ c i = M-1, temp_s = temp_s temp_c i * s i S_disk = S_disk c i * s i }} 5.finally decide c i (i = 1, N) /* ++c i */ 14

Distributing the Replicas Main goals Balancing the load among the server nodes Minimizing document redistribution traffic Method: A cost link is constructed between each document and each server cost link (redistribution cost) = 0 (if local) or the size of the document (if remote) Optimization Problem: NP-hard, see a brief proof in the paper 15

Problem Formulation N documents, M servers Each document has size of s i and number of replicas c i, i = 1, N. cost link p ij : the number of bytes to be transferred if document i is assigned to server j; for i = 1, N and j = 1, M Replica assignment: t ijl (l = 1, c i ), 1 iflth replica of ith document is placed on jth server; otherwise 0. The determination of c i is under the limitation of total storage, i.e.,. N i= 1 ( s c ) M * C i i 16

Cost Link : An Example 0 A Size of A P A1 = 0 P A2 = size of A A B C C Server 1 Server 2 N documents, M servers. Each document has size of s i and number of replicas c i, i = 1, N. cost link p ij : the number of bytes to be transferred if document i is assigned to server j; for i = 1, N and j = 1, M 17

Cost Link B 0 Size of B A B C C Server 1 Server 2 P B1 = 0 P B2 = size of B 18

Cost Link 0 0 C A B C C Server 1 Server 2 P C1 = 0 P C2 =0 19

Algorithm 1 : Greedy-cost (GC) Basic idea: Minimizing redistribution cost by keeping as many documents as where they are located No consideration of load balancing No guarantee hot pages are fully duplicated How? Sort the pairs (document, server node) by the value of cost link ( p ij ) between them, increasingly, and distribute the documents in this order Possible Disadvantages: Cannot adapt to the change of access pattern quickly 20

Algorithm 1 : Greedy-cost (GC) Input: c i, s i, p ij, C, M, N Output: t ijl (i = 1, N, j = 1, M, l = 1, c i ) 1.sort (i, j) pairs by increasing cost, p ij 2.for each (i, j) in the sorted list{ if (c i > 0) { allocate a replica to server j if it has enough space and t ijl = 0 (l = 1, c i ). c i = c i 1 }} 21

Algorithm 2 : Greedy-load/cost Basic idea: Mainly consider the load balancing Enforce popular Web pages being fully duplicated Also consider the redistribution cost How? Sort the documents by their densities decreasingly and distribute the documents in this order -- process popular web pages first. For each document i, sort the cost link p ij increasingly, and select the top c i servers in this order. If same cost link value, select the server assigned with least workload at that time (enhance load balancing). Possible Disadvantages: May not effectively reduce redistribution cost based on the above process order as it proposes. 22

Penalty due to different processing order : At time t 1 At time t 2 C C B 0 A Server 1 B 0 A Server 1 Size of B Size of B D Server 2 D Server 2 Delay distributing B until time t2, server 1 may already be almost full. Penalty = size of B 0 23

Algorithm 3 : Greedy-penalty Basic idea: Reduce the total traffic by determining a certain documents distribution order -- General Assignment Problem How? Sort the documents by their densities decreasingly At each loop, for each remaining replica set i, we compute penalty, f i as the difference in the costs of its best and second best placements that incurs less communication cost. Select and process the replica set with least penalty (favor smaller page) and distribute it and its replicas. Disadvantage: More computation needed: each loop we need to find the document with least penalty. 24

Algorithm 3 : Greedy-penalty Input: c i, p ij, s i, C, M, N Output: t ijl (i = 1, N, j = 1, M, l = 1, c i ) Variables: f j, penalty for document i (i = 1, N) while there are unassigned replica sets { for each unassigned replica set i{ if only c i server nodes have enough storage to hold document i{ allocate replica set i goto while /* completed */} else { sort servers by increasing cost with document i, p ij. compute f i }} Sort replica sets in decreasing penalty, f i Allocate the replica set with minimal f i in its best placement} 25

Time Complexity Greedy-cost Greedy-load/cost Greedy-penalty Θ ( MNlog MN + MN) Θ( NM log M ) Θ + 2 ( N log N NM log M) 26

Experiment Setup Use the CSIM 18 package Homogeneous server nodes Disk seek time : 19 ms Disk transfer rate : 21 MB/s Initially, Web documents are randomly placed on the server nodes without replication. Documents distribution activated every 3 hours. 27

Dynamic Scheme For comparison, we simulate the DC- Apache (DC): Periodically (every 10 minutes), check global load status Replicate documents from overloaded server (load is 50% higher than average load) Revoke documents from under-loaded server (load is lower than average load) 28

Metrics Load Balancing Metric (LBM): Record the peak-to-mean ratio of server utilization every sampling period (10 minutes) Smaller LBM better load balancing Average total traffic per period 29

Data Sets Two real traces of Web access Data Set 1 : a website used for hosting personal home pages, Data Set 2 : The Internet Traffic Archive. Documents in the same directory are grouped and these groups are used as basic units of replication and distribution Duration of dataset: one day 30

Load Balancing vs. Disk Capacity C : the storage capacity of each server node S : the total size of the documents LBM 3 2.5 2 1.5 1 1/16 1/8 1/4 1/2 1 C / S GL/C GC GP DC LBM 5 4 3 2 1 1/16 1/8 1/4 1/2 1 C / S GL/C GC GP DC Data Set 1 (16 server nodes) Data Set 2 (16 server nodes) GL/C and GP are better than GC. DS is the worst -- doesn t fully utilize the available disk space. 31

Load Balancing vs. No. of Servers Fixed storage capacity (C = 1/8 S) Scale the no. of servers : M= 16 ~256 5 3 4 GL/C 2.5 GL/C LBM 3 GC LBM 2 GC 2 GP 1.5 GP 1 16 32 64 128 256 no. of servers 1 16 32 64 128 256 no. of servers Data Set 1 (C / S = 1/8) Data Set 2 (C / S = 1/8) GL/C and GP are still close when the node number is not very large. When more than 128 nodes, GL/C appears to deteriorate faster than GP. 32

Average Traffic vs. Disk Capacity 5 Average Traffic / S 4 3 2 1 0 1/8 1/4 1/2 5/8 15/16 C / S Data Set 1 (16 nodes) GL/C GC GP DC Average Traffic / S 1.5 1.2 0.9 0.6 0.3 Data Set 2 (16 nodes) GC incurs the least cost. GP is better than GL/C, but when the storage capacity is large, the traffic caused by GL/C and GP is almost the same. 0 1/8 1/4 1/2 5/8 15/16 C / S GL/C GC GP DC 33

Average Traffic vs. No. of Servers Average Traffic / S 16 14 12 10 8 6 4 2 0 16 32 64 128 256 no. of servers Data Set 1 (C / S = 1/8) GL/C GC GP Average Traffic / S 8 7 6 5 4 3 2 1 0 GL/C GC GP 16 32 64 128 256 no. of servers Data Set 2 (C / S = 1/8) GC still causes least traffic, and the traffic caused by GL/C and GP get closer as the number of nodes increases. 34

Conclusions Compared with the dynamic scheme, our document distribution scheme can Achieve better load balancing Generate less internal traffic Provide better Web service 35

Conclusions Greedy-cost Generally, worst load balancing and least internal traffic Easiest to be affected by initial placement of documents Greedy-load/cost Generally, best load balancing More traffic than Greedy-penalty Least computation 36

Conclusions Greedy-penalty Most stable load balancing performance Most computation A suitable algorithm can be chosen according to the practical situation of a EDWS system 37

Future Work An on-line algorithm Achieve similar load balancing Further reduce internal traffic Proximity-aware algorithm Achieve both network proximity and load balancing Document distribution scheme for heterogeneous EDWS systems 38