Towards Autonomic Hosting of Multi-tier Internet Services Swaminathan Sivasubramanian, Guillaume Pierre and Maarten van Steen Vrije Universiteit, Amsterdam,

Slides:



Advertisements
Similar presentations
3 Copyright © 2005, Oracle. All rights reserved. Designing J2EE Applications.
Advertisements

Performance Testing - Kanwalpreet Singh.
Welcome to Middleware Joseph Amrithraj
Hadi Goudarzi and Massoud Pedram
SLA-Oriented Resource Provisioning for Cloud Computing
Introduction to DBA.
Energy Conservation in Datacenters through Cluster Memory Management and Barely-Alive Memory Servers Vlasia Anagnostopoulou Susmit.
U NIVERSITY OF M ASSACHUSETTS, A MHERST – Department of Computer Science Dynamic Provisioning for Multi-tier Internet Applications Bhuvan Urgaonkar, Prashant.
1 Web Server Performance in a WAN Environment Vincent W. Freeh Computer Science North Carolina State Vsevolod V. Panteleenko Computer Science & Engineering.
ManageEngine® Applications Manager
Overview Of Microsoft New Technology ENTER. Processing....
Wade Wegner Windows Azure Technical Evangelist Microsoft Corporation Windows Azure AppFabric Caching.
ECOMMERCE TECHNOLOGY SUMMER 2002 COPYRIGHT © 2002 MICHAEL I. SHAMOS eCommerce Technology Lecture 4: Web Architecture.
Stanford University EH&S A Service Oriented Architecture For Rich Internet Applications Sheldon M. Heitz.
Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill Technology Education Copyright © 2006 by The McGraw-Hill Companies,
New Challenges in Cloud Datacenter Monitoring and Management
Web Application Architecture: multi-tier (2-tier, 3-tier) & mvc
Web-based Software Development - An introduction.
31 January 2007Craig E. Ward1 Large-Scale Simulation Experimentation and Analysis Database Programming Using Java.
Generating Adaptation Policies for Multi-Tier Applications in Consolidated Server Environments College of Computing Georgia Institute of Technology Gueyoung.
1 Web Database Processing. Web Database Applications Static Report Publishing a report is prepared from a database application and exported to HTML DB.
Word Wide Cache Distributed Caching for the Distributed Enterprise.
Cloud Computing for the Enterprise November 18th, This work is licensed under a Creative Commons.
AUTONOMOUS RESOURCE PROVISIONING FOR MULTI-SERVICE WEB APPLICATIONS Jiang Dejun,Guillaume Pierre,Chi-Hung Chi WWW '10 Proceedings of the 19th international.
U NIVERSITY OF M ASSACHUSETTS, A MHERST – Department of Computer Science An Analytical Model for Multi-tier Internet Services and its Applications Bhuvan.
November , 2009SERVICE COMPUTATION 2009 Analysis of Energy Efficiency in Clouds H. AbdelSalamK. Maly R. MukkamalaM. Zubair Department.
Systems Support for End-to-End Performance Management Sandip Agarwala PhD Advisor: Karsten Schwan College of Computing Georgia Tech.
Fundamentals of Database Chapter 7 Database Technologies.
DotSlash An Automated Web Hotspot Rescue System Jonathan Bulava CSC8530 – Distributed Systems Dr. Paul Schragger.
Workload-driven Analysis of File Systems in Shared Multi-Tier Data-Centers over InfiniBand K. Vaidyanathan P. Balaji H. –W. Jin D.K. Panda Network-Based.
Service Computation 2010November 21-26, Lisbon.
Csi315csi315 Client/Server Models. Client/Server Environment LAN or WAN Server Data Berson, Fig 1.4, p.8 clients network.
Automatic Cache Update Control for Scalable Resource Information Service with WS-Management September 23, 2009 Kumiko Tadano, Fumio Machida, Masahiro Kawato,
1 Wenguang WangRichard B. Bunt Department of Computer Science University of Saskatchewan November 14, 2000 Simulating DB2 Buffer Pool Management.
Design and Evaluation of a Model for Multi-tiered Internet Applications Bhuvan Urgaonkar Internship project talk – Services Management Middleware Dept,
Self-Managing Cost Models Shivnath Babu Stanford University.
1 Admission Control and Request Scheduling in E-Commerce Web Sites Sameh Elnikety, EPFL Erich Nahum, IBM Watson John Tracey, IBM Watson Willy Zwaenepoel,
INTRODUCTION TO DBS Database: a collection of data describing the activities of one or more related organizations DBMS: software designed to assist in.
Distributed database system
Handling Session Classes for Predicting ASP.NET Performance Metrics Ágnes Bogárdi-Mészöly, Tihamér Levendovszky, Hassan Charaf Budapest University of Technology.
June 30 - July 2, 2009AIMS 2009 Towards Energy Efficient Change Management in A Cloud Computing Environment: A Pro-Active Approach H. AbdelSalamK. Maly.
Copyright © 2006, GemStone Systems Inc. All Rights Reserved. Increasing computation throughput with Grid Data Caching Jags Ramnarayan Chief Architect GemStone.
1 Data Mining at work Krithi Ramamritham. 2 Dynamics of Web Data Dynamically created Web Pages -- using scripting languages Ad Component Headline Component.
1 Hidra: History Based Dynamic Resource Allocation For Server Clusters Jayanth Gummaraju 1 and Yoshio Turner 2 1 Stanford University, CA, USA 2 Hewlett-Packard.
Managing Web Server Performance with AutoTune Agents by Y. Diao, J. L. Hellerstein, S. Parekh, J. P. Bigus Presented by Changha Lee.
Performance Testing Test Complete. Performance testing and its sub categories Performance testing is performed, to determine how fast some aspect of a.
Features Of SQL Server 2000: 1. Internet Integration: SQL Server 2000 works with other products to form a stable and secure data store for internet and.
ViaSQL Technical Overview. Viaserv, Inc. 2 ViaSQL Support for S/390 n Originally a VSE product n OS/390 version released in 1999 n Identical features.
Scalable Data Scale #2 site on the Internet (time on site) >200 billion monthly page views Over 1 million developers in 180 countries.
Computing Facilities CERN IT Department CH-1211 Geneva 23 Switzerland t CF Cluman: Advanced Cluster Management for Large-scale Infrastructures.
E-commerce Architecture Ayşe Başar Bener. Client Server Architecture E-commerce is based on client/ server architecture –Client processes requesting service.
Configuring SQL Server for a successful SharePoint Server Deployment Haaron Gonzalez Solution Architect & Consultant Microsoft MVP SharePoint Server
Performance Driven Database Design for Scalable Web Applications Jozsef Patvarczki, Murali Mani, and Neil Heffernan Scaling up web applications requires.
12. DISTRIBUTED WEB-BASED SYSTEMS Nov SUSMITHA KOTA KRANTHI KOYA LIANG YI.
The Holmes Platform and Applications
Connected Infrastructure
Web-based Software Development - An introduction
WebSphere XD Compute Grid High Performance Architectures
Self Healing and Dynamic Construction Framework:
Network Load Balancing
Maximum Availability Architecture Enterprise Technology Centre.
1. Public Network - Each Rackspace Cloud Server has two networks
Connected Infrastructure
Chapter 12.6 Consistency and Replication
Oracle Architecture Overview
Building a Database on S3
DotSlash: An Automated Web Hotspot Rescue System
Admission Control and Request Scheduling in E-Commerce Web Sites
Technical Capabilities
Presentation transcript:

