Load Balancing in Distributed Systems

Slides:



Advertisements
Similar presentations
Scheduling in Web Server Clusters CS 260 LECTURE 3 From: IBM Technical Report.
Advertisements

Distributed Systems Major Design Issues Presented by: Christopher Hector CS8320 – Advanced Operating Systems Spring 2007 – Section 2.6 Presentation Dr.
Analysis of : Operator Scheduling in a Data Stream Manager CS561 – Advanced Database Systems By Eric Bloom.
Resource Management §A resource can be a logical, such as a shared file, or physical, such as a CPU (a node of the distributed system). One of the functions.
Serverless Network File Systems. Network File Systems Allow sharing among independent file systems in a transparent manner Mounting a remote directory.
Study of Hurricane and Tornado Operating Systems By Shubhanan Bakre.
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.
Peer-to-Peer Based Multimedia Distribution Service Zhe Xiang, Qian Zhang, Wenwu Zhu, Zhensheng Zhang IEEE Transactions on Multimedia, Vol. 6, No. 2, April.
Load Balancing in Distributed Systems Nalini Venkatasubramanian
Locality-Aware Request Distribution in Cluster-based Network Servers 1. Introduction and Motivation --- Why have this idea? 2. Strategies --- How to implement?
1 Introduction to Load Balancing: l Definition of Distributed systems. Collection of independent loosely coupled computing resources. l Load Balancing.
Adaptive Content Delivery for Scalable Web Servers Authors: Rahul Pradhan and Mark Claypool Presented by: David Finkel Computer Science Department Worcester.
Chapter 12 Distributed Database Management Systems
Bandwidth Allocation in a Self-Managing Multimedia File Server Vijay Sundaram and Prashant Shenoy Department of Computer Science University of Massachusetts.
1 Exploring Data Reliability Tradeoffs in Replicated Storage Systems NetSysLab The University of British Columbia Abdullah Gharaibeh Matei Ripeanu.
On-Demand Media Streaming Over the Internet Mohamed M. Hefeeda, Bharat K. Bhargava Presented by Sam Distributed Computing Systems, FTDCS Proceedings.
1 Distributed Systems: Distributed Process Management – Process Migration.
CS Spring 2012 CS 414 – Multimedia Systems Design Lecture 34 – Media Server (Part 3) Klara Nahrstedt Spring 2012.
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.
Design and Implementation of a Single System Image Operating System for High Performance Computing on Clusters Christine MORIN PARIS project-team, IRISA/INRIA.
1 Exploring Data Reliability Tradeoffs in Replicated Storage Systems NetSysLab The University of British Columbia Abdullah Gharaibeh Advisor: Professor.
Storage Allocation in Prefetching Techniques of Web Caches D. Zeng, F. Wang, S. Ram Appeared in proceedings of ACM conference in Electronic commerce (EC’03)
1 Distributed Operating Systems and Process Scheduling Brett O’Neill CSE 8343 – Group A6.
CH2 System models.
Database Systems: Design, Implementation, and Management Tenth Edition Chapter 12 Distributed Database Management Systems.
EFFECTIVE LOAD-BALANCING VIA MIGRATION AND REPLICATION IN SPATIAL GRIDS ANIRBAN MONDAL KAZUO GODA MASARU KITSUREGAWA INSTITUTE OF INDUSTRIAL SCIENCE UNIVERSITY.
Introduction to dCache Zhenping (Jane) Liu ATLAS Computing Facility, Physics Department Brookhaven National Lab 09/12 – 09/13, 2005 USATLAS Tier-1 & Tier-2.
MapReduce and GFS. Introduction r To understand Google’s file system let us look at the sort of processing that needs to be done r We will look at MapReduce.
1 ACTIVE FAULT TOLERANT SYSTEM for OPEN DISTRIBUTED COMPUTING (Autonomic and Trusted Computing 2006) Giray Kömürcü.
CS Spring 2009 CS 414 – Multimedia Systems Design Lecture 30 – Media Server (Part 5) Klara Nahrstedt Spring 2009.
NUS.SOC.CS5248 Ooi Wei Tsang 1 Proxy Caching for Streaming Media.
Static Process Scheduling
Chapter 7: Consistency & Replication IV - REPLICATION MANAGEMENT By Jyothsna Natarajan Instructor: Prof. Yanqing Zhang Course: Advanced Operating Systems.
MiddleMan: A Video Caching Proxy Server NOSSDAV 2000 Brian Smith Department of Computer Science Cornell University Ithaca, NY Soam Acharya Inktomi Corporation.
/ Fast Web Content Delivery An Introduction to Related Techniques by Paper Survey B Li, Chien-chang R Sung, Chih-kuei.
CS Spring 2009 CS 414 – Multimedia Systems Design Lecture 27 – Media Server (Part 2) Klara Nahrstedt Spring 2009.
The Biologically Inspired Distributed File System: An Emergent Thinker Instantiation Presented by Dr. Ying Lu.
Chapter 20: Multimedia Systems
Optimizing Distributed Actor Systems for Dynamic Interactive Services
Web Server Load Balancing/Scheduling
Multimedia Systems Operating System Presentation On
CS 414 – Multimedia Systems Design Lecture 31 – Media Server (Part 5)
Chapter 20: Multimedia Systems
Threads vs. Events SEDA – An Event Model 5204 – Operating Systems.
Web Server Load Balancing/Scheduling
Introduction to Load Balancing:
The Impact of Replacement Granularity on Video Caching
What is Fibre Channel? What is Fibre Channel? Introduction
Klara Nahrstedt Spring 2010
Load Management in Distributed Video Servers
CSI 400/500 Operating Systems Spring 2009
Transparent Adaptive Resource Management for Middleware Systems
Chapter 20: Multimedia Systems
Outline Midterm results summary Distributed file systems – continued
Cooperative Caching, Simplified
Web switch support for differentiated services
AWS Cloud Computing Masaki.
Outline Announcements Lab2 Distributed File Systems 1/17/2019 COP5611.
Multithreaded Programming
Specialized Cloud Architectures
Dynamic Replica Placement for Scalable Content Delivery
Outline Review of Quiz #1 Distributed File Systems 4/20/2019 COP5611.
Chapter 20: Multimedia Systems
Database System Architectures
Performance-Robust Parallel I/O
Chapter 20: Multimedia Systems
Chapter 20: Multimedia Systems
Presentation transcript:

