1 / 13

Profile Driven Component Placement for Cluster-based Online Services

Profile Driven Component Placement for Cluster-based Online Services. Christopher Stewart (University of Rochester) Kai Shen (University of Rochester) Sandhya Dwarkadas (University of Rochester) Michael Scott (University of Rochester) Jian Yin (IBM TJ Watson).

agatha
Download Presentation

Profile Driven Component Placement for Cluster-based Online Services

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Profile Driven Component Placement for Cluster-based Online Services Christopher Stewart (University of Rochester) Kai Shen (University of Rochester) Sandhya Dwarkadas (University of Rochester) Michael Scott (University of Rochester) Jian Yin (IBM TJ Watson)

  2. Large Distributed Online Services • Amazon, EBay, Google, Citrix, etc. • Implemented via many distinct single-purpose components • Developers use common interface • Service demands affect the bottom line • Sustained Throughput • Response time, Reliability, etc. • Hardware costs affect bottom line. • How can we optimize transparently?

  3. Component Placement • Given a complex service divided into N components distributed among M machines: Is system performance affected by component placement? Can we determine the maximal throughput placement? Web Server Business Logic Datasource

  4. Our Solution Offline Available resources and workload Web Server WS • Build component profiles • Ascertain workload and available resources • Estimate throughput for all settings (or use heuristic) • Setting with largest throughput estimate is optimal Component Resource Consumption Profiles Business Logic A A Placement Executive Business Logic B B Placement Decisions Runtime environment for a cluster-based online services Database DB

  5. Component Profiles • Characterize resource consumption per component • Acquired via offline examination • Contain information on the following resources • CPU Consumption (average , peak) • Memory Usage (peak) • Network Consumption (average , peak) • Derived from proc file system We hypothesize resource consumption grows linearly with workload (requests per second).

  6. Profile Validation Resource consumption is proportional to workload. 12 1.5 average average linear fitting 10 peak peak linear fitting 8 1 CPU usage (in percentage) 6 Network usage (in Mb) 4 0.5 2 0 0 0 2 4 6 8 10 12 0 2 4 6 8 10 12 Workload (requests/second) Resulting component profile:

  7. Predicting Throughput For any given placement: • A server reaches maximum throughput when a resource saturates • Using component profiles, we predict resource consumption over all components on the server • CPUconsumption = CPUper-request * Workload + CPUoverhead • A workload is non-saturating iff • CPUsaturation > CPUper-request * Workload + CPUoverhead • CPUmax : Largest non-saturating workload • TP = MIN[ CPUmax, MEMmax, NETmax] of all servers

  8. Experimental Setup • RUBiS [Amza et al., 2002] • Auction benchmark modeled after EBay • 11 Components : Web server, Database, and 9 Enterprise Java Beans. • 2 Machine setup • 1.26 GHz, 2 GB Memory, JBOSS, and MySql • Business logic: No replication, Static database and web server • Compare 4 Placement Strategies • All on web, All on DB, Writer’s with Web, and Profiler’s choice

  9. Impact of Placement • We Observe: • Placement affects maximal throughput by 38% • Profiler’s choice exceeds other strategies by 22-38% All with Web All with database Writers with Web Profiler ‘s choice 100 80 60 Throughput (requests/second) • We Conclude: • Component placement can significantly affect performance. • Component Profiles can choose a good placement strategy. 40 20 0 0 20 40 60 80 100 120 Input workload (requests/second)

  10. Prediction Accuracy • We Observe: • Throughput tends to fall between peak and average predictions • Large ranges Pessimistic estimation 120 Measurement result Optimistic estimation 100 80 Throughput (requests/decond) 60 • We Conclude: • Component profile predictions are generally accurate • More accurate measurement tools are needed. 40 20 0 AllWeb AllDB WritersWeb Profiler

  11. Future Work • Improve Prediction Accuracy • Use profiles for other QoS metrics and service needs • response time, service differentiation, and capacity planning • Dynamic placement decisions • Adjust to changing workloads online • Support plug and play hardware modifications • Placement over wide area networks • Extend edge servers for optimal performance

  12. Take Away Points • Component placement has a significant impact upon performance in online services. • Component profiles capture resource consumption characteristics • Resource consumption and throughput can be predicted via component profiles

  13. www.cs.rochester.edu/~stewart/profile More Information

More Related