Towards Autonomic Hosting of Multi-tier Internet Services Swaminathan Sivasubramanian, Guillaume Pierre and Maarten van Steen Vrije Universiteit, Amsterdam, The Netherlands.

Hosting Large-Scale Internet Services Large-scale e-commerce enterprises use complex software systems  Sites built of numerous applications called services.  A request to amazon.com leads to requests to hundreds of services [Vogels, ACM Queue, 2006]. Each site has a SLA (latency, availability targets)  Global optimization-based hosting is intractable  Convert Global to per-service SLA  Host each service scalably. Problem in focus: Efficient hosting of an Internet service.

Web Services: Background Services – Multi-tiered Applications  Perform business logic on data from its data store and from other services. E.g., Shopping cart service, Recommender service, Page generator.  Exposed and restricted through well-defined interfaces Usually accessible over the network Does not allow direct access to its internal database Application Server DB Service Y Service X E.g., JBoss, Tomcat/Axis, Websphere e.g., DB2, Oracle, MySQL Service Req. (XML) DB Queries Service Req. Service Response DB Response Service Response (XML)

Application Server Scalability techniques applied to service hosting DB Service Y Service X Application Server Application Server Application Server Useful for compute- intensive services (e.g., page generators)

Application Server Scalability techniques applied to service hosting DB Service Y Service X Response Cache Response Cache Cache service Responses Reduces load on application (if hit ratio is good)