Load Balancing in Distributed Systems Nalini Venkatasubramanian nalini@ics.uci.edu

Global Distributed Systems and Multimedia Motivation A given computer is overloaded Must decrease load and maintain certain characteristics Scalability Performance Throughput Ideally, this should be done transparently Solution: Load Balancing Global Distributed Systems and Multimedia

Introduction to Load Balancing Distributed resource allocation Can be thought of as “distributed scheduling” Deals with distribution of processes among processors connected by a network Handles issues such as deciding which process should be handled by a given processor Can also be influenced by “distributed placement” Important in data intensive environments and applications Data placement may force process placement Global Distributed Systems and Multimedia

Load Balancing Relationships Load Balancer Manages resources Resource assignment depends on policy or policies in effect Client Requests resources Requests services Global Distributed Systems and Multimedia

Load Balancing Overhead Satisfy client resource access without imposing large amounts of overhead Performance How well resources are managed Efficiency Cost of accessing and using a resource obtained through a load balancer Global Distributed Systems and Multimedia

Global Distributed Systems and Multimedia Load Balancing Issues When to migrate processes or forward requests Which processor should be chosen to handle a given process or request Should processes be moved off a computer How should searching for lightly loaded computer be performed Global Distributed Systems and Multimedia

Load Balancing Issues (cont.) When should load balancing decisions be made What should be taken into account when making the above decisions How should old data be handled Should load balancing data be stored centrally, or in a distributed manner Global Distributed Systems and Multimedia

Load Balancing Issues (cont.) Should computers make decisions together What is the performance/overhead tradeoff incurred by load balancing Prevention of overloading a lightly loaded computer Global Distributed Systems and Multimedia

Load Balancing Techniques Basically two ways to perform load balancing Statically Resource is allocated once Dynamically Resource is allocated and managed (possibly dynamically reallocated) to ensure balanced load Global Distributed Systems and Multimedia

Global Distributed Systems and Multimedia Static Load Balancing Resource allocation is performed once Once resource is allocated it remains allocated (for what duration??) Scheduling decisions are made Deterministically Probabilistically Global Distributed Systems and Multimedia

Static Load Balancing – cont’d Advantages State generally need not be stored Simplifies implementation Less network traffic due to load balancing related messages Disadvantages Poor resource utilization A given resource may be used much more than others Does not adjust to fluctuations in the load Possible for resource to become overloaded Global Distributed Systems and Multimedia

Static Load Balancing – cont’d Example of Static Load Balancing Forwarding processes/requests to a given computer based on dynamically assigned addresses (e.g. via DNS) Web servers (e.g. CNN) UCI host ea.uci.edu is load balanced Global Distributed Systems and Multimedia

Dynamic Load Balancing Attempts to maintain a balanced load by managing resources while a resource is in use May involve the following Process migration Disabling further access to a resource until a later time Adding new resources “on-the-fly” Global Distributed Systems and Multimedia

Dynamic Load Balancing Strategies Distributed versus non-distributed Should load information be stored centrally or across several hosts Simplicity versus overhead and reliability Cooperative versus non-cooperative Should decisions be made by a single load balancer or several Globally managed resources versus locally managed resources Global Distributed Systems and Multimedia