Application Server Scalability techniques applied to service hosting DB Service Y Service X DB Caches DB Cache Reduces DB load (if hit ratio is good) Cache Query Results e.g., IBM’s DBCache, GlobeCBC

Application Server Scalability techniques applied to service hosting DB Service Y Service X Response Cache Response Cache Response Cache Useful if other service is across WAN or does not meet SLA Reduces response time

Scalability techniques applied to service hosting DB Response Cache DB Cache Application Server DB Cache Response Cache Response Cache Response Cache Application Server Resource provisioning for a service  Wide variety of techniques at different tiers to consider  What is the right (set of) technique(s) for a given service? Depends on: locality, update workload, code execution time, query time, external service dependencies Too many parameters for an administrator to manage! Can we automate it (at least to a large extent)?

Autonomic Hosting: Initial Objective “To find the minimum set of resources to host a given service such that its end-to-end latency is maintained between [Lat min, Lat max ].” We pose it as: “To find the minimum number of resources (servers) to provision in each tier for a service to meet its SLA”

Proposed Approach Get a model of end-to-end latency  Lat = f(hr server, t App, hr cli, t db, hr dbcache,ReqRate)  hr = hit ratio, t = execution time  f – Latency modeling function Little’s law based network of queues MVA (mean value analysis) on network of queues Or other models?

Proposed Approach (contd..) Fit a service to the model  Parameters such as execution time can be obtained Log analysis, server instrumentation  Estimating hr at different tiers is harder Request patterns and update patterns vary Fluid-based cache models assume infinite cache memory Need a technique that predicts hr for a given cache size

Virtual Caches Virtual cache (VC) – means to predict hr  Cache that stores just the meta-data [Wong et.al., 2002] Takes original request &update stream to compute hr Smaller footprint Can be added in different tiers such as App servers, Client stubs, JDBC drivers.  What will be hr if another server with memory d is added to a cache pool with M memory? Run a VC with M+d memory A VC with M-d memory gives hr when a server is removed.  Running VC for distributed caches N caches servers, each with M memory Run VC in each server with M + M/N memory  => Avg. hr when a new server is added

Resource Provisioning To provision a service  Obtain ( hr & t) values from different tiers of service  Estimate latency for different resource configurations Find the best configuration that meets its latency SLA  For a running service If SLA is violated, find the best tier to add a server Switching time?  Addition of servers take time (e.g., cache warm up, reconfiguration)  Right now, assumed negligible  Need to investigate prediction algorithms

Current Status & Limitations Goal: To build an autonomic hosting platform for Multi-tier internet applications  Multi-queue model w/ online-cache simulations has been a good start  Prototyped with Apache, Tomcat/Axis, MySQL Integrating with our CDN, Globule Experiments with TPC-App -> encouraging Experimented with other services Current Work  Refining Queueing Models for accurate latency estimation  Investigating availability issues

Discussion Points Utilization based SLAs Other prediction models  Does cache behavior vary with req. rate? Failures  How to provision for availability targets? Multiple service classes

Availability-aware provisioning  To provision for a required up-time Must consider MTTF and MTTR for servers in each tier Caches have different MTTR than AppServers  How to provision? Strategy 1 Perform latency-based provisioning. For each tier, add additional resources to reach target uptime Strategy 2 Formulate as a dual-constrained optimization problem.

Dynamic Provisioning For handling dynamic load changes  Need to predict workload changes Allows us to be prepared earlier  Adding/reconfiguring servers take time  Prediction window should be greater than server addition time Load prediction is relatively well understood  Prediction of temporal effects?

Thank You! More info: Questions?