Dynamic Load Balancing Strategies - cont’d Adaptive versus non-adaptive Should previous data effect scheduling decisions Preemptive versus non-preemptive Should a running process be preempted in favor of another process, or for migration to another resource Global Distributed Systems and Multimedia

Global Distributed Systems and Multimedia Case Studies Load Balancing for Web Servers Load Balancing for Parallel Computers Load Balancing for Multimedia Applications Global Distributed Systems and Multimedia

Multimedia Applications Electronic Commerce Video Servers                                                  Global Entertainment Network Web Servers Distance Learning Graphics Processing Tele-medicine Global Distributed Systems and Multimedia Requirements - Availability, Reliability, Quality-of-Service, Cost-effectiveness, Security

Multimedia Load Management Primary focus resource optimization across streams and resource management across servers. Quality of Service continuous delivery requirement minor violations of performance requirements Admission Control - resource reservation/negotiation Media Delivery - Resource scheduling (CPU,Disk) Resource Mgmt. Implies Admission Control Caching, VCR Control, Server Selection, Data Placement Global Distributed Systems and Multimedia

Distributed MM Servers Video Server Topology Partitioned Server Externally Switched Fully Switched Video File Placement Heterogeneous Workload - large/small, hot/cold Online Placement Good placement is important dynamic replication time-consuming, dynamic load-bal complementary Global Distributed Systems and Multimedia

Dynamic Load Balancing Adapts to statistical fluctuations and changing access patterns Dynamic Migration Deals with poor initial placement Replication Dynamic Segment Replication partial replication (quick response, less expensive) Total Replication on-demand vs. predictive Global Distributed Systems and Multimedia

Load Management of Distributed MM Servers Adaptive Scheduling Assigns requests to servers based on demand and load factors. Invokes replication-on-demand, request migration Predictive Placement Invokes dereplication Optimizations Eager Replication Lazy Dereplication Global Distributed Systems and Multimedia

A Scalable Video Server Architecture Distribution Network requests data Distribution Controller Data Source Data Source Data Source Tertiery Storage ... control Global Distributed Systems and Multimedia

Architectural View of a Networked MM System Qos Broker and Load Management System Node Manager Node Manager Node Manager Node Manager ... Local Data Streaming Global Distributed Systems and Multimedia

Resources in a Video Server Client Client Network Processing Module Communication Modules Data Manipulation Modules Storage Modules Global Distributed Systems and Multimedia

Load Placement Scenario Data Source S2 Data Source S1 Storage: 8 objects Bandwidth: 3 requests Storage: 2 objects Bandwidth: 8 requests Access Network ... Clients Global Distributed Systems and Multimedia

Characterizing Server Resource Usage Ability to service a request on a server depends on: resource available characteristics of a request Load factor(LF) for a request: represents how far a server is from request admission threshold. LF (Ri, Sj) = max (Dbi/DBj , Mi/Mj , CPUi/CPUj , Xi/Xj) Global Distributed Systems and Multimedia

Global Distributed Systems and Multimedia Adaptive Scheduling When the broker receives a request Ri for a video object Vi : Consider only data sources that have a copy of Vi. Consider only data sources tha have sufficient resources to support Ri. Chooser server for which LF (Ri, Sj) is a minimum. If no such server exists Reject request. Perform replication-on-demand. Perform request migration. Global Distributed Systems and Multimedia

Predictive Data Placement Determines when, where and how many replicas of a video object. Initiated periodically. Results in an assignment of replicas to data sources. Greedy algorithm that uses revenue generated as a metric. Global Distributed Systems and Multimedia

The Greedy Cost Placement Matrix PM(Vi, Sj) is the maximum revenue that can accrue from allocating Vi to Sj. Greedy heuristic: Map(Vi,Sj) = 1 if PM(Vi,Sj) = a b max(PM(Va,Sb)) Global Distributed Systems and Multimedia

Global Distributed Systems and Multimedia Optimizations To minimize the overhead of replication Eager replication Replication of video object in anticipation Performed when server resources are free Lazy Dereplication Critical nature of storage resources Mark reusable resources, reclaim disk space later If disk blocks are not overwritten, can be reclaimed Global Distributed Systems and Multimedia

Global Distributed Systems and Multimedia Life of a video object Global Distributed Systems and Multimedia

Performance Evaluation Policies Global Distributed Systems and Multimedia

Performance Evaluation - Startup Latencies Global Distributed Systems and Multimedia

Performance of the basic configuration Global Distributed Systems and Multimedia

Performance Evaluation - Varying Replication BW Global Distributed Systems and Multimedia

Performance Evaluation Summary P1: entails high startup latency, requires high storage and replication bandwidth. P2: Unacceptably poor performance. P3: Similar performance to P4 in many cases. At low transfer bandwidths, P4 outperforms P3. P4: Performs well in all cases. Global Distributed Systems and Multimedia